Commit Graph

23768 Commits

Author SHA1 Message Date
Gaurav Goyal
b5fc78c068 nhrpd: Add NAT extension in forwarded packets
Signed-off-by: Reuben Dowle <reuben.dowle@4rf.com>
2021-03-18 16:35:41 +13:00
Gaurav Goyal
bb58f44259 nhrpd: Process NAT extension properly, and also fallback to IPSec NAT info
Signed-off-by: Reuben Dowle <reuben.dowle@4rf.com>
2021-03-18 16:35:41 +13:00
Amol Lad
d5dc926f18 nhrpd: Add zbuf routine to peek at contents
Signed-off-by: Reuben Dowle <reuben.dowle@4rf.com>
2021-03-18 16:35:41 +13:00
Kuldeep Kashyap
53402dbf1e tests: Fix bgp convergence issue mentioned in #8279
1. Enhance verify_bgp_convergence() to solve issue mentioned in #8279

Signed-off-by: Kuldeep Kashyap <kashyapk@vmware.com>
2021-03-17 17:43:57 -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
nsaigomathi
79c889228f tools: Add pimd support bundle commands
PIM Support Bundle commands are added in support_bundle_commands.conf file.
It will help us in debugging PIM test Failures.

Signed-off-by: Sai Gomathi <nsaigomathi@vmware.com>
2021-03-17 06:48:29 -07: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
David Lamparter
941b5172ea lib: temporary workaround for LabN CI
Accept macros without ; for LabN CI *only*.  This is a bit hairy since
we can't generate warnings for this, so it's very limited in both scope
and duration.

Signed-off-by: David Lamparter <equinox@diac24.net>
2021-03-17 06:24:03 +01:00
David Lamparter
7abb042e78 build: put macro-semicolon bits into ignore-revs
Signed-off-by: David Lamparter <equinox@diac24.net>
2021-03-17 06:24:03 +01:00
David Lamparter
67b0f40c98 *: require semicolon after FRR_CFG_DEFAULT_*
... again ...

Signed-off-by: David Lamparter <equinox@diac24.net>
2021-03-17 06:18:39 +01:00
David Lamparter
80413c2073 *: require semicolon after FRR_DAEMON_INFO & co.
... again ...

Signed-off-by: David Lamparter <equinox@diac24.net>
2021-03-17 06:18:39 +01:00
David Lamparter
960b9a5383 *: require semicolon after DEFINE_<typesafe...>
Again, see previous commits.

Signed-off-by: David Lamparter <equinox@diac24.net>
2021-03-17 06:18:39 +01:00
David Lamparter
96244aca23 *: require semicolon after DEFINE_QOBJ & co.
Again, see previous commits.

Signed-off-by: David Lamparter <equinox@diac24.net>
2021-03-17 06:18:37 +01:00
David Lamparter
8451921b70 *: require semicolon after DEFINE_HOOK & co.
See previous commit.

Signed-off-by: David Lamparter <equinox@diac24.net>
2021-03-17 06:18:17 +01:00
David Lamparter
bf8d3d6aca *: require semicolon after DEFINE_MTYPE & co
Back when I put this together in 2015, ISO C11 was still reasonably new
and we couldn't require it just yet.  Without ISO C11, there is no
"good" way (only bad hacks) to require a semicolon after a macro that
ends with a function definition.  And if you added one anyway, you'd get
"spurious semicolon" warnings on some compilers...

With C11, `_Static_assert()` at the end of a macro will make it so that
the semicolon is properly required, consumed, and not warned about.

Consistently requiring semicolons after "file-level" macros matches
Linux kernel coding style and helps some editors against mis-syntax'ing
these macros.

Signed-off-by: David Lamparter <equinox@diac24.net>
2021-03-17 06:18:17 +01:00
David Lamparter
15c05f1edf *: require ISO C11 (or C++11)
It's 2021... time to drop some 10yo compat stuff.

Signed-off-by: David Lamparter <equinox@diac24.net>
2021-03-17 06:18:17 +01:00
David Lamparter
247c7e27a9 snmp: change -std=gnu99 to -std=gnu11
The point of the `-std=gnu99` was to override a `-std=c99` that may be
coming in from net-snmp.  However, we want C11, not C99.

Signed-off-by: David Lamparter <equinox@diac24.net>
2021-03-17 06:18:17 +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