11 Sep, 2016

1 commit


27 Jan, 2016

1 commit

  • This patch removes the last reference to hash and ablkcipher from
    IPsec and replaces them with ahash and skcipher respectively. For
    skcipher there is currently no difference at all, while for ahash
    the current code is actually buggy and would prevent asynchronous
    algorithms from being discovered.

    Signed-off-by: Herbert Xu
    Acked-by: David S. Miller

    Herbert Xu
     

17 Aug, 2015

1 commit


04 Jun, 2015

1 commit


28 May, 2015

1 commit


13 Jan, 2015

1 commit


08 Nov, 2013

1 commit

  • This function has usage beside IPsec so move it to the core skbuff code.
    While doing so, give it some documentation and change its return type to
    'unsigned char *' to be in line with skb_put().

    Signed-off-by: Mathias Krause
    Cc: Steffen Klassert
    Cc: "David S. Miller"
    Cc: Herbert Xu
    Signed-off-by: David S. Miller

    Mathias Krause
     

25 Apr, 2013

1 commit


01 Feb, 2013

1 commit


08 Jan, 2013

1 commit

  • IPSEC uses block ciphers asynchronous, but probes only for synchronous block
    ciphers and makes ealg entries only available if synchronous block cipher is
    found. So with setup, where hardware crypto driver registers asynchronous
    block ciphers and software crypto module is not build, ealg is not marked
    as being available.

    Use crypto_has_ablkcipher instead and remove ASYNC mask.

    Signed-off-by: Jussi Kivilinna
    Signed-off-by: Steffen Klassert

    Jussi Kivilinna
     

16 May, 2012

2 commits

  • For several releases, this has not been needed anymore, as no helper
    functions declared in net/ah.h get implemented by xfrm_algo.c anymore.

    Signed-off-by: Jan Beulich
    Signed-off-by: David S. Miller

    Jan Beulich
     
  • By making this a standalone config option (auto-selected as needed),
    selecting CRYPTO from here rather than from XFRM (which is boolean)
    allows the core crypto code to become a module again even when XFRM=y.

    Signed-off-by: Jan Beulich
    Signed-off-by: David S. Miller

    Jan Beulich
     

29 Jul, 2011

1 commit

  • Fix the min and max bit lengths for AES-CTR (RFC3686) keys.
    The number of bits in key spec is the key length (128/256)
    plus 32 bits of nonce.

    This change takes care of the "Invalid key length" errors
    reported by setkey when specifying 288 bit keys for aes-ctr.

    Signed-off-by: Tushar Gohad
    Acked-by: Herbert Xu
    Signed-off-by: David S. Miller

    Tushar Gohad
     

28 Feb, 2011

1 commit


17 Jan, 2010

1 commit

  • This patch adds the RFC4543 (GMAC) wrapper for GCM similar to the
    existing RFC4106 wrapper. The main differences between GCM and GMAC are
    the contents of the AAD and that the plaintext is empty for the latter.

    Signed-off-by: Tobias Brunner
    Signed-off-by: Herbert Xu

    Tobias Brunner
     

02 Dec, 2009

2 commits


26 Nov, 2009

1 commit


19 Oct, 2009

1 commit


25 Jun, 2009

1 commit


09 Jun, 2009

1 commit


26 Jul, 2008

1 commit

  • Removes legacy reinvent-the-wheel type thing. The generic
    machinery integrates much better to automated debugging aids
    such as kerneloops.org (and others), and is unambiguous due to
    better naming. Non-intuively BUG_TRAP() is actually equal to
    WARN_ON() rather than BUG_ON() though some might actually be
    promoted to BUG_ON() but I left that to future.

    I could make at least one BUILD_BUG_ON conversion.

    Signed-off-by: Ilpo Järvinen
    Signed-off-by: David S. Miller

    Ilpo Järvinen
     

05 Jun, 2008

1 commit


28 Apr, 2008

1 commit

  • Previously digest_null had no setkey function which meant that
    we used hmac(digest_null) for IPsec since IPsec always calls
    setkey. Now that digest_null has a setkey we no longer need to
    do that.

    In fact when only confidentiality is specified for ESP we already
    use digest_null directly. However, when the null algorithm is
    explicitly specified by the user we still opt for hmac(digest_null).

    This patch removes this discrepancy. I have not added a new compat
    name for it because by chance it wasn't actualy possible for the user
    to specify the name hmac(digest_null) due to a key length check in
    xfrm_user (which I found out when testing that compat name :)

    Signed-off-by: Herbert Xu
    Signed-off-by: David S. Miller

    Herbert Xu
     

08 Feb, 2008

1 commit


01 Feb, 2008

2 commits

  • This patch adds support for combined mode algorithms with GCM being
    the first algorithm supported.

    Combined mode algorithms can be added through the xfrm_user interface
    using the new algorithm payload type XFRMA_ALG_AEAD. Each algorithms
    is identified by its name and the ICV length.

    For the purposes of matching algorithms in xfrm_tmpl structures,
    combined mode algorithms occupy the same name space as encryption
    algorithms. This is in line with how they are negotiated using IKE.

    Signed-off-by: Herbert Xu
    Signed-off-by: David S. Miller

    Herbert Xu
     
  • Now that ESP uses authenc we can turn on the support for async
    algorithms in IPsec.

    Signed-off-by: Herbert Xu
    Signed-off-by: David S. Miller

    Herbert Xu
     

29 Jan, 2008

1 commit


02 Nov, 2007

1 commit


26 Oct, 2007

1 commit


24 Oct, 2007

1 commit


23 Oct, 2007

2 commits


23 May, 2007

1 commit


20 May, 2007

1 commit

  • This is a natural extension of the changeset

    [XFRM]: Probe selected algorithm only.

    which only removed the probe call for xfrm_user. This patch does exactly
    the same thing for af_key. In other words, we load the algorithm requested
    by the user rather than everything when adding xfrm states in af_key.

    Signed-off-by: Herbert Xu
    Signed-off-by: David S. Miller

    Herbert Xu
     

28 Apr, 2007

1 commit

  • This reverts eefa3906283a2b60a6d02a2cda593a7d7d7946c5

    The simplification made in that change works with the assumption that
    the 'offset' parameter to these functions is always positive or zero,
    which is not true. It can be and often is negative in order to access
    SKB header values in front of skb->data.

    Signed-off-by: David S. Miller

    David S. Miller
     

26 Apr, 2007

2 commits

  • I noticed recently that, in skb_checksum(), "offset" and "start" are
    essentially the same thing and have the same value throughout the
    function, despite being computed differently. Using a single variable
    allows some cleanups and makes the skb_checksum() function smaller,
    more readable, and presumably marginally faster.

    We appear to have many other "sk_buff walker" functions built on the
    exact same model, so the cleanup applies to them, too. Here is a list
    of the functions I found to be affected:

    net/appletalk/ddp.c:atalk_sum_skb()
    net/core/datagram.c:skb_copy_datagram_iovec()
    net/core/datagram.c:skb_copy_and_csum_datagram()
    net/core/skbuff.c:skb_copy_bits()
    net/core/skbuff.c:skb_store_bits()
    net/core/skbuff.c:skb_checksum()
    net/core/skbuff.c:skb_copy_and_csum_bit()
    net/core/user_dma.c:dma_skb_copy_datagram_iovec()
    net/xfrm/xfrm_algo.c:skb_icv_walk()
    net/xfrm/xfrm_algo.c:skb_to_sgvec()

    OTOH, I admit I'm a bit surprised, the cleanup is rather obvious so I'm
    really wondering if I am missing something. Can anyone please comment
    on this?

    Signed-off-by: Jean Delvare
    Signed-off-by: David S. Miller

    Jean Delvare
     
  • Move generic skbuff stuff from XFRM code to generic code so that
    AF_RXRPC can use it too.

    The kdoc comments I've attached to the functions needs to be checked
    by whoever wrote them as I had to make some guesses about the workings
    of these functions.

    Signed-off-By: David Howells
    Signed-off-by: David S. Miller

    David Howells
     

11 Feb, 2007

1 commit


07 Feb, 2007

1 commit