diff options
Diffstat (limited to 'lib/lib_vty.c')
| -rw-r--r-- | lib/lib_vty.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/lib_vty.c b/lib/lib_vty.c index 7a8f85b2c9..8207aa20e6 100644 --- a/lib/lib_vty.c +++ b/lib/lib_vty.c @@ -213,15 +213,20 @@ DEFUN (frr_version, } static struct call_back { + time_t readin_time; + void (*start_config)(void); void (*end_config)(void); } callback; + DEFUN_HIDDEN (start_config, start_config_cmd, "start_configuration", "The Beginning of Configuration\n") { + callback.readin_time = monotime(NULL); + if (callback.start_config) (*callback.start_config)(); @@ -233,6 +238,17 @@ DEFUN_HIDDEN (end_config, "end_configuration", "The End of Configuration\n") { + time_t readin_time; + char readin_time_str[MONOTIME_STRLEN]; + + readin_time = monotime(NULL); + readin_time -= callback.readin_time; + + frrtime_to_interval(readin_time, readin_time_str, + sizeof(readin_time_str)); + + zlog_info("Configuration Read in Took: %s", readin_time_str); + if (callback.end_config) (*callback.end_config)(); |
