aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2001-07-27 09:33:00 +0000
committerWerner Koch <[email protected]>2001-07-27 09:33:00 +0000
commita5ed3e692541a3aa71eab75ce85c0443fd13cb32 (patch)
tree35a17b402309d72a6671dd0ebe314c32b8d177b2
parentmigration to autoconf 2.52 and bugfixes (diff)
downloadgnupg-a5ed3e692541a3aa71eab75ce85c0443fd13cb32.tar.gz
gnupg-a5ed3e692541a3aa71eab75ce85c0443fd13cb32.zip
Fixed lsign using v3 problem
-rw-r--r--g10/ChangeLog5
-rw-r--r--g10/keyedit.c11
2 files changed, 16 insertions, 0 deletions
diff --git a/g10/ChangeLog b/g10/ChangeLog
index 85a66e75f..9966c4199 100644
--- a/g10/ChangeLog
+++ b/g10/ChangeLog
@@ -1,3 +1,8 @@
+2001-07-27 Werner Koch <[email protected]>
+
+ * keyedit.c (sign_uids): Check that we are not trying to to a
+ lsign with a pre-v4 key. Bug noticed by Thomas Roessler.
+
2001-07-26 Werner Koch <[email protected]>
* parse-packet.c (parse_photo_id): Reset all variables.
diff --git a/g10/keyedit.c b/g10/keyedit.c
index 8b6386f71..565e9994e 100644
--- a/g10/keyedit.c
+++ b/g10/keyedit.c
@@ -282,6 +282,17 @@ sign_uids( KBNODE keyblock, STRLIST locusr, int *ret_modified, int local )
if( rc )
goto leave;
+ if (local) {
+ for( sk_rover = sk_list; sk_rover; sk_rover = sk_rover->next ) {
+ if (sk_rover->sk->version < 4) {
+ tty_printf ("Local only signing not possible "
+ "due to an old style key\n");
+ rc = G10ERR_UNU_SECKEY;
+ goto leave;
+ }
+ }
+ }
+
/* loop over all signaturs */
for( sk_rover = sk_list; sk_rover; sk_rover = sk_rover->next ) {
u32 sk_keyid[2];