diff options
Diffstat (limited to 'conf')
-rw-r--r-- | conf/conf.c | 5 | ||||
-rw-r--r-- | conf/conf.h | 3 |
2 files changed, 8 insertions, 0 deletions
diff --git a/conf/conf.c b/conf/conf.c index 21413e50..a4e03635 100644 --- a/conf/conf.c +++ b/conf/conf.c @@ -18,6 +18,7 @@ #include "lib/resource.h" #include "lib/string.h" #include "lib/event.h" +#include "lib/timer.h" #include "conf/conf.h" #include "filter/filter.h" @@ -26,6 +27,7 @@ static jmp_buf conf_jmpbuf; struct config *config, *new_config, *old_config, *future_config; static event *config_event; int shutting_down; +bird_clock_t boot_time; struct config * config_alloc(byte *name) @@ -37,6 +39,9 @@ config_alloc(byte *name) c->pool = p; cfg_mem = c->mem = l; c->file_name = cfg_strdup(name); + c->load_time = now; + if (!boot_time) + boot_time = now; return c; } diff --git a/conf/conf.h b/conf/conf.h index 78ab04a9..5abca7da 100644 --- a/conf/conf.h +++ b/conf/conf.h @@ -10,6 +10,7 @@ #define _BIRD_CONF_H_ #include "lib/resource.h" +#include "lib/timer.h" /* Configuration structure */ @@ -29,6 +30,7 @@ struct config { struct symbol **sym_fallback; /* Lexer: fallback symbol hash table */ 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 */ }; /* Please don't use these variables in protocols. Use proto_config->global instead. */ @@ -38,6 +40,7 @@ extern struct config *old_config; /* Old configuration when reconfiguration is i extern struct config *future_config; /* New config held here if recon requested during recon */ extern int shutting_down; +extern bird_clock_t boot_time; struct config *config_alloc(byte *name); int config_parse(struct config *); |