1
0
mirror of git://git.gnupg.org/gnupg.git synced 2024-12-22 10:19:57 +01:00
Werner Koch 3a18378a92
gpg: Allow adding of Additional Decryption Subkeys.
* g10/free-packet.c (copy_public_key): Factor some code out to ...
(copy_public_key_basics): new.
* g10/build-packet.c (build_sig_subpkt_from_sig): New arg signhints.
* g10/packet.h (PUBKEY_USAGE_RENC): Fix value.
(SIGNHINT_KEYSIG, SIGNHINT_SELFSIG): Moved from sign.c.
(SIGNHINT_ADSK): New.
(PKT_public_key): Change pubkey_usage from byte to u16.
(PKT_user_id): Cosmetic fix: change help_key_usage from int to u16.
* g10/getkey.c (parse_key_usage): Make public.
* g10/misc.c (openpgp_pk_algo_usage): Take PUBKEY_USAGE_RENC in
account.
* g10/sign.c (update_keysig_packet): Set SIGNHINT_ADSK.
(make_keysig_packet): Ditto.
(do_sign): No time warp check in ADSK mode.
* g10/sig-check.c (check_signature_metadata_validity): Ditto.
* g10/keygen.c (struct opaque_data_usage_and_pk): Remove.
(write_keybinding): Do not use the removed struct.
(do_add_key_flags): Support PUBKEY_USAGE_RENC and others.
(keygen_add_key_flags_and_expire): Rewrite and make public.
* g10/keyedit.c (enum cmdids): Add cmdADDADSK.
(keyedit_menu): Add command "addadsk".
(menu_addadsk): New.
--

This makes use of a new encryption flag:

  The "restricted encryption key" (2nd,0x04) does not take part in any
  automatic selection of encryption keys.  It is only found on a
  subkey signature (type 0x18), one that refers to the key the flag
  applies to.

Followup patches will add encryption support and a --quick command.

GnuPG-bug-id: 6395
2023-03-01 17:22:20 +01:00
..
2022-12-16 11:01:23 +01:00
2018-05-29 12:42:52 +02:00
2022-03-02 21:12:28 +02:00
2020-11-11 09:13:13 +09:00
2021-11-13 21:03:02 +01:00
2022-11-09 10:37:58 +09:00
2022-11-09 10:37:58 +09:00
2015-02-04 09:15:34 +01:00
2023-02-16 18:10:03 +01:00
2015-02-04 09:15:34 +01:00
2017-03-07 20:25:54 +09:00
2022-11-25 16:04:54 +01:00
2017-03-07 20:25:54 +09:00
2022-11-25 16:04:54 +01:00
2018-10-25 16:53:05 -04:00
2020-11-11 15:23:22 +01:00
2022-11-04 15:26:15 +01:00
2022-12-09 14:06:08 +09:00
2017-03-07 20:25:54 +09:00
2020-02-18 18:07:46 -05:00
2019-07-11 12:32:44 +09:00
2023-02-16 18:10:03 +01:00
2022-11-09 10:37:58 +09:00
2019-07-23 12:04:21 +09:00
2017-03-07 20:25:54 +09:00
2021-03-24 14:51:42 +09:00
2017-01-23 19:16:55 +01:00
2021-05-20 13:38:39 +02:00
2017-02-21 13:11:46 -05:00
2017-03-07 20:32:09 +09:00
2017-03-07 20:25:54 +09:00
2019-09-09 15:01:47 +02:00
2016-03-08 14:08:49 +01:00
2022-11-25 16:04:54 +01:00
2021-05-20 13:38:39 +02:00
2016-12-06 12:16:56 +01:00
2023-02-16 18:10:03 +01:00