Donald Sharp
6140b3b41b
zebra: prevent crash when nhlfe is NULL
...
There exists a call path where the nhlfe_alloc can return NULL
for blackhole nexthops. In this case we were still trying
to save the nhlfe pointer causing a crash when we attempted
to add it to a self-contained list.
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-08-04 13:38:25 -04:00
Donald Sharp
b7457b40cd
lib: Blackhole nexthops cannot be used as part of label generation
...
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-08-04 13:34:03 -04:00
Donald Sharp
10cc80cafd
zebra: don't use default case when switching over enum nexthop
...
Do not use the `default` case when switching over an enumerated
type. This allows the code to fail to compile when we add a
new enumeration. Thus allowing us developers to know all
the places in the code we'll need to touch.
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-08-04 13:34:03 -04:00
Donald Sharp
1ae0e1b315
lib: Convert assert to error and record it instead of aborting
...
When we get a bad value for the opaque data length, instead
of stopping the program, discard the data and move on.
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-08-04 11:13:26 -04:00
Donald Sharp
22e135b451
Merge pull request #8182 from mjstapp/topotest_start_tgen
...
tests: make the topogen object available when starting daemons
2021-08-04 08:48:06 -04:00
Donald Sharp
5504fee4a3
Merge pull request #9085 from mobash-rasool/pim-upst-4
...
pimd: memory leak fix and issue fix
2021-08-03 21:21:14 -04:00
Donald Sharp
761704b370
Merge pull request #9092 from rgirada/rmap
...
ospfd: OSPF hello packets not sent with configured hello timer
2021-08-03 21:18:21 -04:00
Donald Sharp
3e18e550ed
Merge pull request #9108 from opensourcerouting/ospf6d-range-fixes
...
ospf6d: fix argument processing in the "area ... range" command
2021-08-03 21:15:12 -04:00
Russ White
efadadc1b6
Merge pull request #9264 from ak503/nhrp_fix
...
nhrp: fix display of nhs command.
2021-08-03 13:42:48 -04:00
Russ White
67831eeebb
Merge pull request #9164 from pguibert6WIND/flowspec_vrflite_shortcut
...
bgpd: flowspec redirect vrf uses vrf table instead of allocated table id
2021-08-03 09:31:17 -04:00
Russ White
cdc549b51a
Merge pull request #9191 from idryzhov/rip-auth
...
ripd: fix authentication key length
2021-08-03 09:29:09 -04:00
Russ White
11093fc905
Merge pull request #9231 from idryzhov/zebra-rmap-set-src
...
zebra: remove checks for src address existence when using "set src"
2021-08-03 09:22:18 -04:00
Russ White
f61a950acf
Merge pull request #9239 from idryzhov/ospf-passive-fix
...
ospfd: fix "no ip ospf passive" command
2021-08-03 09:21:14 -04:00
Russ White
f041fe620d
Merge pull request #9243 from ton31337/fix/revert_db0e636dc45f9bd2c76528a8368332c56f2c8f1e
...
bgpd: Revert a couple of BGP dampening related commits
2021-08-03 09:20:16 -04:00
Russ White
26d7f8b285
Merge pull request #9249 from ton31337/fix/dont_capability
...
bgpd: Use strict AS4 capability when processing parsing/generating pkts
2021-08-03 09:14:27 -04:00
Russ White
1358f9d10a
Merge pull request #9259 from opensourcerouting/moar-json
...
*: can't get enough JSON
2021-08-03 09:13:12 -04:00
Dmitrii Turlupov
7a807a20d9
nhrp: fix display of nhs command.
...
Before:
ip nhrp nhs dynamicnbma 192.168.1.1
After:
ip nhrp nhs dynamic nbma 192.168.1.1
Signed-off-by: Dmitrii Turlupov <dturlupov@factor-ts.ru>
2021-08-03 14:10:54 +03:00
Russ White
04cfc0a3a8
Merge pull request #9056 from askorichenko/test-dont-capability
...
bgpd: Clear capabilities field when resetting a bgp neighbor
2021-08-03 06:59:56 -04:00
Donatas Abraitis
71c06f610f
Merge pull request #9258 from mjstapp/fix_rule_strlcpy
...
zebra: use strlcpy in dplane_rule_init
2021-08-03 09:12:38 +03:00
Renato Westphal
488599bfa2
Merge pull request #9232 from idryzhov/interface-node-cleanup
...
*: cleanup interface node installation
2021-08-02 21:13:29 -03:00
Renato Westphal
58e2857d23
lib: add "json" option to "show ip[v6] prefix-list"
...
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2021-08-02 17:19:45 -03:00
Renato Westphal
c15dc24f79
zebra: add "json" option to "show interface"
...
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2021-08-02 17:19:45 -03:00
Renato Westphal
856ed18ae9
lib: add "json" option to "show route-map"
...
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2021-08-02 16:05:44 -03:00
Renato Westphal
068ab9018b
lib: add "json" option to "show ip[v6] access-list"
...
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2021-08-02 16:05:44 -03:00
Renato Westphal
b15e836067
bgpd: add "json" option to "show bgp as-path-access-list"
...
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2021-08-02 15:53:02 -03:00
Mark Stapp
bc86b347db
zebra: use strlcpy in dplane_rule_init
...
Use strlcpy for safety in dplane rule init api.
Signed-off-by: Mark Stapp <mjs.ietf@gmail.com>
2021-08-02 12:35:50 -04:00
Donald Sharp
b22928a117
Merge pull request #9255 from ton31337/fix/bgp_max_packet_size_no_capabilities
...
bgpd: Set extended msg size only if we advertised and received capability
2021-08-02 12:11:24 -04:00
Igor Ryzhov
1f74d96c41
zebra: remove checks for src address existence when using "set src"
...
1. This check is absolutely useless. Nothing keeps user from deleting
the address right after this check.
2. This check prevents zebra from correctly reading the user config with
"set src" because of a race with interface startup (see #4249 ).
3. NO OPERATIONAL DATA USAGE ON VALIDATION STAGE.
Fixes #7319 .
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-08-02 18:35:30 +03:00
Igor Ryzhov
72928fa1aa
Merge pull request #9238 from leonshaw/fix/netns-delete
...
lib, zebra: Preserve user-configured VRF on netns deletion
2021-08-02 18:12:19 +03:00
Quentin Young
41d3d77496
Merge pull request #8982 from dlqs/lua-func-stack
2021-08-02 13:51:35 +00:00
Mark Stapp
08bbca7511
Merge pull request #9211 from donaldsharp/revert_logic_changes
...
lib: prevent crash in make check in some situations
2021-08-02 08:34:55 -04:00
Donatas Abraitis
8d976b0e2b
bgpd: Set extended msg size only if we advertised and received capability
...
If we don't advertise any capabilities (dont-capability-negotiate), we
shouldn't set msg size to 65k only if received this capability from another
peer.
Before:
```
~/frr# vtysh -c 'show ip bgp update-group' | grep 'Max packet size'
Max packet size: 65535
```
After:
```
~/frr# vtysh -c 'show ip bgp update-group' | grep 'Max packet size'
Max packet size: 4096
```
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-08-02 09:34:43 +03:00
Philippe Guibert
7afeaffa12
bgpd: flowspec redirect vrf uses vrf table instead of allocated table id
...
Until now, when bgp flowspec entry action was to redirect to a vrf, a
default route was installed in a specific table. that route was a vrf
route leak one. The process can be simplified, as vrf-lite already
has a table identifier. Actually, because policy routing is used to
redirect traffic to a defined table (with ip rule command), use
the table identifier of the VRF.
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2021-08-01 14:38:13 +02:00
Donatas Abraitis
ecec984b2f
tests: Check if BGP connection established if using no capabilities adv
...
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-08-01 09:58:26 +03:00
Donatas Abraitis
8cff42add5
bgpd: Use strict AS4 capability when processing parsing/generating pkts
...
PeerA sets `dont-capability-negotiate` for PeerB. It does not send any
capabilities to PeerB. This leads to situation when PeerA received AS4 cap,
while it doesn't send AS4 to PeerB and tries parsing AS_PATH using 32bits.
[GTTPK-RX2GP][EC 33554436] Malformed AS path from 192.168.0.2, length is 4
[SM0KX-WXMGK] bgp_attr_malformed: attributes: , origin ?
[P7TRR-4J6XT][EC 33554487] 192.168.0.2: Attribute AS_PATH, parse error - treating as withdrawal
[WX70K-6XXVF][EC 33554454] 192.168.0.2 rcvd UPDATE with errors in attr(s)!! Withdrawing route.
[Z2KFR-ZGJC8] 192.168.0.2 rcvd UPDATE w/ attr: , origin ?
[P9VY3-5B6NX] 192.168.0.2 rcvd UPDATE wlen 0 attrlen 80 alen 73
[QMZ79-K2DH7][EC 33554454] 192.168.0.2 [Error] Update packet error (wrong prefix length 64 for afi 1)
[P9SYB-54XRZ][EC 33554454] 192.168.0.2 [Error] Error parsing NLRI
[V1CHF-JSGRR] %NOTIFICATION: sent to neighbor 192.168.0.2 3/10 (UPDATE Message Error/Invalid Network Field) 0 bytes
[HTHRX-GQYGJ][EC 33554454] bgp_process_packet: BGP UPDATE receipt failed for peer: 192.168.0.2
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-08-01 09:56:48 +03:00
Donald Sharp
a76301c11c
Merge pull request #9244 from LabNConsulting/chopps/fix-bgp-list-test
...
tests: add early interface config for topojson and fix test
2021-07-31 21:37:22 -04:00
Donatas Abraitis
41a6c1a32a
Merge pull request #9246 from mjstapp/fix_doc_bgp_colons
...
doc: fix bgp user doc colons
2021-07-31 20:16:39 +03:00
Christian Hopps
845b234a8d
tests: add early interface config for topojson and fix test
...
- A more general fix for the bgp listener test which requires interfaces be
configured in the kernel when the bgpd daemons are launched.
Signed-off-by: Christian Hopps <chopps@labn.net>
2021-07-31 14:09:24 +00:00
David Lamparter
00908959ed
Merge pull request #9228 from LabNConsulting/chopps/scapy-sendpkt
...
tests: add scapy_sendpkt.py util, replace arping use with it
2021-07-31 12:09:40 +02:00
Christian Hopps
002e6825c1
tests: add scapy_sendpkt.py util, replace arping use with it
...
Signed-off-by: Christian Hopps <chopps@labn.net>
2021-07-30 21:01:22 +00:00
Mark Stapp
05653f497b
doc: fix bgp user doc
...
Too many colons in the bgp doc source file.
Signed-off-by: Mark Stapp <mjs.ietf@gmail.com>
2021-07-30 13:54:01 -04:00
Donatas Abraitis
8c834868dc
Merge pull request #9196 from donaldsharp/test_queued
...
tests: Increase timeout for loaded systems
2021-07-30 18:05:45 +03:00
Donatas Abraitis
d8e496242e
Revert "bgpd: fix memory leak in dampening"
...
This reverts commit 322e1085fe
.
2021-07-30 16:50:37 +03:00
Donatas Abraitis
253b4c5fd4
Revert "bgpd: fix missing delete from the list in dampening"
...
This reverts commit 755a977b8a
.
2021-07-30 16:50:05 +03:00
Donatas Abraitis
b3aa2ed7a8
Revert "bgpd: use double-linked list instead of single-linked list in dampening"
...
Tested with full feed, this stucks and bgpd even stops responding.
```
[T58XM-TP956][EC 268435457] bgpd state -> unresponsive : no response yet to ping sent 90 seconds ago
```
This reverts commit db0e636dc4
.
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-07-30 16:49:21 +03:00
Mark Stapp
b0e475f7c2
Merge pull request #9214 from donaldsharp/assert_cleanup
...
zebra: bugfix of error quit of zebra, due to no nexthop ACTIVE
2021-07-30 09:21:46 -04:00
Donatas Abraitis
c48aaa01a3
Merge pull request #9217 from idryzhov/bgp-damp-leaks
...
bgpd: fix various memory leaks in dampening
2021-07-30 15:19:31 +03:00
Igor Ryzhov
82f0277b35
ospfd: fix "no ip ospf passive" command
...
This command is currently always treated as an "unset" command, assuming
that active is the default type of the interface. In reality, the default
type of the interface can be changed using "passive-interface default"
command. Both "no" and regular commands can be "set" commands, depending
on the default value. They are treated as an "unset" when there's already
a config of the opposite type.
All this logic is in ospf_passive_interface_update.
Fixes #9240 .
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-07-30 15:08:08 +03:00
Russ White
e448fefbb4
Merge pull request #9028 from mobash-rasool/ospfv3-asbr-summarisation
...
Ospfv3 ASBR summarisation feature
2021-07-30 06:37:50 -04:00
Donatas Abraitis
6430836d92
Merge pull request #9237 from donaldsharp/code_block
...
doc: Fix code-block display for example shell commands
2021-07-30 10:18:14 +03:00