From c721e11bf53e9c35c444c0439902fb046d169c61 Mon Sep 17 00:00:00 2001 From: David Shaw Date: Fri, 30 Aug 2002 18:01:32 +0000 Subject: [PATCH] * pkclist.c (build_pk_list): Fail if any recipient keys are unusable. * options.skel: The PGP LDAP keyserver is back. Use MIT keyserver as a sample rather than cryptnet as cryptnet does not support searching yet. * keyedit.c (show_key_with_all_names): Fix error message (preferences are userid/selfsig and not key specific). --- g10/ChangeLog | 13 +++++++++++++ g10/keyedit.c | 2 +- g10/options.skel | 6 ++++-- g10/pkclist.c | 8 ++++++++ 4 files changed, 26 insertions(+), 3 deletions(-) diff --git a/g10/ChangeLog b/g10/ChangeLog index 294f91a81..ed418cf81 100644 --- a/g10/ChangeLog +++ b/g10/ChangeLog @@ -1,3 +1,15 @@ +2002-08-30 David Shaw + + * pkclist.c (build_pk_list): Fail if any recipient keys are + unusable. + + * options.skel: The PGP LDAP keyserver is back. Use MIT keyserver + as a sample rather than cryptnet as cryptnet does not support + searching yet. + + * keyedit.c (show_key_with_all_names): Fix error message + (preferences are userid/selfsig and not key specific). + 2002-08-30 Werner Koch * pkclist.c (do_we_trust_pre): Changed the wording of a warning. @@ -9,6 +21,7 @@ can't determine the length in advance, the uncompressor does not know where to start. Actually we should use the new CTB always but this would break PGP 2 compatibility. + * parse-packet.c (parse): Special treatment for new style CTB compressed packets. diff --git a/g10/keyedit.c b/g10/keyedit.c index 6e62ac450..413ca81f1 100644 --- a/g10/keyedit.c +++ b/g10/keyedit.c @@ -1835,7 +1835,7 @@ show_key_with_all_names( KBNODE keyblock, int only_marked, int with_revoker, show_prefs (uid, with_prefs == 2); else tty_printf(_("There are no preferences on a " - "PGP 2.x-style key.\n")); + "PGP 2.x-style user ID.\n")); } } } diff --git a/g10/options.skel b/g10/options.skel index 924b0783e..2ea02923d 100644 --- a/g10/options.skel +++ b/g10/options.skel @@ -85,13 +85,14 @@ lock-once # support). # # Example HKP keyserver: -# x-hkp://keyserver.cryptnet.net +# x-hkp://pgp.mit.edu # # Example email keyserver: # mailto:pgp-public-keys@keys.nl.pgp.net # -# Example LDAP keyserver: +# Example LDAP keyservers: # ldap://pgp.surfnet.nl:11370 +# ldap://keyserver.pgp.com # # Regular URL syntax applies, and you can set an alternate port # through the usual method: @@ -109,6 +110,7 @@ lock-once #keyserver x-hkp://pgp.mit.edu #keyserver mailto:pgp-public-keys@keys.nl.pgp.net #keyserver ldap://pgp.surfnet.nl:11370 +#keyserver ldap://keyserver.pgp.com # Common options for keyserver functions: # diff --git a/g10/pkclist.c b/g10/pkclist.c index 684145fe5..040db11ba 100644 --- a/g10/pkclist.c +++ b/g10/pkclist.c @@ -770,6 +770,7 @@ build_pk_list( STRLIST rcpts, PK_LIST *ret_pk_list, unsigned use ) log_error(_("%s: skipped: %s\n"), rov->d, g10_errstr(rc) ); write_status_text_and_buffer (STATUS_INV_RECP, "0 ", rov->d, strlen (rov->d), -1); + goto fail; } else if( !(rc=check_pubkey_algo2(pk->pubkey_algo, use )) ) { /* Skip the actual key if the key is already present @@ -793,6 +794,7 @@ build_pk_list( STRLIST rcpts, PK_LIST *ret_pk_list, unsigned use ) log_error(_("%s: skipped: %s\n"), rov->d, g10_errstr(rc) ); write_status_text_and_buffer (STATUS_INV_RECP, "0 ", rov->d, strlen (rov->d), -1); + goto fail; } } } @@ -945,6 +947,7 @@ build_pk_list( STRLIST rcpts, PK_LIST *ret_pk_list, unsigned use ) write_status_text_and_buffer (STATUS_INV_RECP, "0 ", remusr->d, strlen (remusr->d), -1); + goto fail; } else if( !(rc=check_pubkey_algo2(pk->pubkey_algo, use )) ) { int trustlevel; @@ -958,6 +961,7 @@ build_pk_list( STRLIST rcpts, PK_LIST *ret_pk_list, unsigned use ) remusr->d, strlen (remusr->d), -1); + goto fail; } else if( do_we_trust_pre( pk, trustlevel ) ) { /* note: do_we_trust may have changed the trustlevel */ @@ -988,6 +992,7 @@ build_pk_list( STRLIST rcpts, PK_LIST *ret_pk_list, unsigned use ) remusr->d, strlen (remusr->d), -1); + goto fail; } } else { @@ -997,6 +1002,7 @@ build_pk_list( STRLIST rcpts, PK_LIST *ret_pk_list, unsigned use ) strlen (remusr->d), -1); log_error(_("%s: skipped: %s\n"), remusr->d, g10_errstr(rc) ); + goto fail; } } } @@ -1007,6 +1013,8 @@ build_pk_list( STRLIST rcpts, PK_LIST *ret_pk_list, unsigned use ) rc = G10ERR_NO_USER_ID; } + fail: + if( rc ) release_pk_list( pk_list ); else