diff options
author | David Shaw <[email protected]> | 2004-02-10 22:42:34 +0000 |
---|---|---|
committer | David Shaw <[email protected]> | 2004-02-10 22:42:34 +0000 |
commit | 9842d84da07c6d352a083db67006028a6ced5126 (patch) | |
tree | b731e3b0d94419edbc3dd1c09102a1a5dd0cb493 /g10/getkey.c | |
parent | * clearsig.test, sigs.test: Properly detect RSA being missing, and use the (diff) | |
download | gnupg-9842d84da07c6d352a083db67006028a6ced5126.tar.gz gnupg-9842d84da07c6d352a083db67006028a6ced5126.zip |
* keygen.c (keygen_set_std_prefs): Build the default preferences list at
runtime as it properly handles algorithms disabled at build or run time.
* getkey.c (merge_selfsigs_main): Properly handle expired user IDs when
the expired self-sig is not the only self-sig.
* misc.c (compress_algo_to_string): Return NULL on failure like all of the
other xxxx_algo_to_string() functions.
* mainproc.c (list_node): Minor spacing tweak to match --list-keys output.
* keylist.c (list_keyblock_print), mainproc.c (list_node): Mark revoked
subkeys as revoked. Requested by Matthew Wilcox. Revoked overrides
expiration when both apply.
* keyedit.c (show_prefs): Use compress algo constants.
(show_basic_key_info): Make revoked and expired tags translatable.
* g10.c (rm_group): Properly ungroup from a list of groups.
Diffstat (limited to '')
-rw-r--r-- | g10/getkey.c | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/g10/getkey.c b/g10/getkey.c index 3f0997e2d..14a459df6 100644 --- a/g10/getkey.c +++ b/g10/getkey.c @@ -1585,19 +1585,21 @@ merge_selfsigs_main( KBNODE keyblock, int *r_revoked ) * the same email address may become valid again (hired, * fired, hired again). */ - if(sig->flags.expired) { - /* Expired uids don't get to be primary unless - they are the only uid there is. */ - uidnode->pkt->pkt.user_id->is_primary=0; - uidnode->pkt->pkt.user_id->is_expired=1; - uidnode->pkt->pkt.user_id->expiredate=sig->expiredate; - } - else { - sigdate = sig->timestamp; - signode = k; - if( sig->version > sigversion ) - sigversion = sig->version; - } + if(sig->flags.expired) + { + uidnode->pkt->pkt.user_id->is_expired=1; + signode = NULL; + } + else + { + uidnode->pkt->pkt.user_id->is_expired=0; + signode = k; + } + + sigdate = sig->timestamp; + uidnode->pkt->pkt.user_id->expiredate=sig->expiredate; + if( sig->version > sigversion ) + sigversion = sig->version; } } } |