diff options
author | Werner Koch <wk@gnupg.org> | 2014-12-19 13:28:14 +0100 |
---|---|---|
committer | Werner Koch <wk@gnupg.org> | 2014-12-19 13:28:14 +0100 |
commit | 76140141699b545f7a988bf5fc101063917e8ce3 (patch) | |
tree | 34bec31a621422ab4d70459829a33b07fcb3f081 | |
parent | agent: Keep the session environment for restricted connections. (diff) | |
download | gnupg2-76140141699b545f7a988bf5fc101063917e8ce3.tar.xz gnupg2-76140141699b545f7a988bf5fc101063917e8ce3.zip |
agent: Make sure --max-cache-ttl is >= --default-cache-ttl.
* agent/gpg-agent.c (finalize_rereadable_options): New.
(main, reread_configuration): Call it.
--
This change should help to avoid surprising behaviour.
Signed-off-by: Werner Koch <wk@gnupg.org>
-rw-r--r-- | NEWS | 4 | ||||
-rw-r--r-- | agent/gpg-agent.c | 17 |
2 files changed, 21 insertions, 0 deletions
@@ -1,6 +1,10 @@ Noteworthy changes in version 2.1.2 (unreleased) ------------------------------------------------ + * agent: When setting --default-cache-ttl the value for + --max-cache-ttl is adjusted to be not lower than the former. + + Noteworthy changes in version 2.1.1 (2014-12-16) ------------------------------------------------ diff --git a/agent/gpg-agent.c b/agent/gpg-agent.c index b053fc59f..918c72b62 100644 --- a/agent/gpg-agent.c +++ b/agent/gpg-agent.c @@ -628,6 +628,20 @@ parse_rereadable_options (ARGPARSE_ARGS *pargs, int reread) } +/* Fixup some options after all have been processed. */ +static void +finalize_rereadable_options (void) +{ + /* It would be too surprising if the max-cache-ttl is lower than the + default-cache-ttl - thus we silently correct that. */ + if (opt.def_cache_ttl > opt.max_cache_ttl) + opt.max_cache_ttl = opt.def_cache_ttl; + if (opt.def_cache_ttl_ssh > opt.max_cache_ttl_ssh) + opt.max_cache_ttl_ssh = opt.def_cache_ttl_ssh; +} + + + /* The main entry point. */ int main (int argc, char **argv ) @@ -916,6 +930,8 @@ main (int argc, char **argv ) if (log_get_errorcount(0)) exit(2); + finalize_rereadable_options (); + /* Turn the homedir into an absolute one. */ opt.homedir = make_absfilename (opt.homedir, NULL); @@ -1461,6 +1477,7 @@ reread_configuration (void) parse_rereadable_options (&pargs, 1); } fclose (fp); + finalize_rereadable_options (); set_debug (); } |