diff options
| -rw-r--r-- | doc/developer/_static/overrides.css | 4 | ||||
| -rw-r--r-- | doc/developer/building-frr-on-alpine.rst | 2 | ||||
| -rw-r--r-- | doc/developer/conf.py | 4 | ||||
| -rw-r--r-- | doc/user/_static/overrides.css | 4 | ||||
| -rw-r--r-- | doc/user/bgp.rst | 28 | ||||
| -rw-r--r-- | doc/user/conf.py | 4 | ||||
| -rw-r--r-- | doc/user/routemap.rst | 37 | ||||
| -rwxr-xr-x | tools/checkpatch.pl | 69 |
8 files changed, 101 insertions, 51 deletions
diff --git a/doc/developer/_static/overrides.css b/doc/developer/_static/overrides.css new file mode 100644 index 0000000000..1e0de66c55 --- /dev/null +++ b/doc/developer/_static/overrides.css @@ -0,0 +1,4 @@ +/* remove max-width restriction */ +div.body { + max-width: none; +} diff --git a/doc/developer/building-frr-on-alpine.rst b/doc/developer/building-frr-on-alpine.rst index 68031b3b61..6fcb5de107 100644 --- a/doc/developer/building-frr-on-alpine.rst +++ b/doc/developer/building-frr-on-alpine.rst @@ -1,4 +1,4 @@ -Building FRR dev packages on Alpine Linux from Git Source +Alpine Linux 3.7+ ========================================================= For building Alpine Linux dev packages, we use docker. diff --git a/doc/developer/conf.py b/doc/developer/conf.py index e2293b2a6b..ed91ff255f 100644 --- a/doc/developer/conf.py +++ b/doc/developer/conf.py @@ -188,7 +188,7 @@ html_favicon = '../figures/frr-logo-icon.png' # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". -#html_static_path = ['_static'] +html_static_path = ['_static'] # Add any extra paths that contain custom files (such as robots.txt or # .htaccess) here, relative to this directory. These files are copied @@ -339,3 +339,5 @@ def setup(app): # object type for FRR CLI commands, can be extended to document parent CLI # node later on app.add_object_type('clicmd', 'clicmd') + # css overrides for HTML theme + app.add_stylesheet('overrides.css') diff --git a/doc/user/_static/overrides.css b/doc/user/_static/overrides.css new file mode 100644 index 0000000000..1e0de66c55 --- /dev/null +++ b/doc/user/_static/overrides.css @@ -0,0 +1,4 @@ +/* remove max-width restriction */ +div.body { + max-width: none; +} diff --git a/doc/user/bgp.rst b/doc/user/bgp.rst index a444822757..6504e7d206 100644 --- a/doc/user/bgp.rst +++ b/doc/user/bgp.rst @@ -604,9 +604,8 @@ Defining Peer .. index:: neighbor PEER remote-as ASN .. clicmd:: neighbor PEER remote-as ASN - Creates a new neighbor whose remote-as is ASN. PEER can be an IPv4 address - or an IPv6 address.:: + or an IPv6 address or an interface to use for the connection.:: router bgp 1 neighbor 10.0.0.1 remote-as 2 @@ -618,6 +617,19 @@ Defining Peer can't find neighbor 10.0.0.1 +.. index:: neighbor PEER remote-as internal +.. clicmd:: neighbor PEER remote-as internal + + Create a peer as you would when you specify an ASN, except that if the + peers ASN is different than mine as specified under the :clicmd:`router bgp ASN` + command the connection will be denied. + +.. index:: neighbor PEER remote-as external +.. clicmd:: neighbor PEER remote-as external + + Create a peer as you would when you specify an ASN, except that if the + peers ASN is the same as mine as specified under the :clicmd:`router bgp ASN` + command the connection will be denied. .. _bgp-peer-commands: @@ -2076,19 +2088,9 @@ How to set up a 6-Bone connection :: - zebra configuration - =================== - ! - ! Actually there is no need to configure zebra - ! - bgpd configuration ================== ! - ! This means that routes go through zebra and into the kernel. - ! - router zebra - ! ! MP-BGP configuration ! router bgp 7675 @@ -2112,8 +2114,6 @@ How to set up a 6-Bone connection set ipv6 nexthop global 3ffe:1cfa:0:2:2c0:4fff:fe68:a225 set ipv6 nexthop local fe80::2c0:4fff:fe68:a225 ! - ! logfile FILENAME is obsolete. Please use log file FILENAME - log file bgpd.log ! diff --git a/doc/user/conf.py b/doc/user/conf.py index efe1023740..7a77e492ce 100644 --- a/doc/user/conf.py +++ b/doc/user/conf.py @@ -188,7 +188,7 @@ html_favicon = '../figures/frr-logo-icon.png' # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". -# html_static_path = ['_static'] +html_static_path = ['_static'] # Add any extra paths that contain custom files (such as robots.txt or # .htaccess) here, relative to this directory. These files are copied @@ -339,3 +339,5 @@ def setup(app): # object type for FRR CLI commands, can be extended to document parent CLI # node later on app.add_object_type('clicmd', 'clicmd') + # css overrides for HTML theme + app.add_stylesheet('overrides.css') diff --git a/doc/user/routemap.rst b/doc/user/routemap.rst index acf63a6122..3e88dee905 100644 --- a/doc/user/routemap.rst +++ b/doc/user/routemap.rst @@ -198,7 +198,42 @@ Route Map Set Command .. index:: set ip next-hop IPV4_ADDRESS .. clicmd:: set ip next-hop IPV4_ADDRESS - Set the BGP nexthop address. + Set the BGP nexthop address to the specified IPV4_ADDRESS. For both + incoming and outgoing route-maps. + +.. index:: set ip next-hop peer-address +.. clicmd:: set ip next-hop peer-address + + Set the BGP nexthop address to the address of the peer. For an incoming + route-map this means the ip address of our peer is used. For an outgoing + route-map this means the ip address of our self is used to establish the + peering with our neighbor. + +.. index:: set ip next-hop unchanged +.. clicmd:: set ip next-hop unchanged + + Set the route-map as unchanged. Pass the route-map through without + changing it's value. + +.. index:: set ipv6 next-hop peer-address +.. clicmd:: set ipv6 next-hop peer-address + + Set the BGP nexthop address to the address of the peer. For an incoming + route-map this means the ipv6 address of our peer is used. For an outgoing + route-map this means the ip address of our self is used to establish the + peering with our neighbor. + +.. index:: set ipv6 next-hop prefer-global +.. clicmd:: set ipv6 next-hop prefer-global + + For Incoming and Import Route-maps if we receive a v6 global and v6 LL + address for the route, then prefer to use the global address as the nexthop. + +.. index:: set ipv6 next-hop global IPV6_ADDRESS +.. clicmd:: set ipv6 next-hop global IPV6_ADDRESS + + Set the next-hop to the specified IPV6_ADDRESS. For both incoming and + outgoing route-maps. .. index:: set local-preference LOCAL_PREF .. clicmd:: set local-preference LOCAL_PREF diff --git a/tools/checkpatch.pl b/tools/checkpatch.pl index e66be1875f..c1fab1029a 100755 --- a/tools/checkpatch.pl +++ b/tools/checkpatch.pl @@ -5629,49 +5629,52 @@ sub process { } } +# +# Kernel macros unnused for FRR +# # Check for __attribute__ packed, prefer __packed - if ($realfile !~ m@\binclude/uapi/@ && - $line =~ /\b__attribute__\s*\(\s*\(.*\bpacked\b/) { - WARN("PREFER_PACKED", - "__packed is preferred over __attribute__((packed))\n" . $herecurr); - } +# if ($realfile !~ m@\binclude/uapi/@ && +# $line =~ /\b__attribute__\s*\(\s*\(.*\bpacked\b/) { +# WARN("PREFER_PACKED", +# "__packed is preferred over __attribute__((packed))\n" . $herecurr); +# } # Check for __attribute__ aligned, prefer __aligned - if ($realfile !~ m@\binclude/uapi/@ && - $line =~ /\b__attribute__\s*\(\s*\(.*aligned/) { - WARN("PREFER_ALIGNED", - "__aligned(size) is preferred over __attribute__((aligned(size)))\n" . $herecurr); - } +# if ($realfile !~ m@\binclude/uapi/@ && +# $line =~ /\b__attribute__\s*\(\s*\(.*aligned/) { +# WARN("PREFER_ALIGNED", +# "__aligned(size) is preferred over __attribute__((aligned(size)))\n" . $herecurr); +# } # Check for __attribute__ format(printf, prefer __printf - if ($realfile !~ m@\binclude/uapi/@ && - $line =~ /\b__attribute__\s*\(\s*\(\s*format\s*\(\s*printf/) { - if (WARN("PREFER_PRINTF", - "__printf(string-index, first-to-check) is preferred over __attribute__((format(printf, string-index, first-to-check)))\n" . $herecurr) && - $fix) { - $fixed[$fixlinenr] =~ s/\b__attribute__\s*\(\s*\(\s*format\s*\(\s*printf\s*,\s*(.*)\)\s*\)\s*\)/"__printf(" . trim($1) . ")"/ex; +# if ($realfile !~ m@\binclude/uapi/@ && +# $line =~ /\b__attribute__\s*\(\s*\(\s*format\s*\(\s*printf/) { +# if (WARN("PREFER_PRINTF", +# "__printf(string-index, first-to-check) is preferred over __attribute__((format(printf, string-index, first-to-check)))\n" . $herecurr) && +# $fix) { +# $fixed[$fixlinenr] =~ s/\b__attribute__\s*\(\s*\(\s*format\s*\(\s*printf\s*,\s*(.*)\)\s*\)\s*\)/"__printf(" . trim($1) . ")"/ex; - } - } +# } +# } # Check for __attribute__ format(scanf, prefer __scanf - if ($realfile !~ m@\binclude/uapi/@ && - $line =~ /\b__attribute__\s*\(\s*\(\s*format\s*\(\s*scanf\b/) { - if (WARN("PREFER_SCANF", - "__scanf(string-index, first-to-check) is preferred over __attribute__((format(scanf, string-index, first-to-check)))\n" . $herecurr) && - $fix) { - $fixed[$fixlinenr] =~ s/\b__attribute__\s*\(\s*\(\s*format\s*\(\s*scanf\s*,\s*(.*)\)\s*\)\s*\)/"__scanf(" . trim($1) . ")"/ex; - } - } +# if ($realfile !~ m@\binclude/uapi/@ && +# $line =~ /\b__attribute__\s*\(\s*\(\s*format\s*\(\s*scanf\b/) { +# if (WARN("PREFER_SCANF", +# "__scanf(string-index, first-to-check) is preferred over __attribute__((format(scanf, string-index, first-to-check)))\n" . $herecurr) && +# $fix) { +# $fixed[$fixlinenr] =~ s/\b__attribute__\s*\(\s*\(\s*format\s*\(\s*scanf\s*,\s*(.*)\)\s*\)\s*\)/"__scanf(" . trim($1) . ")"/ex; +# } +# } # Check for __attribute__ weak, or __weak declarations (may have link issues) - if ($^V && $^V ge 5.10.0 && - $line =~ /(?:$Declare|$DeclareMisordered)\s*$Ident\s*$balanced_parens\s*(?:$Attribute)?\s*;/ && - ($line =~ /\b__attribute__\s*\(\s*\(.*\bweak\b/ || - $line =~ /\b__weak\b/)) { - ERROR("WEAK_DECLARATION", - "Using weak declarations can have unintended link defects\n" . $herecurr); - } +# if ($^V && $^V ge 5.10.0 && +# $line =~ /(?:$Declare|$DeclareMisordered)\s*$Ident\s*$balanced_parens\s*(?:$Attribute)?\s*;/ && +# ($line =~ /\b__attribute__\s*\(\s*\(.*\bweak\b/ || +# $line =~ /\b__weak\b/)) { +# ERROR("WEAK_DECLARATION", +# "Using weak declarations can have unintended link defects\n" . $herecurr); +# } # check for c99 types like uint8_t used outside of uapi/ and tools/ if ($realfile !~ m@\binclude/uapi/@ && |
