* jnlib/: Removed.
authorWerner Koch <wk@gnupg.org>
Thu, 2 May 2002 14:10:12 +0000 (14:10 +0000)
committerWerner Koch <wk@gnupg.org>
Thu, 2 May 2002 14:10:12 +0000 (14:10 +0000)
* Makefile.am (SUBDIRS): Removed jnlib.
* configure.ac (jnlib/Makefile): Removed.

* configure.ac: Define _REENTRANT.

AUTHORS
ChangeLog
Makefile.am
NEWS
TODO
configure.ac
tests/ChangeLog
tests/basic.c

diff --git a/AUTHORS b/AUTHORS
index 9cb6509..7771c9a 100644 (file)
--- a/AUTHORS
+++ b/AUTHORS
@@ -1,4 +1,4 @@
-Maintainer: libgcrypt@g10code.com
+Maintainer: wk@g10code.com
 
 Libgcrypt used to be part of GnuPG but has been take out into its own
 package on 2000-12-21.
@@ -9,10 +9,9 @@ Authors of Libgcrypt
 
 GNUPG  Werner Koch               1998-02-23
 Assigns GNU Privacy Guard and future changes.
-werner.koch@guug.de
+wk@gnupg.org
 Designed and implemented GnuPG.
 
-
 GNUPG  Matthew Skala              1998-08-10
 Disclaims changes.
 mskala@ansuz.sooke.bc.ca
@@ -40,6 +39,8 @@ Assigns past and future changes. (g10/compress.c, g10/encr-data.c,
 g10/free-packet.c, g10/mdfilter.c, g10/plaintext.c, util/iobuf.c)
 rguyom@mail.dotcom.fr
 
+ANY     g10 Code GmbH           2001-06-07
+Code marked with ChangeLog entries of Werner Koch or Marcus Brinkmann.
 
 LIBGCRYPT Timo Schulz           2001-08-31
 Assigns past and future changes.
@@ -47,6 +48,8 @@ twoaday@freakmail.de
 
 
 
+
+
 More credits
 ============
 Most of the stuff in mpi has been taken from the GMP library by
index 24ae91f..30a7af0 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2002-05-02  Werner Koch  <wk@gnupg.org>
+
+       * jnlib/: Removed.
+       * Makefile.am (SUBDIRS): Removed jnlib.
+       * configure.ac (jnlib/Makefile): Removed.
+
+       * configure.ac: Define _REENTRANT.
+       
 2002-02-18  Werner Koch  <wk@gnupg.org>
 
        * configure.ac (MPI_EXTRA_ASM_OBJS): Use .lo suffix.
index 193cdc7..6aa164a 100644 (file)
@@ -1,6 +1,6 @@
 ## Process this file with automake to produce Makefile.in
 
-SUBDIRS = jnlib mpi cipher src doc tests
+SUBDIRS = mpi cipher src doc tests
 EXTRA_DIST = README-alpha BUGS autogen.sh
 DISTCLEANFILES = gcrypt-defs.h 
 
diff --git a/NEWS b/NEWS
index f3f9973..7837689 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,19 @@
+Noteworthy changes in version (current cvs)
+------------------------------------------------
+  
+  * It is possible to use libgcrypt w/o intialized secure memory.
+
+  * Libgcrypt should now be thread safe after the initialization.
+    gcry_control (GCRYCRL_INITIALIZATION_FINISHED,NULL,0) should have
+    be called before creating additional threads.
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+GCRYCTL_DISABLE_INTERNAL_LOCKING  NEW
+GCRYCTL_DISABLE_SECMEM            NEW
+GCRYCTL_INITIALIZATION_FINISHED   NEW
+gcry_strdup                       NEW
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
 Noteworthy changes in version 1.1.6 (2002-02-07)
 ------------------------------------------------
 
diff --git a/TODO b/TODO
index e22b101..5a2d9d3 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,6 +1,14 @@
-* see where we should use the ascii_strcasecmp() functions.
 * switching from encrypt to decrypt requires a close and open.
-  Wouldn't it be better if we have a reste function or integrate that
+  Wouldn't it be better if we have a reset function or integrate that
   with setkey?
+
 * add more tests.  Even basic is very minimal.
+
 * udiv-qrnbd.o should get build as *.lo [HPUX]
+
+* Define a function to be used as a constructor to set up things in a
+  MT safe way.  There is already a hook for this.
+
+* Allow operation using RSA keys consisting of the OpenSSL list of
+  paramemters and allow for a third form where the private Exponent
+  is not given (saves space)
index 5417c21..173ae13 100644 (file)
@@ -46,11 +46,18 @@ AH_TOP([
 #define _GNU_SOURCE  1
 ])
 
+
 AH_BOTTOM([
 #include "gcrypt-defs.h"
 #define _GCRYPT_IN_LIBGCRYPT 1
 ])
 
+AH_VERBATIM([_REENTRANT],
+[/* To allow the use of Libgcrypt in multithreaded programs we have to use
+    special features from the library. */
+#ifndef _REENTRANT
+# define _REENTRANT 1
+#endif])
 
 
 
@@ -62,8 +69,6 @@ AC_SUBST(VERSION)
 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of this package])
 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version of this package])
 
-
-# ALL_LINGUAS="da de eo es_ES fr id it ja nl pl pt_BR pt_PT ru sv"
 static_modules="sha1 md5 rmd160"
 static_random_module=""
 
@@ -764,7 +769,6 @@ DATADIRNAME=$DATADIRNAME
 
 AC_CONFIG_FILES([
 Makefile
-jnlib/Makefile
 mpi/Makefile
 cipher/Makefile
 doc/Makefile
index 2542e2a..54ac7cf 100644 (file)
@@ -1,3 +1,7 @@
+2002-05-02  Werner Koch  <wk@gnupg.org>
+
+       * basic.c: Add option --verbose.
+
 2002-01-11  Werner Koch  <wk@gnupg.org>
 
        * tsexp.c (canon_len): Fixed tests.
index c850ca6..bb6b281 100644 (file)
@@ -24,6 +24,7 @@
 #include <stdarg.h>
 #include "../src/gcrypt.h"
 
+static int verbose;
 static int error_count;
 
 static void
@@ -120,28 +121,42 @@ check_one_cipher (int algo, int mode)
 static void
 check_ciphers (void)
 {
-    static int algos[] = {
-        GCRY_CIPHER_3DES,
-        GCRY_CIPHER_CAST5,
-        GCRY_CIPHER_BLOWFISH,
-        GCRY_CIPHER_RIJNDAEL,
-        GCRY_CIPHER_RIJNDAEL192,
-        GCRY_CIPHER_RIJNDAEL256,
-        GCRY_CIPHER_TWOFISH,
-        0
-    };
-    int i;
-
-    for (i=0; algos[i]; i++ ) {
-        check_one_cipher (algos[i], GCRY_CIPHER_MODE_ECB);
-        check_one_cipher (algos[i], GCRY_CIPHER_MODE_CFB);
-        check_one_cipher (algos[i], GCRY_CIPHER_MODE_CBC);
+  static int algos[] = {
+    GCRY_CIPHER_3DES,
+    GCRY_CIPHER_CAST5,
+    GCRY_CIPHER_BLOWFISH,
+    GCRY_CIPHER_AES,
+    GCRY_CIPHER_AES192,
+    GCRY_CIPHER_AES256,
+    GCRY_CIPHER_TWOFISH,
+    0
+  };
+  static int algos2[] = {
+    GCRY_CIPHER_ARCFOUR,
+    0
+  };
+  int i;
+
+  for (i=0; algos[i]; i++ ) 
+    {
+      if (verbose)
+        fprintf (stderr, "checking `%s'\n", gcry_cipher_algo_name (algos[i]));
+                 
+      check_one_cipher (algos[i], GCRY_CIPHER_MODE_ECB);
+      check_one_cipher (algos[i], GCRY_CIPHER_MODE_CFB);
+      check_one_cipher (algos[i], GCRY_CIPHER_MODE_CBC);
     }
 
-    check_one_cipher (GCRY_CIPHER_ARCFOUR, GCRY_CIPHER_MODE_STREAM);
-    /* we have now run all cipher's selftests */
-    /* TODO: add some extra encryption to test the higher level functions */
+  for (i=0; algos2[i]; i++ ) 
+    {
+      if (verbose)
+        fprintf (stderr, "checking `%s'\n", gcry_cipher_algo_name (algos2[i]));
+                 
+      check_one_cipher (algos2[i], GCRY_CIPHER_MODE_STREAM);
+    }
+  /* we have now run all cipher's selftests */
 
+  /* TODO: add some extra encryption to test the higher level functions */
 }
 
 
@@ -155,12 +170,16 @@ check_digests ()
 int
 main (int argc, char **argv)
 {
-    if (!gcry_check_version (GCRYPT_VERSION))
-        die ("Version mismatch\n");
-    check_ciphers ();
-    check_digests ();
-
-    return error_count? 1:0;
+  if (argc > 1 && !strcmp (argv[1], "--verbose"))
+    verbose = 1;
+
+  /*gcry_control (GCRYCTL_DISABLE_INTERNAL_LOCKING, NULL, 0);*/
+  if (!gcry_check_version (GCRYPT_VERSION))
+    die ("version mismatch\n");
+  check_ciphers ();
+  check_digests ();
+  
+  return error_count? 1:0;
 }