diff options
author | Ondrej Zajicek (work) <santiago@crfreenet.org> | 2017-06-06 16:47:30 +0200 |
---|---|---|
committer | Ondrej Zajicek (work) <santiago@crfreenet.org> | 2017-12-07 13:49:27 +0100 |
commit | f047271cb963c62663687d63b2f7cf8dd5edfbb7 (patch) | |
tree | cec19ec5f00167aabc3a5233cef5bc6c5e384526 /conf | |
parent | 025525266f6861437ca54aca2a86eb505a486baf (diff) |
Timers: Parse and format functions for microsecond times
Date/time output (e.g. in logs, show commands) can use %f to specify
subsecond time. By default, millisecond precision is used in output.
Diffstat (limited to 'conf')
-rw-r--r-- | conf/conf.c | 6 | ||||
-rw-r--r-- | conf/conf.h | 2 | ||||
-rw-r--r-- | conf/confbase.Y | 12 |
3 files changed, 10 insertions, 10 deletions
diff --git a/conf/conf.c b/conf/conf.c index c4933122..a570fad5 100644 --- a/conf/conf.c +++ b/conf/conf.c @@ -102,9 +102,9 @@ config_alloc(const char *name) c->pool = p; c->mem = l; c->file_name = ndup; - c->load_time = now; - c->tf_route = c->tf_proto = (struct timeformat){"%T", "%F", 20*3600}; - c->tf_base = c->tf_log = (struct timeformat){"%F %T", NULL, 0}; + c->load_time = current_time(); + c->tf_route = c->tf_proto = TM_ISO_SHORT_MS; + c->tf_base = c->tf_log = TM_ISO_LONG_MS; c->gr_wait = DEFAULT_GR_WAIT; return c; diff --git a/conf/conf.h b/conf/conf.h index af92f056..552d0120 100644 --- a/conf/conf.h +++ b/conf/conf.h @@ -57,7 +57,7 @@ struct config { struct config *fallback; /* Link to regular config for CLI parsing */ int obstacle_count; /* Number of items blocking freeing of this config */ int shutdown; /* This is a pseudo-config for daemon shutdown */ - bird_clock_t load_time; /* When we've got this configuration */ + btime load_time; /* When we've got this configuration */ }; /* Please don't use these variables in protocols. Use proto_config->global instead. */ diff --git a/conf/confbase.Y b/conf/confbase.Y index 901ca2b2..390041c4 100644 --- a/conf/confbase.Y +++ b/conf/confbase.Y @@ -14,7 +14,7 @@ CF_HDR #include "conf/conf.h" #include "lib/resource.h" #include "lib/socket.h" -#include "sysdep/unix/timer.h" +#include "lib/timer.h" #include "lib/string.h" #include "nest/protocol.h" #include "nest/iface.h" @@ -60,7 +60,7 @@ CF_DECLS struct lsadb_show_data *ld; struct iface *iface; void *g; - bird_clock_t time; + btime time; struct f_prefix px; struct proto_spec ps; struct channel_limit cl; @@ -81,7 +81,7 @@ CF_DECLS %type <i> expr bool pxlen4 %type <i32> expr_us -%type <time> datetime +%type <time> time %type <a> ipa %type <net> net_ip4_ net_ip6_ net_ip6 net_ip_ net_ip net_or_ipa %type <net_ptr> net_ net_any net_vpn4_ net_vpn6_ net_vpn_ net_roa4_ net_roa6_ net_roa_ @@ -308,11 +308,11 @@ label_stack: } ; -datetime: +time: TEXT { - $$ = tm_parse_datetime($1); + $$ = tm_parse_time($1); if (!$$) - cf_error("Invalid date and time"); + cf_error("Invalid date/time"); } ; |