Commit 259e7e0f authored by Pavel Tvrdík's avatar Pavel Tvrdík
Browse files

Merge branch 'master' into birdtest

parents a22d3625 deec752e
Loading
Loading
Loading
Loading
+29 −3
Original line number Diff line number Diff line
Version 1.5.0pre (2014-11-05) - Not for production
  o Major OSPF protocol redesign
  o RFC 6549 - OSPFv2 multi-instance extension
Version 1.5.0 (2015-04-20)
  o Major OSPF protocol redesign.
  o OSPFv2 multi-instance extension (RFC 6549).
  o BGP AS-wide unique router ID (RFC 6286).
  o BGP enhanced route refresh (RFC 7313).
  o Link state support in BGP.
  o Latency tracking and internal watchdog.
  o Uses high port range for BFD on BSD.
  o Increase max symbol length to 64.
  o Allows to define unnamed protocols from templates.
  o Fixes two serious bugs in BGP.
  o Several bugfixes and minor improvements.
  o Several minor option changes:
     - OSPF: Protocol-wide 'instance id' option added.
     - BGP: Parameters to option 'neighbor' extended.
     - BGP: Separate option 'interface' added.
     - BGP: Option 'start delay time' renamed to 'connect delay time'.
     - BGP: Option 'route limit' deprecated.

  Upgrade notes:

  For OSPF, there are deep internal changes, but user-visible changes
  are limited to log messages and minor changes in formatting of command
  output.

  For BGP, version 1.5.0 is essentially a minor release. There are two
  deprecated options ('start delay time' and 'route limit') and some
  minor formatting changes.


Version 1.4.5 (2014-10-06)
  o New 'show route noexport' command option.
+4 −0
Original line number Diff line number Diff line
@@ -41,6 +41,10 @@ struct config {
  u32 gr_wait;				/* Graceful restart wait timeout */

  int cli_debug;			/* Tracing of CLI connections and commands */
  int latency_debug;			/* I/O loop tracks duration of each event */
  u32 latency_limit;			/* Events with longer duration are logged (us) */
  u32 watchdog_warning;			/* I/O loop watchdog limit for warning (us) */
  u32 watchdog_timeout;			/* Watchdog timeout (in seconds, 0 = disabled) */
  char *err_msg;			/* Parser error message */
  int err_lino;				/* Line containing error */
  char *err_file_name;			/* File name containing error */
+7 −3
Original line number Diff line number Diff line
@@ -33,6 +33,10 @@
# Turn on global debugging of all protocols
#debug protocols all;

# Turn on internal watchdog
#watchdog warning 5 s;
#watchdog timeout 30 s;

# The direct protocol automatically generates device routes to
# all network interfaces. Can exist in as many instances as you wish
# if you want to populate multiple routing tables with device routes.
+28 −7
Original line number Diff line number Diff line
@@ -344,6 +344,23 @@ protocol rip {
	of connects and disconnects, 2 and higher for logging of all client
	commands). Default: 0.

	<tag>debug latency <m/switch/</tag>
	Activate tracking of elapsed time for internal events. Recent events
	could be examined using <cf/dump events/ command. Default: off.

	<tag>debug latency limit <m/time/</tag>
	If <cf/debug latency/ is enabled, this option allows to specify a limit
	for elapsed time. Events exceeding the limit are logged. Default: 1 s.

	<tag>watchdog warning <m/time/</tag>
	Set time limit for I/O loop cycle. If one iteration took more time to
	complete, a warning is logged. Default: 5 s.

	<tag>watchdog timeout <m/time/</tag>
	Set time limit for I/O loop cycle. If the limit is breached, BIRD is
	killed by abort signal. The timeout has effective granularity of
	seconds, zero means disabled. Default: disabled (0).

	<tag>mrtdump "<m/filename/"</tag>
	Set MRTdump file name. This option must be specified to allow MRTdump
	feature. Default: no dump file.
@@ -1787,13 +1804,17 @@ using the following configuration parameters:
	other means. Default: 0 (no local AS number allowed).

	<tag>enable route refresh <m/switch/</tag>
	When BGP speaker changes its import filter, it has to re-examine all
	routes received from its neighbor against the new filter. As these
	routes might not be available, there is a BGP protocol extension Route
	Refresh (specified in RFC 2918) that allows BGP speaker to request
	re-advertisement of all routes from its neighbor. This option specifies
	whether BIRD advertises this capability and accepts such requests. Even
	when disabled, BIRD can send route refresh requests. Default: on.
	After the initial route exchange, BGP protocol uses incremental updates
	to keep BGP speakers synchronized. Sometimes (e.g., if BGP speaker
	changes its import filter, or if there is suspicion of inconsistency) it
	is necessary to do a new complete route exchange. BGP protocol extension
	Route Refresh (RFC 2918) allows BGP speaker to request re-advertisement
	of all routes from its neighbor. BGP protocol extension Enhanced Route
	Refresh (RFC 7313) specifies explicit begin and end for such exchanges,
	therefore the receiver can remove stale routes that were not advertised
	during the exchange. This option specifies whether BIRD advertises these
	capabilities and supports related procedures. Note that even when
	disabled, BIRD can send route refresh requests. Default: on.

	<tag>graceful restart <m/switch/|aware</tag>
	When a BGP speaker restarts or crashes, neighbors will discard all
+7 −0
Original line number Diff line number Diff line
@@ -114,6 +114,8 @@ ev_schedule(event *e)
  ev_enqueue(&global_event_list, e);
}

void io_log_event(void *hook, void *data);

/**
 * ev_run_list - run an event list
 * @l: an event list
@@ -132,6 +134,11 @@ ev_run_list(event_list *l)
  WALK_LIST_FIRST(n, tmp_list)
    {
      event *e = SKIP_BACK(event, n, n);

      /* This is ugly hack, we want to log just events executed from the main I/O loop */
      if (l == &global_event_list)
	io_log_event(e->hook, e->data);

      ev_run(e);
    }
  return !EMPTY_LIST(*l);
Loading