diff options
author | David Shaw <[email protected]> | 2002-12-04 18:50:10 +0000 |
---|---|---|
committer | David Shaw <[email protected]> | 2002-12-04 18:50:10 +0000 |
commit | 1aec20776c0568c71aac299feb5519facc80348f (patch) | |
tree | 4ddfa6ae507218ab20ac09175b8604859b0fcbc9 /g10/keyedit.c | |
parent | * trustdb.c (validate_keys): Show trust parameters when building trustdb, (diff) | |
download | gnupg-1aec20776c0568c71aac299feb5519facc80348f.tar.gz gnupg-1aec20776c0568c71aac299feb5519facc80348f.zip |
* main.h, keyedit.c, keygen.c: Back out previous (2002-12-01) change.
Minimal isn't always best.
* sign.c (update_keysig_packet): Use the current time rather then a
modification of the original signature time. Make sure that this doesn't
cause a time warp.
* keygen.c (keygen_add_key_expire): Properly handle a key expiration date
in the past (use a duration of 0).
* keyedit.c (menu_expire): Use update_keysig_packet so any sig subpackets
are maintained during the update.
* build-packet.c (build_sig_subpkt): Mark sig expired or unexpired when
the sig expiration subpacket is added. (build_sig_subpkt_from_sig): Handle
making an expiration subpacket from a sig that has already expired (use a
duration of 0).
* packet.h, sign.c (update_keysig_packet), keyedit.c
(menu_set_primary_uid, menu_set_preferences): Add ability to issue 0x18
subkey binding sigs to update_keysig_packet and change all callers.
Diffstat (limited to '')
-rw-r--r-- | g10/keyedit.c | 20 |
1 files changed, 6 insertions, 14 deletions
diff --git a/g10/keyedit.c b/g10/keyedit.c index 8373a7f2c..e25debf90 100644 --- a/g10/keyedit.c +++ b/g10/keyedit.c @@ -2694,20 +2694,12 @@ menu_expire( KBNODE pub_keyblock, KBNODE sec_keyblock ) if( !sn ) log_info(_("No corresponding signature in secret ring\n")); - /* create new self signature */ if( mainkey ) - rc = make_keysig_packet( &newsig, main_pk, uid, NULL, - sk, 0x13, 0, 0, 0, 0, - keygen_add_std_prefs, main_pk ); + rc = update_keysig_packet(&newsig, sig, main_pk, uid, NULL, + sk, keygen_add_key_expire, main_pk); else - { - struct flags_expire fe; - fe.pk=sub_pk; - fe.sig=sig; - rc = make_keysig_packet( &newsig, main_pk, NULL, sub_pk, - sk, 0x18, 0, 0, 0, 0, - keygen_copy_flags_add_expire,&fe); - } + rc = update_keysig_packet(&newsig, sig, main_pk, NULL, sub_pk, + sk, keygen_add_key_expire, sub_pk ); if( rc ) { log_error("make_keysig_packet failed: %s\n", g10_errstr(rc)); @@ -2852,7 +2844,7 @@ menu_set_primary_uid ( KBNODE pub_keyblock, KBNODE sec_keyblock ) if (action) { int rc = update_keysig_packet (&newsig, sig, - main_pk, uid, + main_pk, uid, NULL, sk, change_primary_uid_cb, action > 0? "x":NULL ); @@ -2937,7 +2929,7 @@ menu_set_preferences (KBNODE pub_keyblock, KBNODE sec_keyblock ) int rc; rc = update_keysig_packet (&newsig, sig, - main_pk, uid, + main_pk, uid, NULL, sk, keygen_upd_std_prefs, NULL ); |