aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2009-06-24 14:01:20 +0000
committerWerner Koch <[email protected]>2009-06-24 14:01:20 +0000
commit64f24da2834ea4732758c87f2ac3adabd493e113 (patch)
tree65346252300849212368417bdf200005083a3be0
parentUpdate (diff)
downloadgnupg-64f24da2834ea4732758c87f2ac3adabd493e113.tar.gz
gnupg-64f24da2834ea4732758c87f2ac3adabd493e113.zip
Fix a couple of minor bugs.
-rw-r--r--g10/ChangeLog5
-rw-r--r--g10/passphrase.c2
-rw-r--r--g10/revoke.c2
-rw-r--r--keyserver/ChangeLog5
-rw-r--r--keyserver/gpgkeys_ldap.c11
5 files changed, 18 insertions, 7 deletions
diff --git a/g10/ChangeLog b/g10/ChangeLog
index c1b0085ed..3e3d6dbe7 100644
--- a/g10/ChangeLog
+++ b/g10/ChangeLog
@@ -1,3 +1,8 @@
+2009-06-24 Werner Koch <[email protected]>
+
+ * passphrase.c (passphrase_to_dek): Do not deref a PW of NULL.
+ * revoke.c (gen_revoke): Remove unused malloc of PK.
+
2009-06-17 Werner Koch <[email protected]>
* parse-packet.c (parse): Use a casted -1 instead of a 32 bit
diff --git a/g10/passphrase.c b/g10/passphrase.c
index de4ca6cf1..c93cde64d 100644
--- a/g10/passphrase.c
+++ b/g10/passphrase.c
@@ -1003,7 +1003,7 @@ passphrase_to_dek( u32 *keyid, int pubkey_algo,
get_last_passphrase(). */
dek = xmalloc_secure_clear ( sizeof *dek );
dek->algo = cipher_algo;
- if( !*pw && mode == 2 )
+ if( (!pw || !*pw) && mode == 2 )
dek->keylen = 0;
else
hash_passphrase( dek, pw, s2k, mode==2 );
diff --git a/g10/revoke.c b/g10/revoke.c
index 32b269f29..bff6d002c 100644
--- a/g10/revoke.c
+++ b/g10/revoke.c
@@ -488,8 +488,6 @@ gen_revoke( const char *uname )
keyid_from_sk( sk, sk_keyid );
print_seckey_info (sk);
- pk = xmalloc_clear( sizeof *pk );
-
/* FIXME: We should get the public key direct from the secret one */
pub_keyblock=get_pubkeyblock(sk_keyid);
diff --git a/keyserver/ChangeLog b/keyserver/ChangeLog
index b1622c3ce..186e74f21 100644
--- a/keyserver/ChangeLog
+++ b/keyserver/ChangeLog
@@ -1,3 +1,8 @@
+2009-06-24 Werner Koch <[email protected]>
+
+ * gpgkeys_ldap.c (send_key): Do not loop over a NULL modlist in
+ fail. Reported by Fabian Keil.
+
2009-06-09 David Shaw <[email protected]>
* Makefile.am (gpgkeys_hkp_LDADD): Need DNSLIBS for the resolver
diff --git a/keyserver/gpgkeys_ldap.c b/keyserver/gpgkeys_ldap.c
index 17b585f84..4430ccbe1 100644
--- a/keyserver/gpgkeys_ldap.c
+++ b/keyserver/gpgkeys_ldap.c
@@ -777,13 +777,16 @@ send_key(int *eof)
fail:
/* Unwind and free the whole modlist structure */
- for(ml=modlist;*ml;ml++)
+ if (modlist)
{
- free_mod_values(*ml);
- free(*ml);
+ for(ml=modlist;*ml;ml++)
+ {
+ free_mod_values(*ml);
+ free(*ml);
+ }
+ free(modlist);
}
- free(modlist);
free(addlist);
free(dn);
free(key);