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

* keygen.c (save_unprotected_key_to_card): Fix gcc4 warning.

* options.h, import.c (parse_import_options, import_one): Add
import-clean-uids option to automatically compact unusable uids when
importing.  Like import-clean-sigs, this may nodify the local keyring.

* trustdb.c (clean_uids_from_key): Only allow selfsigs to be a
candidate for re-inclusion.
This commit is contained in:
David Shaw 2005-06-14 03:55:19 +00:00
parent 1067c01c93
commit 07e9d532b1
5 changed files with 45 additions and 8 deletions

View file

@ -1625,8 +1625,9 @@ clean_sigs_from_uid(KBNODE keyblock,KBNODE uidnode,int noisy)
otherwise, it's invalid */
if(noisy)
log_info("removing signature issued by key %s: %s\n",
log_info("removing signature from %s on uid \"%s\": %s\n",
keystr(node->pkt->pkt.signature->keyid),
uidnode->pkt->pkt.user_id->name,
node->flag&(1<<9)?"superceded":"invalid");
delete_kbnode(node);
@ -1655,10 +1656,12 @@ clean_uids_from_key(KBNODE keyblock,int noisy)
{
int delete_until_next=0,deleted=0;
KBNODE node,signode=NULL;
u32 sigdate=0;
u32 keyid[2],sigdate=0;
assert(keyblock->pkt->pkttype==PKT_PUBLIC_KEY);
keyid_from_pk(keyblock->pkt->pkt.public_key,keyid);
merge_keys_and_selfsig(keyblock);
for(node=keyblock->next;
@ -1713,6 +1716,7 @@ clean_uids_from_key(KBNODE keyblock,int noisy)
/* This isn't actually slow - the key signature validation
is cached from merge_keys_and_selfsig() */
if(IS_UID_SIG(sig) && sig->timestamp>sigdate
&& keyid[0]==sig->keyid[0] && keyid[1]==sig->keyid[1]
&& check_key_signature(keyblock,node,NULL)==0)
{
sigdate=sig->timestamp;