aboutsummaryrefslogtreecommitdiffstats
path: root/g10
diff options
context:
space:
mode:
Diffstat (limited to 'g10')
-rw-r--r--g10/gpg.c15
-rw-r--r--g10/options.h6
2 files changed, 15 insertions, 6 deletions
diff --git a/g10/gpg.c b/g10/gpg.c
index 1d0b9d09e..80cb2f38b 100644
--- a/g10/gpg.c
+++ b/g10/gpg.c
@@ -3592,9 +3592,18 @@ main (int argc, char **argv)
case oPersonalCompressPreferences:
pers_compress_list=pargs.r.ret_str;
break;
- case oAgentProgram: opt.agent_program = pargs.r.ret_str; break;
- case oKeyboxdProgram: opt.keyboxd_program = pargs.r.ret_str; break;
- case oDirmngrProgram: opt.dirmngr_program = pargs.r.ret_str; break;
+ case oAgentProgram:
+ xfree (opt.agent_program);
+ opt.agent_program = make_filename (pargs.r.ret_str, NULL);
+ break;
+ case oKeyboxdProgram:
+ xfree (opt.keyboxd_program);
+ opt.keyboxd_program = make_filename (pargs.r.ret_str, NULL);
+ break;
+ case oDirmngrProgram:
+ xfree (opt.dirmngr_program);
+ opt.dirmngr_program = make_filename (pargs.r.ret_str, NULL);
+ break;
case oDisableDirmngr: opt.disable_dirmngr = 1; break;
case oWeakDigest:
additional_weak_digest(pargs.r.ret_str);
diff --git a/g10/options.h b/g10/options.h
index 1e1110334..07516aab1 100644
--- a/g10/options.h
+++ b/g10/options.h
@@ -126,9 +126,9 @@ struct
int marginals_needed;
int completes_needed;
int max_cert_depth;
- const char *agent_program;
- const char *keyboxd_program;
- const char *dirmngr_program;
+ char *agent_program;
+ char *keyboxd_program;
+ char *dirmngr_program;
int disable_dirmngr;
const char *def_new_key_algo;