summaryrefslogtreecommitdiffstats
path: root/sysdep/unix/config.Y
diff options
context:
space:
mode:
authorOndrej Zajicek <santiago@crfreenet.org>2009-06-19 23:49:34 +0200
committerOndrej Zajicek <santiago@crfreenet.org>2009-06-19 23:49:34 +0200
commitbf1aec970e9ac0600266fe7a045847a62f18ac3b (patch)
tree4b6a27829ddded655066f135a8e23da598e1d59a /sysdep/unix/config.Y
parent789772ed4586213d6a7fbb867b9296a01ce1b9c0 (diff)
downloadbird-bf1aec970e9ac0600266fe7a045847a62f18ac3b.tar
bird-bf1aec970e9ac0600266fe7a045847a62f18ac3b.zip
Adds support for soft reconfiguration.
Diffstat (limited to 'sysdep/unix/config.Y')
-rw-r--r--sysdep/unix/config.Y9
1 files changed, 7 insertions, 2 deletions
diff --git a/sysdep/unix/config.Y b/sysdep/unix/config.Y
index 5176be6..1917fe6 100644
--- a/sysdep/unix/config.Y
+++ b/sysdep/unix/config.Y
@@ -13,7 +13,7 @@ CF_HDR
CF_DECLS
-CF_KEYWORDS(LOG, SYSLOG, ALL, DEBUG, TRACE, INFO, REMOTE, WARNING, ERROR, AUTH, FATAL, BUG, STDERR)
+CF_KEYWORDS(LOG, SYSLOG, ALL, DEBUG, TRACE, INFO, REMOTE, WARNING, ERROR, AUTH, FATAL, BUG, STDERR, SOFT)
%type <i> log_mask log_mask_list log_cat
%type <g> log_file
@@ -65,8 +65,13 @@ log_cat:
/* Unix specific commands */
+CF_CLI_HELP(CONFIGURE, [soft] [\"<file>\"], [[Reload configuration]])
+
CF_CLI(CONFIGURE, cfg_name, [\"<file>\"], [[Reload configuration]])
-{ cmd_reconfig($2); } ;
+{ cmd_reconfig($2, RECONFIG_HARD); } ;
+
+CF_CLI(CONFIGURE SOFT, cfg_name, [\"<file>\"], [[Reload configuration and ignore changes in filters]])
+{ cmd_reconfig($3, RECONFIG_SOFT); } ;
CF_CLI(DOWN,,, [[Shut the daemon down]])
{ cli_msg(7, "Shutdown requested"); order_shutdown(); } ;