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

import works

This commit is contained in:
Werner Koch 1998-02-17 20:48:52 +00:00
parent 78c49af6c3
commit c8bb57d05d
33 changed files with 1404 additions and 141 deletions

View file

@ -573,7 +573,7 @@ check_all_keysigs( KBNODE keyblock )
* Ask and remove invalid signatures are to be removed.
*/
static int
remove_keysigs( KBNODE keyblock, int all )
remove_keysigs( KBNODE keyblock, u32 *keyid, int all )
{
KBNODE kbctx;
KBNODE node;
@ -588,7 +588,7 @@ remove_keysigs( KBNODE keyblock, int all )
&& (node->pkt->pkt.signature->sig_class&~3) == 0x10 ) {
PKT_signature *sig = node->pkt->pkt.signature;
if( all ) {
if( keyid[0] == sig->keyid[0] && keyid[1] == sig->keyid[1] ) {
/* fixme: skip self-sig */
}
@ -609,6 +609,10 @@ remove_keysigs( KBNODE keyblock, int all )
tty_printf("Public key not available.\n");
else if( node->flag & 4 )
tty_printf("The signature could not be checked!\n");
if( keyid[0] == sig->keyid[0] && keyid[1] == sig->keyid[1] )
continue; /* do not remove self-signatures */
answer = tty_get("\nRemove this signature? ");
tty_kill_prompt();
if( answer_is_yes(answer) ) {
@ -709,7 +713,7 @@ sign_key( const char *username, STRLIST locusr )
answer = tty_get("To you want to remove some of the invalid sigs? ");
tty_kill_prompt();
if( answer_is_yes(answer) )
remove_keysigs( keyblock, 0 );
remove_keysigs( keyblock, pkc_keyid, 0 );
m_free(answer);
}
}
@ -833,7 +837,7 @@ edit_keysigs( const char *username )
clear_kbnode_flags( keyblock );
check_all_keysigs( keyblock );
if( remove_keysigs( keyblock, 1 ) ) {
if( remove_keysigs( keyblock, pkc_keyid, 1 ) ) {
rc = update_keyblock( &kbpos, keyblock );
if( rc ) {
log_error("update_keyblock failed: %s\n", g10_errstr(rc) );