Commit Graph

23305 Commits

Author SHA1 Message Date
Donald Sharp
6dfe243c38
Merge pull request #8278 from ckishimo/ospfv3_iface
ospf6d: fix iface commands lost when removing from area
2021-03-20 20:11:16 -04:00
Donald Sharp
13c0040db5
Merge pull request #8282 from volta-networks/fix_isisd_bfd_ipv4
isisd: fix BFD session when IPv6 not configured
2021-03-20 20:04:38 -04:00
Donald Sharp
cd28e264a3
Merge pull request #8291 from volta-networks/isis_timer_unstable
isisd: avoid lsp_sched loop when unstable
2021-03-20 19:52:01 -04:00
Stephen Worley
97ec501ef0
Merge pull request #8129 from mjstapp/backup_recursives
zebra: modify backup nexthop handling for recursive routes
2021-03-19 12:30:51 -04:00
Emanuele Di Pascale
d2232b3e21 isisd: avoid lsp_sched loop when unstable
no point in scheduling an LSP refresh immediately if we know it is
going to be postponed again due to the network still being in its
instability grace period

Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2021-03-19 10:37:58 +01:00
Mark Stapp
44544f191c
Merge pull request #8286 from donaldsharp/nhrp_xlref
nhrpd: Remove newline from log message
2021-03-18 14:30:33 -04:00
Donald Sharp
e43ba29689
Merge pull request #8263 from opensourcerouting/docker-update
tests: docker fixes & improvements
2021-03-18 13:59:30 -04:00
Donatas Abraitis
0966b412ba
Merge pull request #8283 from chiragshah6/mdev
bgpd: add seqno in bgp as-path access-list policy
2021-03-18 17:24:35 +02:00
Donald Sharp
dccd71c182 nhrpd: Remove newline from log message
We should not be putting new lines in log messages.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-03-18 10:32:01 -04:00
Emanuele Di Pascale
980390ce14 isisd: add debug logs to troubleshoot BFD issues
when we receive an event from BFDD and we end up throwing it away,
make sure that we log (with debug guards) the reason for this, so
we can troubleshoot issues like the one addressed by the previous
commit.

Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2021-03-18 12:49:10 +01:00
Emanuele Di Pascale
0d5b1a3a79 isisd: fix BFD session when IPv6 not configured
A wrong check was silently skipping the initialization of the bfd_session
struct in the adjacency if the router was not configured for IPv6. This
would cause BFD events to be ignored regardless of the configuration.

Also add a function to return the "name" of an adjacency and use it in a
couple of places, including the new log, instead of repeating the same
code in a bunch of places.

Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
2021-03-18 12:49:10 +01:00
Donald Sharp
bb5dddf713
Merge pull request #8284 from mjstapp/fix_bgp_zero_timers
bgpd: use add_event instead of add_timer with zero timeout
2021-03-18 07:29:32 -04:00
Chirag Shah
e6e62ee52d doc: add seqno to bgp as path list section
Add sequence no option to bgp as-path list cli syntax.
Add sequence no to example config.
Add auto generated sequence no in running-config if its not
provided in config.

Signed-off-by: Chirag Shah <chirag@nvidia.com>
2021-03-17 22:06:53 -07:00
Chirag Shah
9b6f73ee9c bgpd: add seqno in bgp as-path access-list policy
Add optional parameter seqno to bgp as-patch policy
to inline with other bgp policies commands at same
level.

Testing Done:

config t
bgp as-path access-list foo1 permit _40_
bgp as-path access-list foo1 seq 5 permit _41_
bgp as-path access-list foo1 seq 8 permit _42_
bgp as-path access-list foo2 permit _43_
no bgp as-path access-list foo1 permit _41_
bgp as-path access-list foo1 permit 41$

show run:
bgp as-path access-list foo1 seq 8 permit _42_
bgp as-path access-list foo1 seq 10 permit 41$
bgp as-path access-list foo2 seq 5 permit _43_

Signed-off-by: Chirag Shah <chirag@nvidia.com>
2021-03-17 22:06:53 -07:00
Mark Stapp
e0d550dfea bgpd: use add_event instead of add_timer with zero timeout
Just use events in a few places where timers with zero timeout
were being used.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2021-03-17 16:10:13 -04:00
Quentin Young
263e82b308
Merge pull request #8052 from ton31337/feature/show_bgp_peer-groups_json 2021-03-17 15:08:00 -04:00
Donald Sharp
a78a4e754e
Merge pull request #8232 from reubendowle/fixes/nhrp-ipsec-issues
nhrp: Fix some ipsec related issues
2021-03-17 09:33:44 -04:00
Donald Sharp
28bada3d8f
Merge pull request #8255 from pjdruddy/fix-ifindex-test
Fix ifindex test
2021-03-17 09:10:20 -04:00
Donald Sharp
5b21cd300c
Merge pull request #8248 from volta-networks/fix_ospf6_chunk_msgs
ospfd6: Clear locks when ospf messages need to be chunked
2021-03-17 09:09:28 -04:00
David Lamparter
53abc26569 tests: simplify docker rsync & support worktrees
The previous, more complex mechanism failed to take into account that
git worktrees only have a stub .git file & copying the worktree itself
is not enough.  Just extract a file list beforehand & don't bother with
git inside the container.

Signed-off-by: David Lamparter <equinox@diac24.net>
2021-03-17 13:42:20 +01:00
David Lamparter
071f5c1664 tests: add libelf-dev to Dockerfile
Signed-off-by: David Lamparter <equinox@diac24.net>
2021-03-17 13:42:20 +01:00
Donald Sharp
4f156615e1
Merge pull request #8276 from opensourcerouting/pathd-fmt-fix
pathd: fix some format strings
2021-03-17 08:31:01 -04:00
Santosh P K
de40463b54
Merge pull request #8008 from chiragshah6/yang_nb5
[lib, yang] : multiple fixes in prefix-list northbound conversion
2021-03-17 16:25:54 +05:30
Rafael Zalamena
692b3561df
Merge pull request #8225 from idryzhov/bfd-echo-mode
bfdd: fix echo receive timer and disable echo mode
2021-03-17 10:45:43 +00:00
Rafael Zalamena
57e627628d
Merge pull request #8229 from idryzhov/bfdd-echo-rx-tx
bfdd: separate echo rx/tx timers
2021-03-17 10:41:33 +00:00
ckishimo
d205f01e1d tests: fix too many arguments for logging
Signed-off-by: ckishimo <carles.kishimoto@gmail.com>
2021-03-17 09:35:47 +01:00
David Lamparter
8c64c9571e
Merge pull request #8273 from volta-networks/fix_ospf6_coverity
ospf6d: Fix coverity errors
2021-03-17 08:02:14 +01:00
David Lamparter
f38d31f933
Merge pull request #8275 from donaldsharp/peer_afi_safi_mistake 2021-03-17 07:13:09 +01:00
David Lamparter
d85bf6f1eb pathd: remove mid-string line breaks
cf. workflow.rst ("lines over 80 characters are allowed for text strings
to make it possible to search the code for them"), matching Linux kernel
coding style.

Signed-off-by: David Lamparter <equinox@diac24.net>
2021-03-17 06:39:34 +01:00
David Lamparter
84b3eb42a9 pathd: use %pIA to print struct ipaddr *
Signed-off-by: David Lamparter <equinox@diac24.net>
2021-03-17 06:31:38 +01:00
David Lamparter
4d39e49673 pathd: fix %pI4 <> %pI6 snafu
... as noted by the frr-format GCC plugin.

Signed-off-by: David Lamparter <equinox@diac24.net>
2021-03-17 06:30:53 +01:00
Gaurav Goyal
58ef1668ae nhrpd: When IPsec profile is added or deleted, reset the vc and re-check peer
Signed-off-by: Reuben Dowle <reuben.dowle@4rf.com>
2021-03-17 17:03:47 +13:00
Reuben Dowle
74e5ba3a3f nhrpd: Make comments clearer, fix style issues
Signed-off-by: Reuben Dowle <reuben.dowle@4rf.com>
2021-03-17 17:02:19 +13:00
Gaurav Goyal
083bbfaebf nhrpd: Close IPSec connection when tunnel protection removed
Signed-off-by: Reuben Dowle <reuben.dowle@4rf.com>
2021-03-17 16:56:46 +13:00
Gaurav Goyal
4cbaf956f6 nhrpd: Retry IPSec if NHRP is repeatedly failing
This prevents a failed IPSec connection from preventing DMVPN from working.
A failure situation can be reproduced using a Cisco peer, and and disabling then
re-enabling the tunnel IPSec protection (after the IPSec connection has
already been established).

Signed-off-by: Reuben Dowle <reuben.dowle@4rf.com>
2021-03-17 16:56:46 +13:00
Donald Sharp
0f3ac8198a bgpd: If we have a SAFI conflict do not allow labeled unicast to reset
If we have a SAFI conflict, ie we are trying to activate safi's
UNICAST and LABELED_UNICAST at the same time, we should not
cause bestpath to be rerun and we should not try to put
labels on everything.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-03-16 22:39:20 -04:00
Donald Sharp
a59803d060 bgpd: Attempting to activate unicast and labeled-unicast
Should return an actual useful error message.
Commit: 055679e915 messed this error message
up.

Fixes: #8246
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-03-16 22:38:13 -04:00
ckishimo
9b1bb522e0 tests: fix warning when checking ospfv3 convergence
The following error is shown when running the OSPFv3 tests

2021-03-16 23:37:44,792 INFO: Function returned global name 'data_rid' is not defined
2021-03-16 23:37:44,792 INFO: Retry [#1] after sleeping for 2s
2021-03-16 23:37:46,794 INFO: Verifying OSPF6 neighborship on router r1:
2021-03-16 23:37:46,993 INFO: Output for command [ show ipv6 ospf6 neighbor ] on router r1:
Neighbor ID     Pri    DeadTime    State/IfState         Duration I/F[State]
2.2.2.2           1    00:00:03     Full/PointToPoint    00:00:01 r1-r2-eth0[PointToPoint]

Fix the "data_rid" warning by using the correct variable

Signed-off-by: ckishimo <carles.kishimoto@gmail.com>
2021-03-17 00:19:54 +01:00
ckishimo
800cc91882 ospf6d: fix warning message when interfae disabled
When removing an interface from an existing area,
the warning message we get is not correct

  interface r1-r2-eth0
   ipv6 address 2013:12::1/64
   ipv6 ospf6 dead-interval 4
   ipv6 ospf6 hello-interval 1
  !
  interface dummy
   ipv6 ospf6 dead-interval 4
   ipv6 ospf6 hello-interval 1
   ipv6 ospf6 network point-to-point
  !
  router ospf6
   ospf6 router-id 1.1.1.1
   interface r1-r2-eth0 area 0.0.0.0
  !

  r1(config-if)# router ospf6
  r1(config-ospf6)# no interface dummy area 0.0.0.0
  No such Area-ID: 0.0.0.0   <--- area 0.0.0.0 exists

This is fixing the error message

Signed-off-by: ckishimo <carles.kishimoto@gmail.com>
2021-03-17 00:14:32 +01:00
ckishimo
d100d0b00c ospf6d: remove interface prefix when area is removed
This bug was first reported in PR#7717. When removing an interface
from the area, the interface prefix is still shown

  r1# sh ipv6 ospf6 interface prefix
  *N IA 2013:12::/64       ::1      r1-r2-eth0 00:00:12

  r1# conf t
  r1(config)# router ospf6
  r1(config-ospf6)# no interface r1-r2-eth0 area 0.0.0.0
  r1(config-ospf6)# exit

  r1# sh ipv6 ospf6 interface prefix
  *N IA 2013:12::/64       ::1      r1-r2-eth0 00:00:22

This fix will check if the interface is disabled so the
prefix is not shown

Signed-off-by: ckishimo <carles.kishimoto@gmail.com>
2021-03-17 00:01:22 +01:00
ckishimo
5ac69ec52a ospf6d: fix iface commands lost when removing from area
In OSPFv3 when removing the interface from an area, all ospf6
interface commands are lost, so when changing the area you need
to reconfigure all ospf6 interface commands again

  r1# sh run
  interface r1-r2-eth0
   ipv6 address 2013:12::1/64
   ipv6 ospf6 dead-interval 4
   ipv6 ospf6 hello-interval 1
   ipv6 ospf6 network point-to-point
  !
  router ospf6
   ospf6 router-id 1.1.1.1
   interface r1-r2-eth0 area 0.0.0.0
  !

  r1# conf t
  r1(config)# router ospf6
  r1(config-ospf6)# no interface r1-r2-eth0 area 0.0.0.0
  r1(config-ospf6)# exit

  r1# sh run
  interface r1-r2-eth0
   ipv6 address 2013:12::1/64
  !                            <----- missing all ipv6 ospf6 commands
  router ospf6
   ospf6 router-id 1.1.1.1
  !

This is because the interface is being deleted instead of disabled
(see PR#7717) I believe the interface should be left as disabled
(not deleted) when removing the interface from the area

Signed-off-by: ckishimo <carles.kishimoto@gmail.com>
2021-03-16 23:47:23 +01:00
Donald Sharp
4d7ae2c0dd
Merge pull request #8258 from volta-networks/feat_ldp_snmp_with_stats
ldpd: Add support for the read-only snmp mib objects that are statistics
2021-03-16 18:31:03 -04:00
Donald Sharp
48e85d2296
Merge pull request #8268 from mjstapp/doc_dev_topo_notes
doc: add info to topotest dev doc
2021-03-16 18:22:02 -04:00
Donald Sharp
77409683a7
Merge pull request #8270 from volta-networks/fix_isis_snmp_coverity
isisd: Fix coverity warnings
2021-03-16 18:21:47 -04:00
lynne
1f4a8543d7 ospf6d: Fix coverity errors
Signed-off-by: Lynne Morrison <lynne@voltanet.io>
2021-03-16 16:08:59 -04:00
Igor Ryzhov
4df3e31c3d bfdd: separate echo rx/tx timers
Currently there is a single interval for both RX and TX echo functions.
This commit introduces separate RX and TX timers for echo packets.

The main advantage is to be able to set the receive interval to zero
when we don't want to receive echo packets from the remote system.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-03-16 22:14:57 +03:00
Donald Sharp
9bc9a96069
Merge pull request #8266 from idryzhov/eigrp-cli-fixes
eigrp cli fixes
2021-03-16 14:47:00 -04:00
Donald Sharp
3406c16cbe
Merge pull request #7963 from volta-networks/feat_pceplib_into_frr_github
pceplib: Integrate pcelib into frr
2021-03-16 14:03:34 -04:00
Donald Sharp
30643d6f31
Merge pull request #8155 from idryzhov/zebra-support-bundle
zebra support bundle fixes and improvements
2021-03-16 13:00:37 -04:00
lynne
e91a589b93 isisd: Fix coverity warnings
Signed-off-by: Lynne Morrison <lynne@voltanet.io>
2021-03-16 12:55:28 -04:00