diff options
Diffstat (limited to 'g10')
-rw-r--r-- | g10/ChangeLog | 4 | ||||
-rw-r--r-- | g10/gpg.c | 22 | ||||
-rw-r--r-- | g10/server.c | 4 |
3 files changed, 28 insertions, 2 deletions
diff --git a/g10/ChangeLog b/g10/ChangeLog index a19ee313e..e0db8d0c2 100644 --- a/g10/ChangeLog +++ b/g10/ChangeLog @@ -1,3 +1,7 @@ +2009-12-17 Werner Koch <[email protected]> + + * gpg.c: Add new option --faked-system-time. + 2009-12-15 Werner Koch <[email protected]> * keydb.c (keydb_add_resource): s/readonly/read_only/g. @@ -362,6 +362,7 @@ enum cmd_and_opt_values oDisableDSA2, oAllowMultipleMessages, oNoAllowMultipleMessages, + oFakedSystemTime, oNoop }; @@ -704,6 +705,7 @@ static ARGPARSE_OPTS opts[] = { ARGPARSE_s_s (oPersonalDigestPreferences, "personal-digest-preferences","@"), ARGPARSE_s_s (oPersonalCompressPreferences, "personal-compress-preferences", "@"), + ARGPARSE_s_s (oFakedSystemTime, "faked-system-time", "@"), /* Aliases. I constantly mistype these, and assume other people do as well. */ @@ -2963,6 +2965,15 @@ main (int argc, char **argv) opt.flags.allow_multiple_messages=0; break; + case oFakedSystemTime: + { + time_t faked_time = isotime2epoch (pargs.r.ret_str); + if (faked_time == (time_t)(-1)) + faked_time = (time_t)strtoul (pargs.r.ret_str, NULL, 10); + gnupg_set_time (faked_time, 0); + } + break; + case oNoop: break; default: @@ -3069,6 +3080,17 @@ main (int argc, char **argv) if( opt.batch ) tty_batchmode( 1 ); + if (gnupg_faked_time_p ()) + { + gnupg_isotime_t tbuf; + + log_info (_("WARNING: running with faked system time: ")); + gnupg_get_isotime (tbuf); + dump_isotime (tbuf); + log_printf ("\n"); + } + + gcry_control (GCRYCTL_RESUME_SECMEM_WARN); if(require_secmem && !got_secmem) diff --git a/g10/server.c b/g10/server.c index d817f7f6c..37acceebf 100644 --- a/g10/server.c +++ b/g10/server.c @@ -608,7 +608,7 @@ static const char hlp_passwd[] = static gpg_error_t cmd_passwd (assuan_context_t ctx, char *line) { - ctrl_t ctrl = assuan_get_pointer (ctx); + /* ctrl_t ctrl = assuan_get_pointer (ctx); */ gpg_error_t err; line = skip_options (line); @@ -629,7 +629,7 @@ register_commands (assuan_context_t ctx) { const char *name; assuan_handler_t handler; - assuan_handler_t help; + const char * const help; } table[] = { { "RECIPIENT", cmd_recipient }, { "SIGNER", cmd_signer }, |