summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--NEWS7
-rw-r--r--cipher/ChangeLog10
-rw-r--r--cipher/Makefile.am3
-rw-r--r--cipher/cipher.c5
-rw-r--r--configure.ac14
-rw-r--r--src/ChangeLog4
-rw-r--r--src/cipher.h3
-rw-r--r--src/gcrypt.h.in5
-rw-r--r--tests/ChangeLog4
-rw-r--r--tests/basic.c5
11 files changed, 57 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 655ef71e..349219a0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2007-05-02 David Shaw <dshaw@jabberwocky.com>
+
+ * NEWS, configure.ac: Add Camellia.
+
2007-04-30 Werner Koch <wk@g10code.com>
* README.apichanges: Move to doc/.
diff --git a/NEWS b/NEWS
index db72b3ab..81c83be9 100644
--- a/NEWS
+++ b/NEWS
@@ -16,6 +16,10 @@ Noteworthy changes in version 1.3.0 (unreleased)
* Support for the SEED cipher.
+ * Support for the Camellia cipher. Note that Camellia is disabled by
+ default, and that enabling it changes the license of libgcrypt from
+ LGPL to GPL.
+
* Support for OFB encryption mode.
* gcry_mpi_rshift does not anymore truncate the shift count.
@@ -56,6 +60,9 @@ Noteworthy changes in version 1.3.0 (unreleased)
GCRY_PK_USAGE_UNKN NEW
GCRY_PK_ECDSA NEW
GCRY_CIPHER_SEED NEW
+ GCRY_CIPHER_CAMELLIA128 NEW
+ GCRY_CIPHER_CAMELLIA192 NEW
+ GCRY_CIPHER_CAMELLIA256 NEW
GCRYCTL_FAKED_RANDOM_P NEW
GCRYCTL_PRINT_CONFIG NEW
GCRYCTL_SET_RNDEGD_SOCKET NEW.
diff --git a/cipher/ChangeLog b/cipher/ChangeLog
index 72ec0d2d..f9b10368 100644
--- a/cipher/ChangeLog
+++ b/cipher/ChangeLog
@@ -1,3 +1,13 @@
+2007-05-02 David Shaw <dshaw@jabberwocky.com>
+
+ * Makefile.am, cipher.c: Add Camellia.
+
+ * camellia-glue.c: New. The necessary glue to interface libgcrypt
+ to the stock NTT Camellia distribution.
+
+ * camellia.h, camellia.c: The stock NTT Camellia distribution
+ (GPL).
+
2007-04-30 David Shaw <dshaw@jabberwocky.com>
* cipher.c: Use #if instead of #ifdef as configure defines the
diff --git a/cipher/Makefile.am b/cipher/Makefile.am
index 94958efd..4fb47b36 100644
--- a/cipher/Makefile.am
+++ b/cipher/Makefile.am
@@ -75,7 +75,8 @@ sha512.c \
tiger.c \
whirlpool.c \
twofish.c \
-rfc2268.c
+rfc2268.c \
+camellia.c camellia.h camellia-glue.c
# We need to lower the optimization for this module.
tiger.o: $(srcdir)/tiger.c
diff --git a/cipher/cipher.c b/cipher/cipher.c
index f116503b..1538b4ce 100644
--- a/cipher/cipher.c
+++ b/cipher/cipher.c
@@ -75,6 +75,11 @@ static struct cipher_table_entry
#if USE_SEED
{ &_gcry_cipher_spec_seed, GCRY_CIPHER_SEED },
#endif
+#if USE_CAMELLIA
+ { &_gcry_cipher_spec_camellia128, GCRY_CIPHER_CAMELLIA128 },
+ { &_gcry_cipher_spec_camellia192, GCRY_CIPHER_CAMELLIA192 },
+ { &_gcry_cipher_spec_camellia256, GCRY_CIPHER_CAMELLIA256 },
+#endif
{ NULL }
};
diff --git a/configure.ac b/configure.ac
index dc1b04cf..5b66c0f7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -502,7 +502,7 @@ if test "$use_random_daemon" = "yes"; then
if test "$PTH_CONFIG" = "no"; then
AC_MSG_WARN([[
***
-*** To build the Libgcrypt's random humber daemon
+*** To build the Libgcrypt's random number daemon
*** we need the support of the GNU Portable Threads Library.
*** Download it from ftp://ftp.gnu.org/gnu/pth/
*** On a Debian GNU/Linux system you might want to try
@@ -813,6 +813,11 @@ test "$found" = "1" && GCRYPT_CIPHERS="$GCRYPT_CIPHERS seed.lo"
AC_DEFINE_UNQUOTED(USE_SEED, $found,
[Defined if this module should be included])
+LIST_MEMBER(camellia, $enabled_ciphers)
+test "$found" = "1" && GCRYPT_CIPHERS="$GCRYPT_CIPHERS camellia.lo camellia-glue.lo" && gpl="$gpl camellia"
+AC_DEFINE_UNQUOTED(USE_CAMELLIA, $found,
+ [Defined if this module should be included])
+
LIST_MEMBER(dsa, $enabled_pubkey_ciphers)
test "$found" = "1" && GCRYPT_PUBKEY_CIPHERS="$GCRYPT_PUBKEY_CIPHERS dsa.lo"
AC_DEFINE_UNQUOTED(USE_DSA, $found,
@@ -963,13 +968,12 @@ cat <<G10EOF
G10EOF
fi
-warn=""
for file in "random_modules"; do
- case "$file" in rndunix | rndw32) warn="$warn $file";; esac
+ case "$file" in rndunix | rndw32) gpl="$gpl $file";; esac
done
-if test -n "$warn"; then
+if test -n "$gpl"; then
echo "Please note that you are building a version of Libgcrypt with"
- echo " $warn"
+ echo " $gpl"
echo "included. These parts are licensed under the GPL and thus the"
echo "use of this library has to comply with the conditions of the GPL."
fi
diff --git a/src/ChangeLog b/src/ChangeLog
index 25beccf9..66ab99cd 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,7 @@
+2007-05-02 David Shaw <dshaw@jabberwocky.com>
+
+ * cipher.h, gcrypt.h.in: Add Camellia.
+
2007-04-30 Werner Koch <wk@g10code.com>
* gcrypt.h.in (GCRYCTL_PRINT_CONFIG): New.
diff --git a/src/cipher.h b/src/cipher.h
index 2c505f78..236e4d5d 100644
--- a/src/cipher.h
+++ b/src/cipher.h
@@ -83,6 +83,9 @@ extern gcry_cipher_spec_t _gcry_cipher_spec_serpent192;
extern gcry_cipher_spec_t _gcry_cipher_spec_serpent256;
extern gcry_cipher_spec_t _gcry_cipher_spec_rfc2268_40;
extern gcry_cipher_spec_t _gcry_cipher_spec_seed;
+extern gcry_cipher_spec_t _gcry_cipher_spec_camellia128;
+extern gcry_cipher_spec_t _gcry_cipher_spec_camellia192;
+extern gcry_cipher_spec_t _gcry_cipher_spec_camellia256;
/* Declarations for the digest specifications. */
extern gcry_md_spec_t _gcry_digest_spec_crc32;
diff --git a/src/gcrypt.h.in b/src/gcrypt.h.in
index 3e894d8c..23cd36f6 100644
--- a/src/gcrypt.h.in
+++ b/src/gcrypt.h.in
@@ -765,7 +765,10 @@ enum gcry_cipher_algos
GCRY_CIPHER_SERPENT256 = 306,
GCRY_CIPHER_RFC2268_40 = 307, /* Ron's Cipher 2 (40 bit). */
GCRY_CIPHER_RFC2268_128 = 308, /* Ron's Cipher 2 (128 bit). */
- GCRY_CIPHER_SEED = 309 /* 128 bit cipher described in RFC4269. */
+ GCRY_CIPHER_SEED = 309, /* 128 bit cipher described in RFC4269. */
+ GCRY_CIPHER_CAMELLIA128 = 310,
+ GCRY_CIPHER_CAMELLIA192 = 311,
+ GCRY_CIPHER_CAMELLIA256 = 312
};
/* The Rijndael algorithm is basically AES, so provide some macros. */
diff --git a/tests/ChangeLog b/tests/ChangeLog
index 2b12d873..bb5329a5 100644
--- a/tests/ChangeLog
+++ b/tests/ChangeLog
@@ -1,3 +1,7 @@
+2007-05-02 David Shaw <dshaw@jabberwocky.com>
+
+ * basic.c (check_ciphers): Add Camellia.
+
2007-04-30 David Shaw <dshaw@jabberwocky.com>
* basic.c (check_ciphers): #if out ciphers we don't have. Add
diff --git a/tests/basic.c b/tests/basic.c
index dba94e33..85f7ef5b 100644
--- a/tests/basic.c
+++ b/tests/basic.c
@@ -986,6 +986,11 @@ check_ciphers (void)
#if USE_SEED
GCRY_CIPHER_SEED,
#endif
+#if USE_CAMELLIA
+ GCRY_CIPHER_CAMELLIA128,
+ GCRY_CIPHER_CAMELLIA192,
+ GCRY_CIPHER_CAMELLIA256,
+#endif
0
};
static int algos2[] = {