Added private Camellia XCBC identifiers for PRFs and signers
authorMartin Willi <martin@revosec.ch>
Fri, 13 Aug 2010 14:01:31 +0000 (16:01 +0200)
committerMartin Willi <martin@revosec.ch>
Fri, 13 Aug 2010 15:11:53 +0000 (17:11 +0200)
src/libstrongswan/crypto/prfs/prf.c
src/libstrongswan/crypto/prfs/prf.h
src/libstrongswan/crypto/signers/signer.c
src/libstrongswan/crypto/signers/signer.h

index 8681a5b..12e13ef 100644 (file)
 
 #include "prf.h"
 
-ENUM_BEGIN(pseudo_random_function_names, PRF_UNDEFINED, PRF_KEYED_SHA1,
+ENUM_BEGIN(pseudo_random_function_names, PRF_UNDEFINED, PRF_CAMELLIA128_XCBC,
        "PRF_UNDEFINED",
        "PRF_FIPS_SHA1_160",
        "PRF_FIPS_DES",
-       "PRF_KEYED_SHA1");
-ENUM_NEXT(pseudo_random_function_names, PRF_HMAC_MD5, PRF_AES128_CMAC, PRF_KEYED_SHA1,
+       "PRF_KEYED_SHA1",
+       "PRF_CAMELLIA128_XCBC");
+ENUM_NEXT(pseudo_random_function_names, PRF_HMAC_MD5, PRF_AES128_CMAC, PRF_CAMELLIA128_XCBC,
        "PRF_HMAC_MD5",
        "PRF_HMAC_SHA1",
        "PRF_HMAC_TIGER",
index 6e85344..ad15205 100644 (file)
@@ -30,8 +30,7 @@ typedef struct prf_t prf_t;
 /**
  * Pseudo random function, as in IKEv2 RFC 3.3.2.
  *
- * PRF algorithms not defined in IKEv2 are allocated in "private use"
- * space.
+ * PRF algorithms not defined in IKEv2 are allocated in "private use" space.
  */
 enum pseudo_random_function_t {
        PRF_UNDEFINED = 1024,
@@ -55,11 +54,12 @@ enum pseudo_random_function_t {
        PRF_FIPS_SHA1_160 = 1025,
        /** FIPS 186-2-change1, uses fixed output size of 160bit */
        PRF_FIPS_DES = 1026,
-       /**
-        * Keyed hash algorithm using SHA1, used in EAP-AKA:
+       /** Keyed hash algorithm using SHA1, used in EAP-AKA:
         * This PRF uses SHA1, but XORs the key into the IV. No "Final()" operation
         * is applied to the SHA1 state. */
        PRF_KEYED_SHA1 = 1027,
+       /** draft-kanno-ipsecme-camellia-xcbc, not yet assigned by IANA */
+       PRF_CAMELLIA128_XCBC = 1028,
 };
 
 /**
index 1c7dcae..f268963 100644 (file)
 
 #include "signer.h"
 
-ENUM_BEGIN(integrity_algorithm_names, AUTH_UNDEFINED, AUTH_HMAC_SHA2_256_256,
+ENUM_BEGIN(integrity_algorithm_names, AUTH_UNDEFINED, AUTH_CAMELLIA_XCBC_96,
        "UNDEFINED",
        "HMAC_SHA1_128",
        "HMAC_SHA2_256_96",
-       "HMAC_SHA2_256_256");
-ENUM_NEXT(integrity_algorithm_names, AUTH_HMAC_MD5_96, AUTH_HMAC_SHA2_512_256, AUTH_HMAC_SHA2_256_256,
+       "HMAC_SHA2_256_256",
+       "CAMELLIA_XCBC_96");
+ENUM_NEXT(integrity_algorithm_names, AUTH_HMAC_MD5_96, AUTH_HMAC_SHA2_512_256, AUTH_CAMELLIA_XCBC_96,
        "HMAC_MD5_96",
        "HMAC_SHA1_96",
        "DES_MAC",
index 02efc1c..17bd0f8 100644 (file)
@@ -68,6 +68,8 @@ enum integrity_algorithm_t {
        AUTH_HMAC_SHA2_256_96 = 1026,
        /** SHA256 full length tuncation variant, as used in TLS */
        AUTH_HMAC_SHA2_256_256 = 1027,
+       /** draft-kanno-ipsecme-camellia-xcbc, not yet assigned by IANA */
+       AUTH_CAMELLIA_XCBC_96 = 1028,
 };
 
 /**