diff options
author | Werner Koch <[email protected]> | 2013-05-21 11:10:00 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2013-05-22 07:56:05 +0000 |
commit | f2d8a14e1b12534eba69d595a62c78f92331e11b (patch) | |
tree | 1c955d8bc17426f4e058b709805a439ed5f2bdea /agent/gpg-agent.c | |
parent | w32: Add icons and version information. (diff) | |
download | gnupg-f2d8a14e1b12534eba69d595a62c78f92331e11b.tar.gz gnupg-f2d8a14e1b12534eba69d595a62c78f92331e11b.zip |
agent: New option --disable-check-own-socket.
* agent/gpg-agent.c (oDisableCheckOwnSocket): New.
(disable_check_own_socket): New.
(parse_rereadable_options): Set new option.
(check_own_socket): Implement new option.
Signed-off-by: Werner Koch <[email protected]>
Diffstat (limited to 'agent/gpg-agent.c')
-rw-r--r-- | agent/gpg-agent.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/agent/gpg-agent.c b/agent/gpg-agent.c index 469011493..ff129f980 100644 --- a/agent/gpg-agent.c +++ b/agent/gpg-agent.c @@ -112,6 +112,7 @@ enum cmd_and_opt_values oKeepDISPLAY, oSSHSupport, oDisableScdaemon, + oDisableCheckOwnSocket, oWriteEnvFile }; @@ -148,6 +149,7 @@ static ARGPARSE_OPTS opts[] = { { oScdaemonProgram, "scdaemon-program", 2 , N_("|PGM|use PGM as the SCdaemon program") }, { oDisableScdaemon, "disable-scdaemon", 0, N_("do not use the SCdaemon") }, + { oDisableCheckOwnSocket, "disable-check-own-socket", 0, "@" }, { oFakedSystemTime, "faked-system-time", 2, "@" }, /* (epoch time) */ { oBatch, "batch", 0, "@" }, @@ -232,6 +234,9 @@ static int shutdown_pending; /* Counter for the currently running own socket checks. */ static int check_own_socket_running; +/* Flags to indicate that check_own_socket shall not be called. */ +static int disable_check_own_socket; + /* It is possible that we are currently running under setuid permissions */ static int maybe_setuid = 1; @@ -491,6 +496,7 @@ parse_rereadable_options (ARGPARSE_ARGS *pargs, int reread) opt.ignore_cache_for_signing = 0; opt.allow_mark_trusted = 0; opt.disable_scdaemon = 0; + disable_check_own_socket = 0; return 1; } @@ -521,6 +527,7 @@ parse_rereadable_options (ARGPARSE_ARGS *pargs, int reread) case oPinentryTouchFile: opt.pinentry_touch_file = pargs->r.ret_str; break; case oScdaemonProgram: opt.scdaemon_program = pargs->r.ret_str; break; case oDisableScdaemon: opt.disable_scdaemon = 1; break; + case oDisableCheckOwnSocket: disable_check_own_socket = 1; break; case oDefCacheTTL: opt.def_cache_ttl = pargs->r.ret_ulong; break; case oDefCacheTTLSSH: opt.def_cache_ttl_ssh = pargs->r.ret_ulong; break; @@ -2174,6 +2181,9 @@ check_own_socket (void) npth_attr_t tattr; int err; + if (disable_check_own_socket) + return; + if (!opt.use_standard_socket) return; /* This check makes only sense in standard socket mode. */ |