aboutsummaryrefslogtreecommitdiffstats
path: root/sm/gpgsm.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2025-01-29 17:06:15 +0000
committerWerner Koch <[email protected]>2025-01-29 17:06:15 +0000
commit159e801043de479d9899fccb07a79fbbcc76e751 (patch)
treecc86421520a3efe5d37925aee1682ea5bfd33aa8 /sm/gpgsm.c
parentgpgsm: Allow CSR generation with an unprotected key. (diff)
downloadgnupg-159e801043de479d9899fccb07a79fbbcc76e751.tar.gz
gnupg-159e801043de479d9899fccb07a79fbbcc76e751.zip
gpgsm: Allow unattended PKCS#12 export without passphrase.
* sm/gpgsm.c (oNoProtection): New. (opts): Add "--no-protection". (main): PArse it. * sm/gpgsm.h (struct server_control_s): Add field no_protection. * sm/server.c (option_handler): Add option "no-protection". (reset_notify): Clear option. * sm/export.c (export_p12): Use empty passphrase if option is set.
Diffstat (limited to 'sm/gpgsm.c')
-rw-r--r--sm/gpgsm.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sm/gpgsm.c b/sm/gpgsm.c
index bea0184e3..b60f0bb46 100644
--- a/sm/gpgsm.c
+++ b/sm/gpgsm.c
@@ -135,6 +135,7 @@ enum cmd_and_opt_values {
oPassphraseFD,
oPinentryMode,
+ oNoProtection,
oRequestOrigin,
oAssumeArmor,
@@ -436,6 +437,7 @@ static gpgrt_opt_t opts[] = {
ARGPARSE_s_n (oDisableFdTranslation, "disable-fd-translation", "@"),
ARGPARSE_s_i (oPassphraseFD, "passphrase-fd", "@"),
ARGPARSE_s_s (oPinentryMode, "pinentry-mode", "@"),
+ ARGPARSE_s_n (oNoProtection, "no-protection", "@"),
ARGPARSE_header (NULL, N_("Other options")),
@@ -1178,6 +1180,10 @@ main ( int argc, char **argv)
log_error (_("invalid pinentry mode '%s'\n"), pargs.r.ret_str);
break;
+ case oNoProtection:
+ ctrl.no_protection = 1;
+ break;
+
case oRequestOrigin:
opt.request_origin = parse_request_origin (pargs.r.ret_str);
if (opt.request_origin == -1)