Preparing for 1.9.2 release. V1-9-2
authorWerner Koch <wk@gnupg.org>
Mon, 17 Nov 2003 12:20:11 +0000 (12:20 +0000)
committerWerner Koch <wk@gnupg.org>
Mon, 17 Nov 2003 12:20:11 +0000 (12:20 +0000)
ChangeLog
NEWS
TODO
common/ChangeLog
common/mkdtemp.c
configure.ac
jnlib/ChangeLog
jnlib/dotlock.c
jnlib/strlist.c
jnlib/strlist.h

index 2a83014..f998dd1 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2003-11-17  Werner Koch  <wk@gnupg.org>
+
+       Release 1.9.2.
+       
+       * configure.ac: Requires now libassuan 0.6.1.
+
 2003-10-31  Werner Koch  <wk@gnupg.org>
 
        * configure.ac (NEED_KSBA_VERSION): Set to 0.9.0 due the changed
diff --git a/NEWS b/NEWS
index b708d44..1f8ee33 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,4 @@
-Noteworthy changes in version 1.9.2 (unreleased)
+Noteworthy changes in version 1.9.2 (2003-11-17)
 ------------------------------------------------
 
  * On card key generation is no longer done using the --gen-key
@@ -7,6 +7,8 @@ Noteworthy changes in version 1.9.2 (unreleased)
  * PINs are now properly cached and there are only 2 PINs visible.
    The 3rd PIN (CHV2) is internally syncronized with the regular PIN.
 
+ * All kind of other internal stuff.
+
 
 Noteworthy changes in version 1.9.1 (2003-09-06)
 ------------------------------------------------
diff --git a/TODO b/TODO
index e8aa872..eb8e2da 100644 (file)
--- a/TODO
+++ b/TODO
@@ -70,4 +70,11 @@ might want to have an agent context for each service request
 * scd/sc-investigate
 ** Enhance with card compatibility check
 
-
+* scd/app-openpgp
+  Do a pre-check to make sure that the minimum length condition of the
+  PINs are satisied - this avoid useless retry counter decrements in
+  case the PIN dialog is accidently hit.
+
+  Must check that the fingerprint used is not the one of the
+  authentication key.  Old GnuPG versions seem to encode the wrong
+  keyID.
\ No newline at end of file
index da80507..2344868 100644 (file)
@@ -1,5 +1,7 @@
 2003-11-14  Werner Koch  <wk@gnupg.org>
 
+       * mkdtemp.c (mkdtemp): Use gcry_create_nonce.
+
        * cryptmiss.c: Removed.
 
 2003-11-13  Werner Koch  <wk@gnupg.org>
index 5347b9c..abe731e 100644 (file)
@@ -66,11 +66,8 @@ char *mkdtemp(char *template)
 
       idx=0;
 
-      /* Using really random bits is probably overkill here.  The
-        worst thing that can happen with a directory name collision
-        is that the function will return an error. */
-
-      randombits = gcry_random_bytes (4*remaining, GCRY_WEAK_RANDOM);
+      randombits = gcry_xmalloc (4*remaining);
+      gcry_create_nonce (randombits, 4*remaining);
 
       while(remaining>1)
        {
index 1c6269f..8886d50 100644 (file)
 AC_PREREQ(2.52)
 # Version number: Remember to change it immediately *after* a release.
 #                 Add a "-cvs" prefix for non-released code.
-AC_INIT(gnupg, 1.9.2-cvs, gnupg-devel@gnupg.org)
+AC_INIT(gnupg, 1.9.2, gnupg-devel@gnupg.org)
 # Set development_version to yes if the minor number is odd or you
 # feel that the default check for a development version is not
 # sufficient.
 development_version=yes
-NEED_GPG_ERROR_VERSION=0.4
-NEED_LIBGCRYPT_VERSION=1.1.43
-NEED_LIBASSUAN_VERSION=0.6.0
+NEED_GPG_ERROR_VERSION=0.6
+NEED_LIBGCRYPT_VERSION=1.1.90
+NEED_LIBASSUAN_VERSION=0.6.1
 NEED_KSBA_VERSION=0.9.0
 NEED_OPENSC_VERSION=0.8.0
 
@@ -948,7 +948,7 @@ if test "$have_ksba" = "no"; then
 ***
 *** You need libksba to build this program.
 *** This library is for example available at
-***   ftp://ftp.gnupg.org/pub/gcrypt/alpha/aegypten/
+***   ftp://ftp.gnupg.org/pub/gcrypt/alpha/libksba/
 *** (at least version $NEED_KSBA_VERSION is required).
 ***]])
 fi
index 7888ff1..e12dd8e 100644 (file)
@@ -1,3 +1,9 @@
+2003-11-13  Werner Koch  <wk@gnupg.org>
+
+       * strlist.c (strlist_copy): New.
+
+       * dotlock.c: Define DIRSEP_C et al. if not defined.
+
 2003-11-06  Werner Koch  <wk@gnupg.org>
 
        * strlist.h (strlist_t): New. STRLIST is now deprecated.
index 7240faf..a50a0ee 100644 (file)
 #include "libjnlib-config.h"
 #include "dotlock.h"
 
+#if !defined(DIRSEP_C) && !defined(EXTSEP_C) \
+    && !defined(DIRSEP_S) && !defined(EXTSEP_S)
+#ifdef HAVE_DOSISH_SYSTEM
+#define DIRSEP_C '\\'
+#define EXTSEP_C '.'
+#define DIRSEP_S "\\"
+#define EXTSEP_S "."
+#else
+#define DIRSEP_C '/'
+#define EXTSEP_C '.'
+#define DIRSEP_S "/"
+#define EXTSEP_S "."
+#endif
+#endif
+
+
 struct dotlock_handle {
     struct dotlock_handle *next;
     char *tname;    /* name of lockfile template */
index 063c89c..49b5106 100644 (file)
@@ -29,9 +29,9 @@
 
 
 void
-free_strlist( STRLIST sl )
+free_strlist( strlist_t sl )
 {
-    STRLIST sl2;
+    strlist_t sl2;
 
     for(; sl; sl = sl2 ) {
        sl2 = sl->next;
@@ -40,10 +40,10 @@ free_strlist( STRLIST sl )
 }
 
 
-STRLIST
-add_to_strlist( STRLIST *list, const char *string )
+strlist_t
+add_to_strlist( strlist_t *list, const char *string )
 {
-    STRLIST sl;
+    strlist_t sl;
 
     sl = jnlib_xmalloc( sizeof *sl + strlen(string));
     sl->flags = 0;
@@ -58,10 +58,10 @@ add_to_strlist( STRLIST *list, const char *string )
  * same as add_to_strlist() but if is_utf8 is *not* set a conversion
  * to UTF8 is done  
  */
-STRLIST
-add_to_strlist2( STRLIST *list, const char *string, int is_utf8 )
+strlist_t
+add_to_strlist2( strlist_t *list, const char *string, int is_utf8 )
 {
-    STRLIST sl;
+    strlist_t sl;
 
     if( is_utf8 )
        sl = add_to_strlist( list, string );
@@ -74,10 +74,10 @@ add_to_strlist2( STRLIST *list, const char *string, int is_utf8 )
 }
 #endif
 
-STRLIST
-append_to_strlist( STRLIST *list, const char *string )
+strlist_t
+append_to_strlist( strlist_t *list, const char *string )
 {
-    STRLIST r, sl;
+    strlist_t r, sl;
 
     sl = jnlib_xmalloc( sizeof *sl + strlen(string));
     sl->flags = 0;
@@ -94,10 +94,10 @@ append_to_strlist( STRLIST *list, const char *string )
 }
 
 #if 0
-STRLIST
-append_to_strlist2( STRLIST *list, const char *string, int is_utf8 )
+strlist_t
+append_to_strlist2( strlist_t *list, const char *string, int is_utf8 )
 {
-    STRLIST sl;
+    strlist_t sl;
 
     if( is_utf8 )
        sl = append_to_strlist( list, string );
@@ -110,18 +110,40 @@ append_to_strlist2( STRLIST *list, const char *string, int is_utf8 )
 }
 #endif
 
-STRLIST
-strlist_prev( STRLIST head, STRLIST node )
+
+/* Return a copy of LIST. */
+strlist_t
+strlist_copy (strlist_t list)
+{
+  strlist_t newlist = NULL, sl, *last;
+
+  last = &newlist;
+  for (; list; list = list->next)
+    {
+      sl = jnlib_xmalloc (sizeof *sl + strlen (list->d));
+      sl->flags = list->flags;
+      strcpy(sl->d, list->d);
+      sl->next = NULL;
+      *last = sl;
+      last = &sl;
+    }
+  return newlist;
+}
+
+
+
+strlist_t
+strlist_prev( strlist_t head, strlist_t node )
 {
-    STRLIST n;
+    strlist_t n;
 
     for(n=NULL; head && head != node; head = head->next )
        n = head;
     return n;
 }
 
-STRLIST
-strlist_last( STRLIST node )
+strlist_t
+strlist_last( strlist_t node )
 {
     if( node )
        for( ; node->next ; node = node->next )
@@ -131,10 +153,10 @@ strlist_last( STRLIST node )
 
 
 char *
-strlist_pop (STRLIST *list)
+strlist_pop (strlist_t *list)
 {
   char *str=NULL;
-  STRLIST sl=*list;
+  strlist_t sl=*list;
 
   if(sl)
     {
@@ -148,4 +170,3 @@ strlist_pop (STRLIST *list)
   return str;
 }
 
-
index ea459d0..72da241 100644 (file)
@@ -37,6 +37,8 @@ strlist_t add_to_strlist (strlist_t *list, const char *string);
 
 strlist_t append_to_strlist (strlist_t *list, const char *string);
 
+strlist_t strlist_copy (strlist_t list);
+
 /*strlist_t append_to_strlist2( strlist_t *list, const char *string,
                               int is_utf8);*/
 strlist_t strlist_prev (strlist_t head, strlist_t node);