Commit 78342404 authored by Ondrej Zajicek's avatar Ondrej Zajicek
Browse files

Merge remote-tracking branch 'origin/master' into soft-int

parents 178a197a cfdea7b8
Loading
Loading
Loading
Loading
+15 −1
Original line number Diff line number Diff line
Version 1.4.5 (2014-10-06)
  o New 'show route noexport' command option.
  o Port option for BGP sessions.
  o Better constant handling in set literals.
  o Better rate filtering of log messages.
  o Several minor bugfixes.

Version 1.4.4 (2014-07-09)
  o Extended OSPF multipath support.
  o Default router preference for RAdv.
  o Significant changes in socket layer.
  o Important bugfix in BGP.
  o Several minor bugfixes.

Version 1.4.3 (2014-04-14)
  o Important bugfix in IPv6 BGP.

+1 −1
Original line number Diff line number Diff line
@@ -646,7 +646,7 @@ cf_walk_symbols(struct config *cf, struct symbol *sym, int *pos)
char *
cf_symbol_class_name(struct symbol *sym)
{
  if ((sym->class & 0xff00) == SYM_CONSTANT)
  if (cf_symbol_is_constant(sym))
    return "constant";

  switch (sym->class)
+4 −0
Original line number Diff line number Diff line
@@ -149,6 +149,10 @@ void cf_pop_scope(void);
struct symbol *cf_walk_symbols(struct config *cf, struct symbol *sym, int *pos);
char *cf_symbol_class_name(struct symbol *sym);

static inline int cf_symbol_is_constant(struct symbol *sym)
{ return (sym->class & 0xff00) == SYM_CONSTANT; }


/* Parser */

int cf_parse(void);
+10 −2
Original line number Diff line number Diff line
@@ -72,7 +72,7 @@ CF_DECLS
%token <t> TEXT
%type <iface> ipa_scope

%type <i> expr bool pxlen
%type <i> expr bool pxlen ipa_port
%type <i32> expr_us
%type <time> datetime
%type <a> ipa
@@ -88,7 +88,7 @@ CF_DECLS
%left '!'
%nonassoc '.'

CF_KEYWORDS(DEFINE, ON, OFF, YES, NO, S, MS, US)
CF_KEYWORDS(DEFINE, ON, OFF, YES, NO, S, MS, US, PORT)

CF_GRAMMAR

@@ -161,6 +161,14 @@ ipa_scope:
 | '%' SYM { $$ = if_get_by_name($2->name); }
 ;

ipa_port:
   /* empty */ { $$ = 0; }
 | PORT expr {
     if (($2 < 1) || ($2 > 65535)) cf_error("Invalid port number");
     $$ = $2;
   }
 ;

prefix:
   ipa pxlen {
     if (!ip_is_prefix($1, $2)) cf_error("Invalid prefix");
+16 −8
Original line number Diff line number Diff line
@@ -318,7 +318,7 @@ protocol rip {
<p><descrip>
	<tag>include "<m/filename/"</tag> 
	This statement causes inclusion of a new file. <m/Filename/ could also
	be a wildcard. The maximal depth is 5. Note that this statement could be
	be a wildcard. The maximal depth is 8. Note that this statement could be
	used anywhere in the config file, not just as a top-level option.

	<tag><label id="dsc-log">log "<m/filename/"|syslog [name <m/name/]|stderr all|{ <m/list of classes/ }</tag> 
@@ -735,7 +735,7 @@ This argument can be omitted if there exists only a single instance.
	Show the list of symbols defined in the configuration (names of
	protocols, routing tables etc.).

	<tag>show route [[for] <m/prefix/|<m/IP/] [table <m/sym/] [filter <m/f/|where <m/c/] [(export|preexport) <m/p/] [protocol <m/p/] [<m/options/]</tag>
	<tag>show route [[for] <m/prefix/|<m/IP/] [table <m/sym/] [filter <m/f/|where <m/c/] [(export|preexport|noexport) <m/p/] [protocol <m/p/] [<m/options/]</tag>
	Show contents of a routing table (by default of the main one or the
	table attached to a respective protocol), that is routes, their metrics
	and (in case the <cf/all/ switch is given) all their attributes.
@@ -750,9 +750,14 @@ This argument can be omitted if there exists only a single instance.
	<p>You can also ask for printing only routes processed and accepted by
	a given filter (<cf>filter <m/name/</cf> or <cf>filter { <m/filter/ }
	</cf> or matching a given condition (<cf>where <m/condition/</cf>).
	The <cf/export/ and <cf/preexport/ switches ask for printing of entries
	that are exported to the specified protocol. With <cf/preexport/, the
	export filter of the protocol is skipped.

	The <cf/export/, <cf/preexport/ and <cf/noexport/ switches ask for
	printing of routes that are exported to the specified protocol.
	With <cf/preexport/, the export filter of the protocol is skipped.
	With <cf/noexport/, routes rejected by the export filter are printed
	instead. Note that routes not exported to the protocol for other reasons
	(e.g. secondary routes or routes imported from that protocol) are not
	printed even with <cf/noexport/.

	<p>You can also select just routes added by a specific protocol.
	<cf>protocol <m/p/</cf>.
@@ -1004,7 +1009,6 @@ foot).
	So <cf>1.2.0.0/16.pxlen = 16</cf> is true.

	<tag/ec/

	This is a specialized type used to represent BGP extended community
	values. It is essentially a 64bit value, literals of this type are
	usually written as <cf>(<m/kind/, <m/key/, <m/value/)</cf>, where
@@ -1616,7 +1620,7 @@ using the following configuration parameters:
	address, equivalent to the <cf/source address/ option (see below). This
	parameter is mandatory.

	<tag>neighbor <m/ip/ as <m/number/</tag>
	<tag>neighbor <m/ip/ [port <m/number/] as <m/number/</tag>
	Define neighboring router this instance will be talking to and what AS
	it's located in. In case the neighbor is in the same AS as we are, we
	automatically switch to iBGP. This parameter is mandatory.
@@ -3036,6 +3040,10 @@ definitions, prefix definitions and DNS definitions:
	as a default router. For <cf/sensitive/ option, see <ref id="dsc-trigger" name="trigger">.
	Default: 3 * <cf/max ra	interval/, <cf/sensitive/ yes.

	<tag>default preference low|medium|high</tag>
	This option specifies the Default Router Preference value to advertise
	to hosts. Default: medium.

	<tag>rdnss local <m/switch/</tag>
	Use only local (interface-specific) RDNSS definitions for this
	interface. Otherwise, both global and local definitions are used. Could
Loading