Browse Source

[IPSEC]: Add support for AES-XCBC-MAC

The glue of xfrm.

Signed-off-by: Kazunori MIYAZAWA <miyazawa@linux-ipv6.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Kazunori MIYAZAWA 18 years ago
parent
commit
7cf4c1a5fd
2 changed files with 18 additions and 0 deletions
  1. 1 0
      include/linux/pfkeyv2.h
  2. 17 0
      net/xfrm/xfrm_algo.c

+ 1 - 0
include/linux/pfkeyv2.h

@@ -285,6 +285,7 @@ struct sadb_x_sec_ctx {
 #define SADB_X_AALG_SHA2_384HMAC	6
 #define SADB_X_AALG_SHA2_384HMAC	6
 #define SADB_X_AALG_SHA2_512HMAC	7
 #define SADB_X_AALG_SHA2_512HMAC	7
 #define SADB_X_AALG_RIPEMD160HMAC	8
 #define SADB_X_AALG_RIPEMD160HMAC	8
+#define SADB_X_AALG_AES_XCBC_MAC	9
 #define SADB_X_AALG_NULL		251	/* kame */
 #define SADB_X_AALG_NULL		251	/* kame */
 #define SADB_AALG_MAX			251
 #define SADB_AALG_MAX			251
 
 

+ 17 - 0
net/xfrm/xfrm_algo.c

@@ -119,6 +119,23 @@ static struct xfrm_algo_desc aalg_list[] = {
 		.sadb_alg_maxbits = 160
 		.sadb_alg_maxbits = 160
 	}
 	}
 },
 },
+{
+	.name = "xcbc(aes)",
+
+	.uinfo = {
+		.auth = {
+			.icv_truncbits = 96,
+			.icv_fullbits = 128,
+		}
+	},
+
+	.desc = {
+		.sadb_alg_id = SADB_X_AALG_AES_XCBC_MAC,
+		.sadb_alg_ivlen = 0,
+		.sadb_alg_minbits = 128,
+		.sadb_alg_maxbits = 128
+	}
+},
 };
 };
 
 
 static struct xfrm_algo_desc ealg_list[] = {
 static struct xfrm_algo_desc ealg_list[] = {