aboutsummaryrefslogtreecommitdiffstats
path: root/g10
diff options
context:
space:
mode:
Diffstat (limited to 'g10')
-rw-r--r--g10/ChangeLog4
-rw-r--r--g10/gpg.c22
-rw-r--r--g10/server.c4
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.
diff --git a/g10/gpg.c b/g10/gpg.c
index 5ef4f4c99..cce9f6e90 100644
--- a/g10/gpg.c
+++ b/g10/gpg.c
@@ -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 },