* pkclist.c (algo_available): Automatically enable DSA2 mode when handling
authorDavid Shaw <dshaw@jabberwocky.com>
Wed, 28 Jun 2006 15:26:05 +0000 (15:26 +0000)
committerDavid Shaw <dshaw@jabberwocky.com>
Wed, 28 Jun 2006 15:26:05 +0000 (15:26 +0000)
a key that clearly isn't DSA1 (i.e. q!=160).

g10/ChangeLog
g10/pkclist.c

index a156829..bb95f81 100644 (file)
@@ -1,3 +1,8 @@
+2006-06-28  David Shaw  <dshaw@jabberwocky.com>
+
+       * pkclist.c (algo_available): Automatically enable DSA2 mode when
+       handling a key that clearly isn't DSA1 (i.e. q!=160).
+
 2006-06-28  Werner Koch  <wk@g10code.com>
 
        * app-openpgp.c (do_writekey): Fixed computation of memmove
index 7f3285b..763368b 100644 (file)
@@ -1212,12 +1212,12 @@ algo_available( preftype_t preftype, int algo, void *hint )
     {
       if(hint)
        {
-         if(opt.flags.dsa2)
+         if((*(int *)hint)!=20 || opt.flags.dsa2)
            {
-             /* If --enable-dsa2 is set, then we'll accept a hash
-                that is larger than we need.  If --enable-dsa2 is not
-                set, then we won't accept any hash that isn't exactly
-                the right size. */
+             /* If --enable-dsa2 is set or the hash isn't 160 bits
+                (which implies DSA2), then we'll accept a hash that
+                is larger than we need.  Otherwise we won't accept
+                any hash that isn't exactly the right size. */
              if((*(int *)hint) > md_digest_length(algo))
                return 0;
            }