1
0
Fork 0
mirror of git://git.gnupg.org/gnupg.git synced 2025-07-03 22:56:33 +02:00

gpg: New option --default-new-key-adsk and "addadsk" for edit-key.

* g10/free-packet.c (copy_public_key): Factor some code out to ...
(copy_public_key_basics): new.
* keygen.c (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.

* g10/options.h (opt): Add field def_new_key_adsks.
* g10/gpg.c (oDefaultNewKeyADSK): New.
(opts): Add --default-new-key-adsk.
(main): Parse option.
* g10/keyedit.c (menu_addadsk): Factor some code out to ...
(append_adsk_to_key): new.  Add compliance check.
* g10/keygen.c (pADSK): New.
(para_data_s): Add adsk to the union.
(release_parameter_list): Free the adsk.
(prepare_adsk): New.
(get_parameter_adsk): New.
(get_parameter_revkey): Remove unneeded arg key and change callers.
(proc_parameter_file): Prepare adsk parameter from the configured
fingerprints.
(do_generate_keypair): Create adsk.
--

GnuPG-bug-id: 6882
(cherry picked from commit ed118e2ed5)
and modified to adjust to other code changes
This commit is contained in:
Werner Koch 2024-09-26 10:37:32 +02:00
parent 7eb39815bd
commit eafe175320
No known key found for this signature in database
GPG key ID: E3FDFF218E45B72B
12 changed files with 495 additions and 55 deletions

View file

@ -1729,13 +1729,26 @@ this option at all (e.g. due to the @option{--no-options} option).
@opindex add-desig-revoker
Add the key specified by @var{fingerprint} as a designated revoker to
newly created keys. If the fingerprint is prefixed with the keyword
``sensitive:'' that info is normally not exported wit the key. This
option may be given several time to add more than one designated
``sensitive:'' that info is normally not exported with the key. This
option may be given several times to add more than one designated
revoker. If the keyword ``clear'' is used instead of a fingerprint,
all designated options previously encountered are discarded.
Designated revokers are marked on the key as non-revocable. Note that
a designated revoker specified using a parameter file will also be
added to the key.
all previously given fingerprints are discarded. Designated revokers
are marked on the key as non-revocable. Note that a designated
revoker specified using a parameter file will also be added to the
key.
@item --default-new-key-adsk @var{fingerprint}
@opindex default-new-key-adsk
Add the subkey specified by @var{fingerprint} as an Additional
Decryption Subkey (ADSK) to newly created keys. This option may be
given several time to add more than one ADSK. It is also possible to
give several fingerprints delimited by space or comma as value to this
option. If the keyword ``clear'' is used instead of a fingerprint,
all previously specified fingerprints are discarded (useful to
override options given in a config file). The fingerprint is expected
to specify a subkey and it does not need an exclamation mark as
suffix; it must be given in cmpact format (40 or 64 hex-digits without
any spaces).
@item --trust-model @{pgp|classic|tofu|tofu+pgp|direct|always|auto@}