>From 6fb0e482a932ef77683a54cbf19681b22fe31d34 Mon Sep 17 00:00:00 2001 From: Dan Kenigsberg Date: Sun, 27 Apr 2008 13:49:47 +0300 Subject: [PATCH] specify startdate offset from the command line --- vl.c | 16 ++++++++++++++-- 1 files changed, 14 insertions(+), 2 deletions(-) diff --git a/vl.c b/vl.c index 7f22152..34d8e68 100644 --- a/vl.c +++ b/vl.c @@ -8777,7 +8777,19 @@ int main(int argc, char **argv) { struct tm tm; time_t rtc_start_date; - if (!strcmp(optarg, "now")) { + char sign; + if (sscanf(optarg, "now%c%lu", + &sign, &rtc_date_offset) == 2) { + switch (sign) { + case '+': + rtc_date_offset = -rtc_date_offset; + break; + case '-': + break; + default: + goto date_fail; + } + } else if (!strcmp(optarg, "now")) { rtc_date_offset = 0; } else { if (sscanf(optarg, "%d-%d-%dT%d:%d:%d", @@ -8807,7 +8819,7 @@ int main(int argc, char **argv) if (rtc_start_date == -1) { date_fail: fprintf(stderr, "Invalid date format. Valid format are:\n" - "'now' or '2006-06-17T16:01:21' or '2006-06-17'\n"); + "'now' or 'now{+-}offset' or '2006-06-17T16:01:21' or '2006-06-17'\n"); exit(1); } rtc_date_offset = time(NULL) - rtc_start_date; -- 1.5.4.5