summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@gnutls.org>2013-10-21 22:35:44 +0200
committerNikos Mavrogiannopoulos <nmav@gnutls.org>2013-10-21 22:35:44 +0200
commit97b4c4ba4028250e197595dcf707554df92a237e (patch)
tree873c129cbaf217e54801156fef8dffb219f25393
parentd57475d8952103cc9a8b2b97a0d070bcdedd6aa6 (diff)
downloadgnutls-97b4c4ba4028250e197595dcf707554df92a237e.tar.gz
Added Camellia ciphersuites from RFC5932.
Added GNUTLS_RSA_CAMELLIA_128_CBC_SHA256, GNUTLS_DHE_DSS_CAMELLIA_128_CBC_SHA256, GNUTLS_DHE_RSA_CAMELLIA_128_CBC_SHA256, GNUTLS_DH_ANON_CAMELLIA_128_CBC_SHA256, GNUTLS_RSA_CAMELLIA_256_CBC_SHA256, GNUTLS_DHE_DSS_CAMELLIA_256_CBC_SHA256, GNUTLS_DHE_RSA_CAMELLIA_256_CBC_SHA256, GNUTLS_DH_ANON_CAMELLIA_256_CBC_SHA256.
-rw-r--r--lib/algorithms/ciphersuites.c51
1 files changed, 51 insertions, 0 deletions
diff --git a/lib/algorithms/ciphersuites.c b/lib/algorithms/ciphersuites.c
index 9dbeb06656..b6d3d23184 100644
--- a/lib/algorithms/ciphersuites.c
+++ b/lib/algorithms/ciphersuites.c
@@ -66,6 +66,17 @@ typedef struct
#define GNUTLS_DH_ANON_CAMELLIA_128_CBC_SHA1 { 0x00,0x46 }
#define GNUTLS_DH_ANON_CAMELLIA_256_CBC_SHA1 { 0x00,0x89 }
+/* rfc5932 */
+#define GNUTLS_RSA_CAMELLIA_128_CBC_SHA256 { 0x00,0xBA }
+#define GNUTLS_DHE_DSS_CAMELLIA_128_CBC_SHA256 { 0x00,0xBD }
+#define GNUTLS_DHE_RSA_CAMELLIA_128_CBC_SHA256 { 0x00,0xBE }
+#define GNUTLS_DH_ANON_CAMELLIA_128_CBC_SHA256 { 0x00,0xBF }
+#define GNUTLS_RSA_CAMELLIA_256_CBC_SHA256 { 0x00,0xC0 }
+#define GNUTLS_DHE_DSS_CAMELLIA_256_CBC_SHA256 { 0x00,0xC3 }
+#define GNUTLS_DHE_RSA_CAMELLIA_256_CBC_SHA256 { 0x00,0xC4 }
+#define GNUTLS_DH_ANON_CAMELLIA_256_CBC_SHA256 { 0x00,0xC5 }
+
+
#define GNUTLS_DH_ANON_AES_128_CBC_SHA256 { 0x00, 0x6C }
#define GNUTLS_DH_ANON_AES_256_CBC_SHA256 { 0x00, 0x6D }
@@ -304,6 +315,15 @@ static const gnutls_cipher_suite_entry cs_algorithms[] = {
GNUTLS_CIPHER_AES_256_CBC, GNUTLS_KX_RSA,
GNUTLS_MAC_SHA1, GNUTLS_SSL3,
GNUTLS_DTLS_VERSION_MIN),
+
+ ENTRY (GNUTLS_RSA_CAMELLIA_128_CBC_SHA256,
+ GNUTLS_CIPHER_CAMELLIA_128_CBC, GNUTLS_KX_RSA,
+ GNUTLS_MAC_SHA256, GNUTLS_TLS1,
+ GNUTLS_DTLS_VERSION_MIN),
+ ENTRY (GNUTLS_RSA_CAMELLIA_256_CBC_SHA256,
+ GNUTLS_CIPHER_CAMELLIA_256_CBC, GNUTLS_KX_RSA,
+ GNUTLS_MAC_SHA256, GNUTLS_TLS1,
+ GNUTLS_DTLS_VERSION_MIN),
ENTRY (GNUTLS_RSA_CAMELLIA_128_CBC_SHA1,
GNUTLS_CIPHER_CAMELLIA_128_CBC, GNUTLS_KX_RSA,
GNUTLS_MAC_SHA1, GNUTLS_TLS1,
@@ -367,6 +387,17 @@ static const gnutls_cipher_suite_entry cs_algorithms[] = {
GNUTLS_CIPHER_AES_256_CBC, GNUTLS_KX_DHE_DSS,
GNUTLS_MAC_SHA1, GNUTLS_SSL3,
GNUTLS_DTLS_VERSION_MIN),
+ ENTRY (GNUTLS_DHE_DSS_CAMELLIA_128_CBC_SHA256,
+ GNUTLS_CIPHER_CAMELLIA_128_CBC,
+ GNUTLS_KX_DHE_DSS,
+ GNUTLS_MAC_SHA256, GNUTLS_TLS1,
+ GNUTLS_DTLS_VERSION_MIN),
+ ENTRY (GNUTLS_DHE_DSS_CAMELLIA_256_CBC_SHA256,
+ GNUTLS_CIPHER_CAMELLIA_256_CBC,
+ GNUTLS_KX_DHE_DSS,
+ GNUTLS_MAC_SHA256, GNUTLS_TLS1,
+ GNUTLS_DTLS_VERSION_MIN),
+
ENTRY (GNUTLS_DHE_DSS_CAMELLIA_128_CBC_SHA1,
GNUTLS_CIPHER_CAMELLIA_128_CBC,
GNUTLS_KX_DHE_DSS,
@@ -403,6 +434,16 @@ static const gnutls_cipher_suite_entry cs_algorithms[] = {
GNUTLS_CIPHER_AES_256_CBC, GNUTLS_KX_DHE_RSA,
GNUTLS_MAC_SHA1, GNUTLS_SSL3,
GNUTLS_DTLS_VERSION_MIN),
+ ENTRY (GNUTLS_DHE_RSA_CAMELLIA_128_CBC_SHA256,
+ GNUTLS_CIPHER_CAMELLIA_128_CBC,
+ GNUTLS_KX_DHE_RSA,
+ GNUTLS_MAC_SHA256, GNUTLS_TLS1,
+ GNUTLS_DTLS_VERSION_MIN),
+ ENTRY (GNUTLS_DHE_RSA_CAMELLIA_256_CBC_SHA256,
+ GNUTLS_CIPHER_CAMELLIA_256_CBC,
+ GNUTLS_KX_DHE_RSA,
+ GNUTLS_MAC_SHA256, GNUTLS_TLS1,
+ GNUTLS_DTLS_VERSION_MIN),
ENTRY (GNUTLS_DHE_RSA_CAMELLIA_128_CBC_SHA1,
GNUTLS_CIPHER_CAMELLIA_128_CBC,
GNUTLS_KX_DHE_RSA,
@@ -759,6 +800,16 @@ static const gnutls_cipher_suite_entry cs_algorithms[] = {
GNUTLS_CIPHER_AES_256_CBC, GNUTLS_KX_ANON_DH,
GNUTLS_MAC_SHA1, GNUTLS_SSL3,
GNUTLS_DTLS_VERSION_MIN),
+ ENTRY (GNUTLS_DH_ANON_CAMELLIA_128_CBC_SHA256,
+ GNUTLS_CIPHER_CAMELLIA_128_CBC,
+ GNUTLS_KX_ANON_DH,
+ GNUTLS_MAC_SHA256, GNUTLS_TLS1,
+ GNUTLS_DTLS_VERSION_MIN),
+ ENTRY (GNUTLS_DH_ANON_CAMELLIA_256_CBC_SHA256,
+ GNUTLS_CIPHER_CAMELLIA_256_CBC,
+ GNUTLS_KX_ANON_DH,
+ GNUTLS_MAC_SHA256, GNUTLS_TLS1,
+ GNUTLS_DTLS_VERSION_MIN),
ENTRY (GNUTLS_DH_ANON_CAMELLIA_128_CBC_SHA1,
GNUTLS_CIPHER_CAMELLIA_128_CBC,
GNUTLS_KX_ANON_DH,