xfrm: Add SHA384 and SHA512 HMAC authentication algorithms to XFRM
authorMartin Willi <martin@strongswan.org>
Wed, 25 Nov 2009 00:58:39 +0000 (00:58 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 25 Nov 2009 23:48:44 +0000 (15:48 -0800)
These algorithms use a truncation of 192/256 bits, as specified
in RFC4868.

Signed-off-by: Martin Willi <martin@strongswan.org>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/xfrm/xfrm_algo.c

index b393410..ef8d61d 100644 (file)
@@ -200,6 +200,40 @@ static struct xfrm_algo_desc aalg_list[] = {
        }
 },
 {
+       .name = "hmac(sha384)",
+
+       .uinfo = {
+               .auth = {
+                       .icv_truncbits = 192,
+                       .icv_fullbits = 384,
+               }
+       },
+
+       .desc = {
+               .sadb_alg_id = SADB_X_AALG_SHA2_384HMAC,
+               .sadb_alg_ivlen = 0,
+               .sadb_alg_minbits = 384,
+               .sadb_alg_maxbits = 384
+       }
+},
+{
+       .name = "hmac(sha512)",
+
+       .uinfo = {
+               .auth = {
+                       .icv_truncbits = 256,
+                       .icv_fullbits = 512,
+               }
+       },
+
+       .desc = {
+               .sadb_alg_id = SADB_X_AALG_SHA2_512HMAC,
+               .sadb_alg_ivlen = 0,
+               .sadb_alg_minbits = 512,
+               .sadb_alg_maxbits = 512
+       }
+},
+{
        .name = "hmac(rmd160)",
        .compat = "rmd160",