Commit Graph

32667 Commits

Author SHA1 Message Date
Donatas Abraitis
2d02b3372d
Merge pull request #12622 from taspelund/adj-rib-json
bgpd: add "detail" for advertised/received-routes
2023-01-11 15:25:48 +02:00
Donatas Abraitis
01dbc4b384
Merge pull request #12577 from louis-6wind/fix-bgp-evpn-all
bgpd: fix show bgp all with evpn
2023-01-11 14:20:16 +02:00
anlan_cs
64a29a00f7 zebra: cosmetic changes for debug
Just remove redundant white spaces in debug information.

Before:
```
2023/01/11 05:04:48 ZEBRA: [W8V7C-6W4DS] init neigh ctx NEIGH_INSTALL: ifp vlan100, mac  9a:68:e9:73:74:88, ip 88.88.88.88
2023/01/11 05:04:48 ZEBRA: [NH6N7-54CD1] Tx RTM_NEWNEIGH family ipv4 IF vlan100(8) Neigh 88.88.88.88 MAC  9a:68:e9:73:74:88 flags 0x10 state 0x40 ext_flags 0x0
```

After:
```
2023/01/11 05:17:26 ZEBRA: [W8V7C-6W4DS] init neigh ctx NEIGH_INSTALL: ifp vlan100, mac 9a:68:e9:73:74:88, ip 88.88.88.88
2023/01/11 05:17:26 ZEBRA: [NH6N7-54CD1] Tx RTM_NEWNEIGH family ipv4 IF vlan100(8) Neigh 88.88.88.88 MAC 9a:68:e9:73:74:88 flags 0x10 state 0x40 ext_flags 0x0
```

Signed-off-by: anlan_cs <vic.lan@pica8.com>
2023-01-11 18:16:40 +08:00
Donatas Abraitis
4b6667ce61
Merge pull request #12578 from Pdoijode/evpn-mac-vni-det
zebra: Evpn mac vni detail show command
2023-01-11 12:06:37 +02:00
Donatas Abraitis
387385d961
Merge pull request #12521 from patrasar/issue_11347_fix
pimd, pim6d: Handling SGRPT prune received
2023-01-11 12:05:19 +02:00
Donatas Abraitis
e789cc0725
Merge pull request #12590 from anlancs/fix/bgpd-remove-ec-log
bgpd: remove one EC log
2023-01-11 12:04:04 +02:00
Mark Stapp
1eef2527d4
Merge pull request #12602 from opensourcerouting/fix/drop_deprecated_BGP_ATTR_AS_PATHLIMIT
bgpd: Drop deprecated BGP_ATTR_AS_PATHLIMIT path attribute
2023-01-10 16:37:51 -05:00
Mark Stapp
f931e35b59
Merge pull request #12620 from donaldsharp/continue_reading
zebra: Continue fpm_read when we decide a netlink message is not needed
2023-01-10 16:30:26 -05:00
Trey Aspelund
1b9d2d6091 doc: add "detail" advertised/received routes
Signed-off-by: Trey Aspelund <taspelund@nvidia.com>
2023-01-10 20:05:11 +00:00
Trey Aspelund
e960b4ca06 bgpd: add "detail" for advertised/received-routes
Introduce a "detail" keyword for per-neighbor/per-afi-safi
advertised-routes and received-routes show commands.
Includes json support.

Signed-off-by: Trey Aspelund <taspelund@nvidia.com>
2023-01-10 20:05:08 +00:00
Quentin Young
8475c2d62b
Merge pull request #12612 from opensourcerouting/fix/use_quay.io_for_github_actiobns
github: Use quay.io as docker registry for github action generated images
2023-01-10 11:30:00 -05:00
Donald Sharp
c0275ab189 zebra: Continue fpm_read when we decide a netlink message is not needed
When FRR receives a netlink message that it decides to stop parsing
it returns a 0 ( instead of a -1 ).  Just make the dplane continue
reading other data instead of aborting the read.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2023-01-10 08:36:50 -05:00
Mark Stapp
f067ab5d9f bfdd: validate incoming control message length
Apply upper bound on incoming control messages, drop invalid
messages.

Signed-off-by: Mark Stapp <mjs@labn.net>
2023-01-10 08:03:09 -05:00
Donatas Abraitis
6f0898f5e6
Merge pull request #12567 from YutaroHayakawa/YutaroHayakawa/isl-dev
docker,alpine: Remove isl from dependencies
2023-01-10 09:55:01 +02:00
Donatas Abraitis
41aa48cce1
Merge pull request #12614 from chiragshah6/zdev
zebra: Add missing json attributes for show evpn
2023-01-10 09:53:17 +02:00
Sindhu Parvathi Gopinathan
826beeffe6 zebra: Add missing json attributes for show evpn
Missing json attributes added for show evpn json

Before:
```
tor-1# show evpn json
{
  "advertiseGatewayMacip":"No",
  "numVnis":26,
  "numL2Vnis":21,
  "numL3Vnis":5,
  "isDuplicateAddrDetection":true,
  "maxMoves":5,
  "detectionTime":180,
  "detectionFreezeTime":0,
  "macHoldtime":1080,
  "neighHoldtime":1080,
  "startupDelay":180,
  "startupDelayTimer":"--:--:--",
  "uplinkConfigCount":0,
  "uplinkActiveCount":0
}
tor-1#
```

After:
```
tor-1# show evpn json
{
  "advertiseGatewayMacip":"No",
  "advertiseSviMacip":"No",
  "advertiseSviMac":"No",
  "numVnis":26,
  "numL2Vnis":21,
  "numL3Vnis":5,
  "isDuplicateAddrDetection":true,
  "maxMoves":5,
  "detectionTime":180,
  "detectionFreezeTime":0,
  "macHoldtime":1080,
  "neighHoldtime":1080,
  "startupDelay":180,
  "startupDelayTimer":"--:--:--",
  "uplinkConfigCount":0,
  "uplinkActiveCount":0
}
tor-1#
```

Ticket:#3323248

Issue:3323248

Testing: UT done

Signed-off-by: Sindhu Parvathi Gopinathan's <sgopinathan@nvidia.com>
2023-01-09 15:36:41 -08:00
Donatas Abraitis
ed3a0c3bfb github: Use quay.io as docker registry for github action generated images
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-01-09 21:33:39 +02:00
Jafar Al-Gharaibeh
61615e4dfd
Merge pull request #12606 from opensourcerouting/fixes-20230106
*: various build fixes
2023-01-09 12:26:29 -06:00
anlan_cs
99c5b6d430 vtysh: fix build failure for certain case
The build failed if two conditions are met at the same time:

1. Configure with `--disable-dependency-tracking`
2. Set an indenpendent build directory

```
anlan@host:~/frr/build$ make
make: Entering directory '/home/anlan/frr/build'
true
/usr/bin/perl ../vtysh/daemons.pl zebra bgpd ripd ripngd ospfd ospf6d isisd fabricd nhrpd ldpd babeld eigrpd  pimd pim6d pbrd staticd bfdd vrrpd pathd > vtysh/vtysh_daemons.h
/bin/bash: line 1: vtysh/vtysh_daemons.h: No such file or directory
make: *** [Makefile:17644: vtysh/vtysh_daemons.h] Error 1
make: Leaving directory '/home/anlan/frr/build'
```

`~/frr/` is source directory, `~/frr/build/` is the specified build
directory.

So, just create necessary directory - `vtysh/`.

Signed-off-by: anlan_cs <vic.lan@pica8.com>
2023-01-09 09:28:35 +08:00
Donatas Abraitis
a8adf1b3cb
Merge pull request #12573 from Pdoijode/bgp-nexthop-json-changes
Bgp nexthop json changes
2023-01-07 21:01:06 +02:00
Donatas Abraitis
fa1c9d3e22
Merge pull request #12586 from LabNConsulting/chopps/json-cli-note
doc: add guidance for CLI cmds that output JSON
2023-01-07 20:56:26 +02:00
Donatas Abraitis
07e914e924
Merge pull request #12605 from Jafaral/lsa2
ospfd: report the router IP with opaque capability mismatch
2023-01-07 20:43:39 +02:00
David Lamparter
26eaf6e386 build: add doc files missing from dist tarball
The override.css/js files for sphinx docs were not being included into
the tarball created by `make dist`.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2023-01-06 17:07:47 +01:00
David Lamparter
a185874504 lib/clippy: fix symbol validity check
If symvalid is false, looking at symidx is bogus.

This fixes a build-time SEGV on mips64el.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2023-01-06 17:05:25 +01:00
David Lamparter
ee4a6b9f65 lib: disable xref ELF note on mips64el
mips64el does not have a 64-bit PC-relative relocation, which is needed
to emit the ELF note for xrefs.  Disabling the ELF note means clippy
takes the fallback path using section headers, so everything does still
work (... unless you strip the section headers.)

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2023-01-06 17:05:16 +01:00
David Lamparter
ccac11096c zebra: do not load/store wider-than-ptr atomics
Most 32-bit architectures cannot do atomic loads and stores of data
wider than their pointer size, i.e. 32 bit.  Funnily enough they
generally *can* do a CAS2, i.e., 64-bit compare-and-swap, but while a
CAS can emulate atomic add/bitops, loads and stores aren't available.

Replace with a mutex;  since this is 99% used from the zserv thread, the
mutex should take the local-to-thread fast path anyway.  And while one
atomic might be faster than a mutex lock/unlock, we're doing several
here, and at some point a mutex wins on speed anyway.

This fixes build on armel, mipsel, m68k, powerpc, and sh4.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2023-01-06 16:59:02 +01:00
Jafar Al-Gharaibeh
8935b0fac6 ospfd: report the router IP with Opaque capability mismatch
Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
2023-01-06 09:27:18 -06:00
Yutaro Hayakawa
174881bdf9 docker,alpine: Remove isl from dependencies
Alpine upstream changed the name of the isl package to isl-dev. This
caused the build breakage. Since FRR doesn't use it, we chose to solve
this issue by removing it.

Signed-off-by: Yutaro Hayakawa <yutaro.hayakawa@isovalent.com>
2023-01-06 23:48:23 +09:00
Donald Sharp
b15826e81b
Merge pull request #12568 from YutaroHayakawa/YutaroHayakawa/fpm-nexthop
fpm: Send NH message to FPM even if the local kernel doesn't support it
2023-01-06 08:22:31 -05:00
Donald Sharp
99e1cbb084
Merge pull request #12572 from ak503/lib
lib: fix display cputime-warning and walltime-warning
2023-01-06 08:16:02 -05:00
Donald Sharp
092b63fc8f
Merge pull request #12596 from opensourcerouting/fix/frrtrace_arguments
bgpd: Fix the number of arguments for frrtrace()
2023-01-06 07:43:39 -05:00
Donatas Abraitis
f5540d6d41 bgpd: Drop deprecated BGP_ATTR_AS_PATHLIMIT path attribute
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-01-06 14:40:49 +02:00
Donald Sharp
68ff69fa27 zebra: Set metric appropriately on route offload to asic
When FRR receives a route from the kernel about the route
offload success/failure.  The metric being reported is not
going to be correct since we may not know it appropriately
at this point in time.  If we can set the metric to something
appropriate.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2023-01-05 14:31:36 -05:00
Donald Sharp
1cd8bd054c zebra: Fix distance being set incorrectly on kernel offload update
When we are notified about the kernel about a route being offloaded
or not correctly set the distance.

Ticket: CM-33097
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2023-01-05 14:31:36 -05:00
Christian Hopps
b44b66c7bf doc: add guidance for CLI cmds that output JSON
Signed-off-by: Christian Hopps <chopps@labn.net>
2023-01-05 04:33:01 -05:00
Donatas Abraitis
c6b077a56e bgpd: Fix the number of arguments for frrtrace()
For bgp_path_info_add_with_caller().

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-01-05 09:19:43 +02:00
Pooja Jagadeesh Doijode
071ec807cb bgpd: AFI option to query nexthops based on AFI
Added ipv4 and ipv6 option to existing "show bgp nexthop"
command to be able to query nexthops that belong to a
particular address-family.

Also fixed the warnings of MR 12171

Signed-off-by: Pooja Jagadeesh Doijode <pdoijode@nvidia.com>
2023-01-04 18:53:12 -08:00
Donatas Abraitis
b6e91c32e8
Merge pull request #12458 from liron-ze/aggre-route-withdraw
bgpd: Fix aggregated routes are withdrawn abnormally.
2023-01-04 22:50:16 +02:00
Donatas Abraitis
aca2d29f1e
Merge pull request #12571 from Shikugawa/ospfd-json
ospfd: show ospf database info using formatted json
2023-01-04 22:45:34 +02:00
Donatas Abraitis
17d7803c7f
Merge pull request #12589 from mjstapp/fix_zeb_typos
zebra: fix a couple of typos
2023-01-04 22:38:55 +02:00
Rafael Zalamena
d3d497afcd
Merge pull request #12581 from cscarpitta/fix/fix-wrong-interface-name-srv6l3vpn-topotest
tests: Fix wrong interface name in `bgp_srv6l3vpn_route_leak` topotest
2023-01-04 13:30:48 -03:00
kanaya516
4747dddbea isisd: changed to output the LAN-adjacency-sid in yang format
Signed-off-by: kanaya516 <abcs516tk1@gmail.com>
2023-01-04 15:47:43 +00:00
kanaya516
098737293c isisd: changed to output the adjacency-sid in yang format
Signed-off-by: kanaya516 <abcs516tk1@gmail.com>
2023-01-04 15:41:25 +00:00
anlan_cs
07b9f44dfa bgpd: remove one EC log
When creating one interface "vxlan66" ( ip link add vxlan66 type vxlan ... ),
which initially maintains down status, saw one unexpected EC log:

```
zebra[37906]: [ZAG0W-VSNSD] interface vxlan66 vrf default(0) index 35 becomes active.
zebra[37906]: [HPWGA-Y527W] IFLA_VXLAN_LINK missing from VXLAN IF message
...
zebra[37906]: [W6BZR-YZPAB] RTM_NEWLINK update for vxlan66(35) sl_type 0 master 0 flags 0x1002
zebra[37906]: [MR3ZF-ATDBY] Intf vxlan66(35) has gone DOWN
zebra[37906]: [T44X9-FFNVB] Intf vxlan66(35) L2-VNI 66 is DOWN
zebra[37906]: [KEGYY-K8XVV] Send EVPN_DEL 66 to bgp
zebra[37906]: [HPWGA-Y527W] IFLA_VXLAN_LINK missing from VXLAN IF message
bgpd[37911]: [TV0XP-3WR0A] Rx VNI del VRF default VNI 66 tenant-vrf default SVI ifindex 0
bgpd[37911]: [MDW89-YAXJG][EC 33554497] 0: VNI hash entry for VNI 66 not found at DEL
```

Since commit `6f908ded80eeba40a850e8d1f6246fb3ed31e648` support interfaces
from down to down, and bgpd doesn't know "VNI 66" at all. So, remove this
EC log.

Signed-off-by: anlan_cs <vic.lan@pica8.com>
2023-01-04 03:49:39 -05:00
Pooja Jagadeesh Doijode
283ef1b0d3 zebra: Evpn mac vni detail show command
New show command "show evpn mac vni xx detail [json]"
to display details of all the mac entries for the
requested VNI.

Output of show evpn mac vni xx detail json:
        {
          "numMacs":2,
          "macs":{
            "ca:be:63:7c:81:05":{
              "type":"local",
              "intf":"veth100",
              "ifindex":8,
              "uptime":"00:06:55",
              "localSequence":0,
              "remoteSequence":0,
              "detectionCount":0,
              "isDuplicate":false,
              "syncNeighCount":0,
              "neighbors":{
                "active":[
                  "fe80::c8be:63ff:fe7c:8105"
                ],
                "inactive":[
                ]
              }
            }
          }
        }

Also added remoteEs field in the JSON output of
"show evpn mac vni xx json".

Output of show evpn mac vni xx json:
"00:02:00:00:00:0d":{
  "type":"remote",
  "remoteEs":"03:44:38:39:ff:ff:02:00:00:02",
  "localSequence":0,
  "remoteSequence":0,
  "detectionCount":0,
  "isDuplicate":false
}

Signed-off-by: Pooja Jagadeesh Doijode <pdoijode@nvidia.com>
2023-01-03 15:17:58 -08:00
Mark Stapp
3e6ff764a1 zebra: fix a couple of typos
Fix a couple of typos in vty prompt and output text.

Signed-off-by: Mark Stapp <mjs@labn.net>
2023-01-03 15:22:37 -05:00
Donatas Abraitis
23691a80d7
Merge pull request #12318 from gpnaveen/bgp_unique_rid
tests: adding bgp unique router id automation.
2023-01-03 22:18:14 +02:00
Rei Shimizu
ff68181eda ospfd: show ospf database info using formatted json
Signed-off-by: Rei Shimizu <rshimizu@apache.org>
2023-01-03 02:06:35 +00:00
Donatas Abraitis
f6328b3d85
Merge pull request #12566 from Jafaral/lsa-op
ospfd: add advertising router IP to Opaque capability mismatch err msg
2023-01-02 23:12:24 +02:00
Carmine Scarpitta
647c38eab2 tests: Fix wrong interface name in SRv6 topotest
Previously, routes leaked from one VRF to another VRF were associated
with the original nexthop interface.

Commit 14aabc0156 replaced the nexthop
interface with the index of incoming VRF interface.

Due to this change, the `bgp_srv6l3vpn_route_leak` topotest always fails
because it still expects the nexthop interface.

This commit fixes the expected interface name in the
`bgp_srv6l3vpn_route_leak` topotest.

Signed-off-by: Carmine Scarpitta <carmine.scarpitta@uniroma2.it>
2022-12-31 15:58:05 +01:00