mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-02 22:46:30 +02:00
gpg: New command --quick-addkey.
* g10/keygen.c (DEFAULT_STD_SUBKEYUSE): New. (ask_keysize): Factor code out to ... (get_keysize_range, fixup_keysize): new. (parse_parameter_usage): Factor parsing out to ... (parse_usagestr): new. Allow use of "encr" as alias for "encrypt". (parse_subkey_algostr_usagestr): New. (generate_subkeypair): Add new args. Implement unattended mode. * g10/keyedit.c (keyedit_quick_sign): Factor some code out to ... (find_by_primary_fpr): new. (keyedit_quick_addkey): New. * g10/gpg.c (aQuickAddKey): New. (opts): Add --quick-addkey. (main): Implement. Signed-off-by: Werner Koch <wk@gnupg.org>
This commit is contained in:
parent
d837f6b0ea
commit
8f2a053a0f
5 changed files with 512 additions and 155 deletions
28
g10/gpg.c
28
g10/gpg.c
|
@ -117,6 +117,7 @@ enum cmd_and_opt_values
|
|||
aQuickSignKey,
|
||||
aQuickLSignKey,
|
||||
aQuickAddUid,
|
||||
aQuickAddKey,
|
||||
aListConfig,
|
||||
aListGcryptConfig,
|
||||
aGPGConfList,
|
||||
|
@ -426,6 +427,7 @@ static ARGPARSE_OPTS opts[] = {
|
|||
N_("quickly generate a new key pair")),
|
||||
ARGPARSE_c (aQuickAddUid, "quick-adduid",
|
||||
N_("quickly add a new user-id")),
|
||||
ARGPARSE_c (aQuickAddKey, "quick-addkey", "@"),
|
||||
ARGPARSE_c (aFullKeygen, "full-gen-key" ,
|
||||
N_("full featured key pair generation")),
|
||||
ARGPARSE_c (aGenRevoke, "gen-revoke",N_("generate a revocation certificate")),
|
||||
|
@ -2433,6 +2435,7 @@ main (int argc, char **argv)
|
|||
case aStore:
|
||||
case aQuickKeygen:
|
||||
case aQuickAddUid:
|
||||
case aQuickAddKey:
|
||||
case aExportOwnerTrust:
|
||||
case aImportOwnerTrust:
|
||||
case aRebuildKeydbCaches:
|
||||
|
@ -3775,6 +3778,7 @@ main (int argc, char **argv)
|
|||
case aDeleteSecretAndPublicKeys:
|
||||
case aQuickKeygen:
|
||||
case aQuickAddUid:
|
||||
case aQuickAddKey:
|
||||
case aFullKeygen:
|
||||
case aKeygen:
|
||||
case aImport:
|
||||
|
@ -4148,6 +4152,30 @@ main (int argc, char **argv)
|
|||
}
|
||||
break;
|
||||
|
||||
case aQuickAddKey:
|
||||
{
|
||||
const char *x_fpr, *x_algo, *x_usage, *x_expire;
|
||||
|
||||
if (argc < 1 || argc > 4)
|
||||
wrong_args ("--quick-addkey FINGERPRINT [ALGO [USAGE [EXPIRE]]]");
|
||||
x_fpr = *argv++; argc--;
|
||||
x_algo = "";
|
||||
x_usage = "";
|
||||
x_expire = "";
|
||||
if (argc)
|
||||
{
|
||||
x_algo = *argv++; argc--;
|
||||
if (argc)
|
||||
{
|
||||
x_usage = *argv++; argc--;
|
||||
if (argc)
|
||||
x_expire = *argv++; argc--;
|
||||
}
|
||||
}
|
||||
keyedit_quick_addkey (ctrl, x_fpr, x_algo, x_usage, x_expire);
|
||||
}
|
||||
break;
|
||||
|
||||
case aFastImport:
|
||||
opt.import_options |= IMPORT_FAST;
|
||||
case aImport:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue