summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOndrej Zajicek (work) <santiago@crfreenet.org>2019-07-31 19:45:29 +0200
committerOndrej Zajicek (work) <santiago@crfreenet.org>2019-07-31 19:45:29 +0200
commit96e4d0960c2b1bb01dc90ebfe341af8e4284090a (patch)
tree80a2eee8b929eca43d5a63d483ae1b3a52f98176
parent8c703ecf73d7ccbd5e767858ba47a5f3ad0bc439 (diff)
Change 'graceful down' command to 'graceful restart' and update docs
The command initiating planned graceful restart including bird shutdown should be called 'graceful restart' instead of 'graceful down', as the later should be reserved for graceful shutdown in style of RFC 8326.
-rw-r--r--doc/bird.sgml16
-rw-r--r--sysdep/unix/config.Y3
2 files changed, 16 insertions, 3 deletions
diff --git a/doc/bird.sgml b/doc/bird.sgml
index e15e3dd1..83dec4f8 100644
--- a/doc/bird.sgml
+++ b/doc/bird.sgml
@@ -403,6 +403,14 @@ configured for all relevant protocols and requires protocol-specific support
(currently implemented for Kernel and BGP protocols), it is activated for
particular boot by option <cf/-R/.
+<p>Some protocols (e.g. BGP) could be restarted gracefully after both
+intentional outage and crash, while others (e.g. OSPF) after intentional outage
+only. For planned graceful restart, BIRD must be shut down by
+<ref id="cli-graceful-restart" name="graceful restart"> command instead of
+regular <ref id="cli-down" name="down"> command. In this way routing neighbors
+are notified about planned graceful restart and routes are kept in kernel table
+after shutdown.
+
<chapt>Configuration
<label id="config">
@@ -1116,6 +1124,10 @@ This argument can be omitted if there exists only a single instance.
<tag><label id="cli-down">down</tag>
Shut BIRD down.
+ <tag><label id="cli-graceful-restart">graceful restart</tag>
+ Shut BIRD down for graceful restart. See <ref id="graceful-restart"
+ name="graceful restart"> section for details.
+
<tag><label id="cli-debug">debug <m/protocol/|<m/pattern/|all all|off|{ states|routes|filters|events|packets [, <m/.../] }</tag>
Control protocol debugging.
@@ -2216,7 +2228,7 @@ using the following configuration parameters:
Define neighboring router this instance will be talking to and what AS
it is located in. In case the neighbor is in the same AS as we are, we
automatically switch to IBGP. Alternatively, it is possible to specify
- just <cf/internal/ or </cf/external/ instead of AS number, in that case
+ just <cf/internal/ or <cf/external/ instead of AS number, in that case
either local AS number, or any external AS number is accepted.
Optionally, the remote port may also be specified. Like <cf/local/
parameter, this parameter may also be used multiple times with different
@@ -2266,7 +2278,7 @@ using the following configuration parameters:
dynamic BGP behavior is active. Actual names also contain numeric
index to distinguish individual instances. Default: "dynbgp".
- <tag><label id="bgp-dynamic-name">dynamic name digits <m/number/</tag>
+ <tag><label id="bgp-dynamic-name-digits">dynamic name digits <m/number/</tag>
Define minimum number of digits for index in names of spawned dynamic
BGP instances. E.g., if set to 2, then the first name would be
"dynbgp01". Default: 0.
diff --git a/sysdep/unix/config.Y b/sysdep/unix/config.Y
index b78e0e6c..c76eb73b 100644
--- a/sysdep/unix/config.Y
+++ b/sysdep/unix/config.Y
@@ -19,6 +19,7 @@ CF_DECLS
CF_KEYWORDS(LOG, SYSLOG, ALL, DEBUG, TRACE, INFO, REMOTE, WARNING, ERROR, AUTH, FATAL, BUG, STDERR, SOFT)
CF_KEYWORDS(NAME, CONFIRM, UNDO, CHECK, TIMEOUT, DEBUG, LATENCY, LIMIT, WATCHDOG, WARNING, STATUS)
+CF_KEYWORDS(GRACEFUL, RESTART)
%type <i> log_mask log_mask_list log_cat cfg_timeout
%type <t> cfg_name
@@ -133,7 +134,7 @@ CF_CLI(CONFIGURE CHECK, cfg_name, [\"<file>\"], [[Parse configuration and check
CF_CLI(DOWN,,, [[Shut the daemon down]])
{ cmd_shutdown(); } ;
-CF_CLI(GRACEFUL DOWN,,, [[Shut the daemon down for graceful restart]])
+CF_CLI(GRACEFUL RESTART,,, [[Shut the daemon down for graceful restart]])
{ cmd_graceful_restart(); } ;