1
0
Fork 0
mirror of git://git.gnupg.org/gnupg.git synced 2025-07-02 22:46:30 +02:00

See ChangeLog: Thu Jun 10 14:18:23 CEST 1999 Werner Koch

This commit is contained in:
Werner Koch 1999-06-10 12:24:42 +00:00
parent 40238d4b63
commit b5f36dd0dd
18 changed files with 2586 additions and 2545 deletions

View file

@ -1,3 +1,13 @@
Thu Jun 10 14:18:23 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
* free-packet.c (free_encrypted): Fixed EOF case (Remi).
(free_plaintext): Ditto.
* helptext.c (keyedit.delsig.unknown): New (Remi).
* keyedit.c (print_and_check_one_sig): Add arg print_without_key and
changed all callers to make use of it (Remi):
Tue Jun 8 13:36:25 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
* keylist.c (print_key_data): New and called elsewhere.

View file

@ -244,8 +244,13 @@ free_encrypted( PKT_encrypted *ed )
;
}
else {
while( ed->len ) /* skip the packet */
ed->len -= iobuf_read( ed->buf, NULL, ed->len );
while( ed->len ) { /* skip the packet */
int n = iobuf_read( ed->buf, NULL, ed->len );
if( n == -1 )
ed->len = 0;
else
ed->len -= n;
}
}
}
m_free(ed);
@ -261,8 +266,13 @@ free_plaintext( PKT_plaintext *pt )
;
}
else {
while( pt->len ) /* skip the packet */
pt->len -= iobuf_read( pt->buf, NULL, pt->len );
while( pt->len ) { /* skip the packet */
int n = iobuf_read( pt->buf, NULL, pt->len );
if( n == -1 )
pt->len = 0;
else
pt->len -= n;
}
}
}
m_free(pt);

View file

@ -178,10 +178,15 @@ static struct helptexts { const char *key; const char *help; } helptexts[] = {
"to delete this signature may be important to establish a trust\n"
"connection to the key or another key certified by this key."
},
{ N_("keyedit.delsig.unknown"),
"This signature can't be checked because you don't have the\n"
"corresponding key. You should postpone its deletion until you\n"
"know which key was used because this signing key might establish"
"a trust connection through another already certified key."
},
{ N_("keyedit.delsig.invalid"),
"The signature is not valid. It does make sense to remove it from\n"
"your keyring if it is really invalid and not just unchecked due to\n"
"a missing public key (marked by \"sig?\")."
"your keyring."
},
{ N_("keyedit.delsig.selfsig"),
"This is a signature which binds the user ID to the key. It is\n"

View file

@ -111,7 +111,7 @@ get_keyblock_byname( KBNODE *keyblock, KBPOS *kbpos, const char *username )
static int
print_and_check_one_sig( KBNODE keyblock, KBNODE node,
int *inv_sigs, int *no_key, int *oth_err,
int *is_selfsig )
int *is_selfsig, int print_without_key )
{
PKT_signature *sig = node->pkt->pkt.signature;
int rc, sigrc;
@ -141,7 +141,7 @@ print_and_check_one_sig( KBNODE keyblock, KBNODE node,
++*oth_err;
break;
}
if( sigrc != '?' ) {
if( sigrc != '?' || print_without_key ) {
tty_printf("%s%c %08lX %s ",
is_rev? "rev":"sig",
sigrc, sig->keyid[1], datestr_from_sig(sig));
@ -205,7 +205,7 @@ check_all_keysigs( KBNODE keyblock, int only_selected )
int selfsig;
if( print_and_check_one_sig( keyblock, node, &inv_sigs,
&no_key, &oth_err, &selfsig ) ) {
&no_key, &oth_err, &selfsig, 0 ) ) {
if( selfsig )
has_selfsig = 1;
}
@ -1275,24 +1275,33 @@ menu_delsig( KBNODE pub_keyblock )
uid = (node->flag & NODFLG_SELUID)? node->pkt->pkt.user_id : NULL;
}
else if( uid && node->pkt->pkttype == PKT_SIGNATURE ) {
int okay, valid, selfsig;
int okay, valid, selfsig, inv_sig, no_key, other_err;
tty_printf("uid ");
tty_print_string( uid->name, uid->len );
tty_printf("\n");
okay = inv_sig = no_key = other_err = 0;
valid = print_and_check_one_sig( pub_keyblock, node,
NULL, NULL, NULL, &selfsig );
&inv_sig, &no_key, &other_err,
&selfsig, 1 );
okay = valid ? cpr_get_answer_yes_no_quit(
"keyedit.delsig.valid",
_("Delete this good signature? (y/N/q)"))
: cpr_get_answer_yes_no_quit(
"keyedit.delsig.invalid",
_("Delete this invalid signature? (y/N/q)"));
if( valid )
okay = cpr_get_answer_yes_no_quit(
"keyedit.delsig.valid",
_("Delete this good signature? (y/N/q)"));
else if( inv_sig || other_err )
okay = cpr_get_answer_yes_no_quit(
"keyedit.delsig.invalid",
_("Delete this invalid signature? (y/N/q)"));
else if( no_key )
okay = cpr_get_answer_yes_no_quit(
"keyedit.delsig.unknown",
_("Delete this unknown signature? (y/N/q)"));
if( okay == -1 )
break;
if( okay && !cpr_get_answer_is_yes(
if( okay && selfsig && !cpr_get_answer_is_yes(
"keyedit.delsig.selfsig",
_("Really delete this self-signature? (y/N)") ))
okay = 0;