]> git.puffer.fish Git - mirror/frr.git/log
mirror/frr.git
11 months agoMerge pull request #15947 from anlancs/isisd/fix-lsp-json
Russ White [Tue, 7 May 2024 15:29:46 +0000 (11:29 -0400)]
Merge pull request #15947 from anlancs/isisd/fix-lsp-json

isisd: fix json display for database command

11 months agoMerge pull request #15627 from Max-Mustermann33/ospf6d_metric_for_type5_lsa
Russ White [Tue, 7 May 2024 15:01:12 +0000 (11:01 -0400)]
Merge pull request #15627 from Max-Mustermann33/ospf6d_metric_for_type5_lsa

ospf6d: Fix metric when sending AS-external LSAs

11 months agoMerge pull request #15922 from anlancs/isisd/fix-unnecessary-check-vrf-cleanup
Russ White [Tue, 7 May 2024 15:00:14 +0000 (11:00 -0400)]
Merge pull request #15922 from anlancs/isisd/fix-unnecessary-check-vrf-cleanup

isisd: remove unnecessary checkings for vrf

11 months agoMerge pull request #15944 from lsang6WIND/fix-same-prefix
Russ White [Tue, 7 May 2024 14:57:56 +0000 (10:57 -0400)]
Merge pull request #15944 from lsang6WIND/fix-same-prefix

if: fix same connected address

11 months agoMerge pull request #15945 from anlancs/isisd/fix-topology-algorithm-show
Russ White [Tue, 7 May 2024 14:57:33 +0000 (10:57 -0400)]
Merge pull request #15945 from anlancs/isisd/fix-topology-algorithm-show

isisd: fix the display topology command

11 months agoMerge pull request #15913 from opensourcerouting/fix/bgpd_no_set_as_prepend
Russ White [Tue, 7 May 2024 14:51:48 +0000 (10:51 -0400)]
Merge pull request #15913 from opensourcerouting/fix/bgpd_no_set_as_prepend

bgpd: Fix `no set as-path prepend ASNUM...`

11 months agoMerge pull request #15899 from gromit1811/ospf6_ecmp_inter_area_bugfix_15777_pr
Russ White [Tue, 7 May 2024 14:48:32 +0000 (10:48 -0400)]
Merge pull request #15899 from gromit1811/ospf6_ecmp_inter_area_bugfix_15777_pr

ospf6d: Fix nexthop computation for inter-area multi-ABR ECMP

11 months agoMerge pull request #15895 from opensourcerouting/fix/ignore_attributes_if_discard_is_...
Russ White [Tue, 7 May 2024 14:44:38 +0000 (10:44 -0400)]
Merge pull request #15895 from opensourcerouting/fix/ignore_attributes_if_discard_is_configured

bgpd: Ignore validating the attribute flags if path-attribute is configured

11 months agoMerge pull request #15846 from Shbinging/fix_ip_ospf_dead_interval_fast_hello
Russ White [Tue, 7 May 2024 13:58:29 +0000 (09:58 -0400)]
Merge pull request #15846 from Shbinging/fix_ip_ospf_dead_interval_fast_hello

ospfd: fix the bug where ip_ospf_dead-interval_minimal_hello-multiplier did not reset hello timer

11 months agoMerge pull request #15883 from opensourcerouting/fix/bgpd_gr_fsm
Russ White [Tue, 7 May 2024 13:56:51 +0000 (09:56 -0400)]
Merge pull request #15883 from opensourcerouting/fix/bgpd_gr_fsm

bgpd: Apply NOOP when doing negative commands for GR operations

11 months agoisisd: fix json display for database command 15947/head
anlan_cs [Tue, 7 May 2024 02:16:00 +0000 (10:16 +0800)]
isisd: fix json display for database command

The current json display lost a lot of LSPs, added them.

Fixed the json format for two commands:
"show isis database detail json"
"show isis database json"

Signed-off-by: anlan_cs <anlan_cs@tom.com>
11 months agoisisd: fix the display topology command 15945/head
anlan_cs [Tue, 7 May 2024 01:08:05 +0000 (09:08 +0800)]
isisd: fix the display topology command

The unconfigured flexible algorithm should not be displayed.

Before:
```
anlan# show isis topology algorithm
Area A: Algorithm 128

Area A:Area A:Area A:Area A:Area A:Area A:Area A:Area A:Area A:Area ...
......
anlan#
```

After:
```
anlan# show isis topology algorithm
Area A: Algorithm 128

anlan#
```

Signed-off-by: anlan_cs <anlan_cs@tom.com>
11 months agoMerge pull request #15594 from idryzhov/mgmt-rpc
Christian Hopps [Mon, 6 May 2024 20:05:50 +0000 (16:05 -0400)]
Merge pull request #15594 from idryzhov/mgmt-rpc

mgmtd: implement YANG RPC/action support

11 months agoif: fix same connected address 15944/head
Loïc Sang [Mon, 6 May 2024 15:30:01 +0000 (17:30 +0200)]
if: fix same connected address

Using the same address with a different prefix length is not supported.
If we configure two identical addresses with different
netmasks 192.168.1.1/30 and then 192.168.1.1/29. Zebra sends
'192.168.1.1' with a prefix length of 29. However, the function
'zebra_interface_address_read()' reads '192.168.1.1/30' because the
prefix length is not checked.

Using 'same_prefix()' is more convenient.

Signed-off-by: Loïc Sang <loic.sang@6wind.com>
11 months agoMerge pull request #15902 from opensourcerouting/build-xref-setup-hppa
Donald Sharp [Mon, 6 May 2024 14:29:05 +0000 (10:29 -0400)]
Merge pull request #15902 from opensourcerouting/build-xref-setup-hppa

build: fix missing `XREF_SETUP` (and HP PA-RISC build failure)

11 months agoMerge pull request #15889 from opensourcerouting/build-libatomic
Donald Sharp [Mon, 6 May 2024 14:27:33 +0000 (10:27 -0400)]
Merge pull request #15889 from opensourcerouting/build-libatomic

build: link libatomic if available

11 months agoMerge pull request #15915 from opensourcerouting/build-format-suseconds
Donald Sharp [Mon, 6 May 2024 14:26:46 +0000 (10:26 -0400)]
Merge pull request #15915 from opensourcerouting/build-format-suseconds

lib, gcc-plugin: fix 64-bit time_t prints

11 months agoMerge pull request #15924 from chiragshah6/fdev5
Donatas Abraitis [Mon, 6 May 2024 07:12:27 +0000 (10:12 +0300)]
Merge pull request #15924 from chiragshah6/fdev5

bgpd: [GR] fix mode change vtysh return code

11 months agoospf6d: Redistribute metric for AS-external route 15627/head
Alexander Rose [Thu, 11 Apr 2024 11:07:33 +0000 (13:07 +0200)]
ospf6d: Redistribute metric for AS-external route

When ospf6d originates an AS-external route that has been read from a kernel
routing table, then the metric of that route was ignored until now.
If a routemap is configured, then this metric will be redistributed from
now on.

Using metric increment and decrement in routemaps is supported by ospf6d now.

Signed-off-by: Alexander Rose <alexander.rose@secunet.com>
11 months agoMerge pull request #15921 from cscarpitta/bgp-fix-srv6-locator-delete-crash
Donatas Abraitis [Mon, 6 May 2024 05:51:24 +0000 (08:51 +0300)]
Merge pull request #15921 from cscarpitta/bgp-fix-srv6-locator-delete-crash

bgpd: Fix crash when deleting the SRv6 locator

11 months agoisisd: remove unnecessary check for vrf 15922/head
anlan_cs [Sat, 4 May 2024 14:56:21 +0000 (22:56 +0800)]
isisd: remove unnecessary check for vrf

The `vrf_name` is always non-NULL in `isisd` code, so remove the
unnecesary check to make it clear.

Signed-off-by: anlan_cs <anlan_cs@tom.com>
11 months agobgpd: Fix the order of NULL check and ZAPI decode 15921/head
Carmine Scarpitta [Sun, 5 May 2024 05:25:57 +0000 (07:25 +0200)]
bgpd: Fix the order of NULL check and ZAPI decode

When BGP receives an SRV6_LOCATOR_ADD message from zebra, it calls the
`bgp_zebra_process_srv6_locator_add()` function to process the message.
`bgp_zebra_process_srv6_locator_add()` decodes the message first, and
then if the pointer to the default BGP instance is NULL (i.e. the
default BGP instance is not configured yet), it returns early without
doing anything and without using the decoded message information.

This commit fixes the order of the operations executed by
`bgp_zebra_process_srv6_locator_add()`. We first ensure that the default
BGP instance is ready and we return early if it is not. Then, we decode
the message and do something with the information contained in it.

Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
11 months agobgpd: [GR] fix mode change vtysh return code 15924/head
Chirag Shah [Fri, 2 Feb 2024 20:11:58 +0000 (12:11 -0800)]
bgpd: [GR] fix mode change vtysh return code

When a bgp neighbor graceful-restart config mode change
is applied, after accepting the config if it does not
take effect instead of throwing vtysh error code,
return the success to vtysh and warn the user.
The debug log is already present at critical code point
where GR failure is seen during config apply.

Ticket: #3761481
Testing Done:

root@tor-1:# vtysh -c 'config t' -c 'router bgp 65564
vrf VRF2' -c 'neighbor 20.1.1.1 graceful-restart'
As part of configuring graceful-restart, capability send to zebra failed
root@tor-1:# echo $?
0

Signed-off-by: Chirag Shah <chirag@nvidia.com>
11 months agoMerge pull request #15917 from anlancs/isisd/fix-display-route
Donatas Abraitis [Sat, 4 May 2024 09:30:17 +0000 (12:30 +0300)]
Merge pull request #15917 from anlancs/isisd/fix-display-route

isisd: adjust the format of display command

11 months agoMerge pull request #15607 from chiragshah6/evpn_dev4
Donatas Abraitis [Sat, 4 May 2024 06:08:04 +0000 (09:08 +0300)]
Merge pull request #15607 from chiragshah6/evpn_dev4

zebra: bridge flap handle vlan membership update

11 months agobgpd: Fix crash when deleting the SRv6 locator
Carmine Scarpitta [Fri, 3 May 2024 21:35:05 +0000 (23:35 +0200)]
bgpd: Fix crash when deleting the SRv6 locator

When BGP receives a `SRV6_LOCATOR_DEL` from zebra, it invokes
`bgp_zebra_process_srv6_locator_delete` to process the message.

`bgp_zebra_process_srv6_locator_delete` obtains a pointer to the default
BGP instance and then dereferences this pointer.

If the default BGP instance is not ready / not configured yet, this
pointer this pointer is `NULL` and dereferencing it causes BGP to crash.

This commit fix the issue by adding a a check to verify if the pointer
is `NULL` and returning early if it is.

Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
11 months agozebra: bridge flap handle vlan membership update 15607/head
Chirag Shah [Fri, 22 Mar 2024 20:25:18 +0000 (13:25 -0700)]
zebra: bridge flap handle vlan membership update

Upon bridge flap, the associated SVD case,
VLAN membership is not updated correctly.
When SVI comes up, the VNI could not associate
with it as bridge VLAN membership was not updated.

Ticket: #3821632

Testing:

Before fix:
-----------
tor-1:#ifdown br_l3vni ; sleep 1 ; ifup br_l3vni
tor-1:# vtysh -c 'show evpn vni 8888'
VNI: 8888
  Type: L3
  Tenant VRF: sym_1
  Vlan: 490
  Bridge: br_l3vni
  Local Vtep Ip: 27.0.0.9
  Vxlan-Intf: vxlan99
  SVI-If: None    <<<<<< SVI not found
  State: Down     <<<<<< status remained in down BGP is not informed
  VNI Filter: none
  System MAC: None
  Router MAC: None
  L2 VNIs: 1800 1801 1900 1901

After fix:
----------

tor-1:# ifdown br_l3vni; sleep 1; ifup br_l3vni
tor-1:# vtysh

Hello, this is FRRouting (version 8.4.3).
Copyright 1996-2005 Kunihiro Ishiguro, et al.

tor-1# show evpn vni 8888
VNI: 8888
  Type: L3
  Tenant VRF: sym_1
  Vlan: 490
  Bridge: br_l3vni
  Local Vtep Ip: 27.0.0.9
  Vxlan-Intf: vxlan99
  SVI-If: vlan490_l3 <<<<<<
  State: Up          <<<<<<
  VNI Filter: none
  System MAC: 44:38:39:ff:ff:29
  Router MAC: 44:38:39:ff:ff:29
  L2 VNIs: 1800 1801 1900 1901

Signed-off-by: Chirag Shah <chirag@nvidia.com>
11 months agoisisd: adjust the format of display command 15917/head
anlan_cs [Fri, 3 May 2024 15:04:05 +0000 (23:04 +0800)]
isisd: adjust the format of display command

Before:
```
anlan# show isis neighbor
Area xx:
  System Id           Interface   L  State        Holdtime SNPA
 0023.0000.0000      enp1s0      2  Down          Expiring2c53.4a30.0820
```

After:
```
anlan# show isis neighbor
Area xx:
 System Id           Interface   L  State         Holdtime SNPA
 0023.0000.0000      enp1s0      2  Down          Expiring 2c53.4a30.0820
```

The `-` display format caused by no hello packet in `isis_adj_print_vty()`
is same as that of above "Expiring".

Signed-off-by: anlan_cs <anlan_cs@tom.com>
11 months agoMerge pull request #15914 from opensourcerouting/build-deprecated-no-error
Donald Sharp [Fri, 3 May 2024 14:48:20 +0000 (10:48 -0400)]
Merge pull request #15914 from opensourcerouting/build-deprecated-no-error

build: exclude deprecated decls from -Werror

11 months agoMerge pull request #15904 from LabNConsulting/chopps/remsleep
Donald Sharp [Fri, 3 May 2024 14:37:47 +0000 (10:37 -0400)]
Merge pull request #15904 from LabNConsulting/chopps/remsleep

tests: remove reliance on time.sleep

11 months agoMerge pull request #15901 from anlancs/zebra/fix-one-comment
Donatas Abraitis [Fri, 3 May 2024 08:09:29 +0000 (11:09 +0300)]
Merge pull request #15901 from anlancs/zebra/fix-one-comment

zebra: clean up one comment

11 months agotests: Modify inter-area ECMP topotest to also test redundant ABRs 15899/head
Martin Buck [Mon, 22 Apr 2024 11:01:22 +0000 (13:01 +0200)]
tests: Modify inter-area ECMP topotest to also test redundant ABRs

So far, this test only convered redundant paths to one ABR, now it checks
redundant paths to redundant ABRs, covering both cases. Useful as a
regression test for #15777.

Signed-off-by: Martin Buck <mb-tmp-tvguho.pbz@gromit.dyndns.org>
11 months agoospf6d: Fix nexthop computation for inter-area multi-ABR ECMP
Martin Buck [Mon, 22 Apr 2024 15:13:23 +0000 (17:13 +0200)]
ospf6d: Fix nexthop computation for inter-area multi-ABR ECMP

Pre-b74e965, we always merged nexthops of old (existing) and new (newly
generated, based on a LSA update) routes, making it impossible to remove
individual nexthops from a route. b74e965 replaced this by copying nexthops
from the new route to the old route. This works as long as the old and new
route are derived from the same LSA (e.g. multiple ECMP paths to the same
ABR). However, in case of multiple parallel ABRs, each of them originates a
LSA and the nexthops derived from them need to be combined to get the proper
route nexthops. So instead of trying to incrementally update the route
nexthops based on the old and new route nexthops, always recompute the route
nexthops by merging all of its path nexthops (which we're already updating
based on the LSA being processed).

Fixes #15777.

Signed-off-by: Martin Buck <mb-tmp-tvguho.pbz@gromit.dyndns.org>
11 months agobgpd: Allow using optional table id for negative `no set table X` command 15913/head
Donatas Abraitis [Fri, 3 May 2024 05:58:21 +0000 (08:58 +0300)]
bgpd: Allow using optional table id for negative `no set table X` command

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
11 months agobuild: hppa is weird 15902/head
David Lamparter [Thu, 2 May 2024 09:00:17 +0000 (11:00 +0200)]
build: hppa is weird

hppa (yes, HP PA-RISC) apparently creates relocations that refer to
".init+0x12345" for everything, referencing way past the end of the
.init section.  While this is only fallback code hit when XREF_SETUP()
is missing (i.e. the FRRouting.XREF ELF note is absent), try to make it
work anyway.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
11 months agobuild: warn/fail on missing `XREF_SETUP()`
David Lamparter [Thu, 2 May 2024 08:57:31 +0000 (10:57 +0200)]
build: warn/fail on missing `XREF_SETUP()`

While clippy tries really, really hard to work under adverse conditions,
and this catches missing XREF_SETUP() on almost all CPU architectures,
this doesn't quite work on hppa.  So, make it a warning on *all*
platforms (or error for --enable-dev-build) in order to catch it before
shipping off to Debian's buildd and blowing up there...

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
11 months ago*: add XREF_SETUP() to libraries and utilites
David Lamparter [Thu, 2 May 2024 08:55:11 +0000 (10:55 +0200)]
*: add XREF_SETUP() to libraries and utilites

This is theoretically not needed if neither DEFUNs nor zlog_* calls are
used, except I'm about to turn it into a build error to catch the cases
where it _is_ necessary.  Which is libmgmt_be_nb.la in this case, where
it causes build failures on hppa.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
11 months agobgpd: Fix `no set as-path prepend ASNUM...`
Donatas Abraitis [Thu, 2 May 2024 20:07:19 +0000 (23:07 +0300)]
bgpd: Fix `no set as-path prepend ASNUM...`

If entering `no set as-path prepend 1 2 3`, it's warned as unknown command.

Now fixed, and the following combinations work fine:

```
no set as-path prepend
no set as-path prepend last-as
no set as-path prepend last-as 1
no set as-path prepend 1
no set as-path prepend 1 2
```

Fixes: https://github.com/FRRouting/frr/issues/15912
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
11 months agotools/gcc-plugins: warn for `suseconds_t` format 15888/head 15915/head
David Lamparter [Tue, 30 Apr 2024 12:13:22 +0000 (14:13 +0200)]
tools/gcc-plugins: warn for `suseconds_t` format

The plugin was already catching attempts to print `time_t` without
casting it first (there is no valid printf specifier without a cast),
but `__suseconds64_t` needs the same treatment.  (Probably
`__suseconds_t` too, if it exists, which I'm not sure it does - but that
doesn't matter, the plugin ignores non-existing types.)

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
11 months agolib: fix `time_t` print without cast
David Lamparter [Tue, 30 Apr 2024 12:18:03 +0000 (14:18 +0200)]
lib: fix `time_t` print without cast

The gcc plugin wasn't warning about printing `suseconds_t` (which is
`time_t`, but in `struct timeval`.)  It needs to be printed with a cast,
just like `time_t`.  Luckily there is only one such usage.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
11 months agoMerge pull request #15837 from acooks-at-bda/dev/fix-deprecated-cares-api
David Lamparter [Thu, 2 May 2024 20:26:16 +0000 (22:26 +0200)]
Merge pull request #15837 from acooks-at-bda/dev/fix-deprecated-cares-api

11 months agobuild: exclude deprecated decls from -Werror 15914/head
David Lamparter [Thu, 2 May 2024 20:07:24 +0000 (22:07 +0200)]
build: exclude deprecated decls from -Werror

Other parts of the system can change (e.g. libc-ares), making things
deprecated, and then our build fails for no reason inside FRR.  This
shouldn't be an error.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
11 months agoMerge pull request #15840 from opensourcerouting/ospf6-iftype-connected-fix
Donald Sharp [Thu, 2 May 2024 14:22:11 +0000 (10:22 -0400)]
Merge pull request #15840 from opensourcerouting/ospf6-iftype-connected-fix

ospf6d: fix interface type vs. connected routes updates

11 months agotests: remove reliance on time.sleep 15904/head
Christian Hopps [Thu, 2 May 2024 10:09:42 +0000 (06:09 -0400)]
tests: remove reliance on time.sleep

Use proper retry loop to wait for state to converge, not some arbitrary delay.

fixes #15878

Signed-off-by: Christian Hopps <chopps@labn.net>
11 months agozebra: clean up one comment 15901/head
anlan_cs [Fri, 28 Apr 2023 23:49:35 +0000 (07:49 +0800)]
zebra: clean up one comment

With the commit `605df8d4`, all real things are moved into dplane.
So the operations mentioned in this comment have nothing to do with
this function `netlink_link_change()`.

Just remove that confusing and useless comment.

Signed-off-by: anlan_cs <anlan_cs@tom.com>
11 months agoMerge pull request #15891 from mjstapp/retry_pathd_sync_conn
Donatas Abraitis [Thu, 2 May 2024 08:18:10 +0000 (11:18 +0300)]
Merge pull request #15891 from mjstapp/retry_pathd_sync_conn

pathd: retry label-manager connection asynchronously

11 months agoMerge pull request #15890 from httpstorm/frr-macOS-section.2024-04-30
David Lamparter [Wed, 1 May 2024 14:55:54 +0000 (16:55 +0200)]
Merge pull request #15890 from httpstorm/frr-macOS-section.2024-04-30

11 months agoMerge pull request #15892 from donaldsharp/parse_attr_problems
Mark Stapp [Wed, 1 May 2024 13:43:11 +0000 (09:43 -0400)]
Merge pull request #15892 from donaldsharp/parse_attr_problems

zebra: Ensure proper decoding of netlink message

11 months agotests: Check if iBGP session can drop invalid AIGP attribute 15895/head
Donatas Abraitis [Wed, 1 May 2024 13:33:52 +0000 (16:33 +0300)]
tests: Check if iBGP session can drop invalid AIGP attribute

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
11 months agobgpd: Ignore validating the attribute flags if path-attribute is configured
Donatas Abraitis [Wed, 1 May 2024 13:01:38 +0000 (16:01 +0300)]
bgpd: Ignore validating the attribute flags if path-attribute is configured

E.g. Cisco sends AIGP attribute as transitive, but it's wrong. Hence, the session
is teared down, because of this bgp_attr_flag_invalid() test.

Relax this check if we have `neighbor X path-attribute <discard|treat-as-withdraw>`
configured.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
11 months agoMerge pull request #15673 from pguibert6WIND/isis_srv6_usid
Donatas Abraitis [Wed, 1 May 2024 05:26:28 +0000 (08:26 +0300)]
Merge pull request #15673 from pguibert6WIND/isis_srv6_usid

lib: fix srv6 locator flags propagated to isis

11 months agoMerge pull request #15874 from pguibert6WIND/bgp_get_sockname_coverity_1585206
Donatas Abraitis [Wed, 1 May 2024 05:24:31 +0000 (08:24 +0300)]
Merge pull request #15874 from pguibert6WIND/bgp_get_sockname_coverity_1585206

bgpd: fix covery ID 1585206

11 months agozebra: Ensure proper decoding of netlink message 15892/head
Donald Sharp [Tue, 30 Apr 2024 14:53:48 +0000 (10:53 -0400)]
zebra: Ensure proper decoding of netlink message

As part of the kernel netlink functionality, it is
possible that a bit of nested attributes can be
passed up.  This attribute has a type value which
is stored in the lower 8 bits and in the upper 8
bits are a couple control flags that can be used.
FRR can parse this data and then just throw away
the value unless we mask off the upper 8 bits.
Let's ensure that it can be properly parsed.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
11 months agopathd: clean up a log message 15891/head
Mark Stapp [Tue, 30 Apr 2024 18:34:58 +0000 (14:34 -0400)]
pathd: clean up a log message

Clean up a typo in a log message.

Signed-off-by: Mark Stapp <mjs@cisco.com>
11 months agopathd: retry synchronous label-manager zapi connection
Mark Stapp [Tue, 30 Apr 2024 18:33:13 +0000 (14:33 -0400)]
pathd: retry synchronous label-manager zapi connection

Be prepared to retry setting up pathd's synchronous zapi session
that's used for label-manager.

Signed-off-by: Mark Stapp <mjs@cisco.com>
11 months agolib: fix error on MacOS 15890/head
Ruben Kerkhof [Wed, 18 Mar 2020 14:40:39 +0000 (15:40 +0100)]
lib: fix error on MacOS

Sections use a different syntax for Mach-O executables.

Fixes:

lib/bfd.c:35:1: error: argument to 'section' attribute is not valid for this target: mach-o section specifier requires a segment and section separated by a
      comma
DEFINE_MTYPE_STATIC(LIB, BFD_INFO, "BFD info")
^
./lib/memory.h:140:2: note: expanded from macro 'DEFINE_MTYPE_STATIC'
        DEFINE_MTYPE_ATTR(group, name, static, desc)                           \
        ^
./lib/memory.h:110:26: note: expanded from macro 'DEFINE_MTYPE_ATTR'
                __attribute__((section(".data.mtypes"))) = { {                 \
                                       ^
1 error generated.

Signed-off-by: Ruben Kerkhof <ruben@rubenkerkhof.com>
Signed-off-by: Georgi Valkov <gvalkov@gmail.com>
11 months agoMerge pull request #15791 from zhou-run/202404182042
Olivier Dugeon [Tue, 30 Apr 2024 14:33:48 +0000 (16:33 +0200)]
Merge pull request #15791 from zhou-run/202404182042

isisd: When the ISIS instance does not exist, the default metric will not be wide.

11 months agoMerge pull request #15653 from pguibert6WIND/link_state_srv6_capas
Olivier Dugeon [Tue, 30 Apr 2024 13:39:11 +0000 (15:39 +0200)]
Merge pull request #15653 from pguibert6WIND/link_state_srv6_capas

Link state srv6 capas

11 months agobuild: link libatomic if available 15889/head
David Lamparter [Tue, 30 Apr 2024 09:52:37 +0000 (11:52 +0200)]
build: link libatomic if available

It'll generally exist but be empty on systems that don't need it.
(Some 32bit platforms now need it due to 64bit time_t, and the platform
may not have 64bit atomic ops.)

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
11 months agoospfd:fix the bug where ip_ospf_dead-interval_minimal_hello-multiplier did not reset... 15846/head
Bing Shui [Thu, 25 Apr 2024 16:02:26 +0000 (16:02 +0000)]
ospfd:fix the bug where ip_ospf_dead-interval_minimal_hello-multiplier did not reset hello timer

Signed-off-by: Bing Shui <652023330037@smail.nju.edu.cn>
11 months agoMerge pull request #15669 from poojarathore30/listen-limit-logging
Donatas Abraitis [Tue, 30 Apr 2024 11:54:19 +0000 (14:54 +0300)]
Merge pull request #15669 from poojarathore30/listen-limit-logging

bgpd : Ensure logging for dynamic neighbor listen limit reached

11 months agobgpd: Apply NOOP when doing negative commands for GR operations 15883/head
Donatas Abraitis [Tue, 30 Apr 2024 10:40:08 +0000 (13:40 +0300)]
bgpd: Apply NOOP when doing negative commands for GR operations

E.g.:

```
% The Graceful Restart command used is not valid at this moment.
zsh: exit 1     vtysh -c configure -c 'router bgp' -c 'no neighbor 127.0.0.1 graceful-restart
1
```

This does not make sense frr-reload to fail.

Instead, just ignore such requests if they are just NOOP.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
11 months agobgpd: Print old/new states of graceful restart FSM
Donatas Abraitis [Tue, 30 Apr 2024 10:38:54 +0000 (13:38 +0300)]
bgpd: Print old/new states of graceful restart FSM

To better debug what's going on before/after.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
12 months agobgpd: fix covery ID 1585206 15874/head
Philippe Guibert [Mon, 29 Apr 2024 13:43:29 +0000 (15:43 +0200)]
bgpd: fix covery ID 1585206

The return value of bgp_getsockname() should always be
checked.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
12 months agoMerge pull request #15619 from opensourcerouting/fix/memory_optimizations
Donald Sharp [Mon, 29 Apr 2024 13:26:03 +0000 (09:26 -0400)]
Merge pull request #15619 from opensourcerouting/fix/memory_optimizations

bgpd: Put BGP_DEBUG/CONF_BGP_DEBUG under ulikely() optimization

12 months agoMerge pull request #15834 from pguibert6WIND/alias_path_iproute2
Donald Sharp [Mon, 29 Apr 2024 13:21:48 +0000 (09:21 -0400)]
Merge pull request #15834 from pguibert6WIND/alias_path_iproute2

tools: add iproute2 alias for pathd daemon

12 months agoMerge pull request #15824 from opensourcerouting/fix/ospf_show_non_default
Donald Sharp [Mon, 29 Apr 2024 13:21:09 +0000 (09:21 -0400)]
Merge pull request #15824 from opensourcerouting/fix/ospf_show_non_default

vtysh: Show `ip ospf network ...` even if it's not the same as the interface type

12 months agoMerge pull request #15839 from opensourcerouting/ospf6-defun-unwreck
Donald Sharp [Mon, 29 Apr 2024 13:18:32 +0000 (09:18 -0400)]
Merge pull request #15839 from opensourcerouting/ospf6-defun-unwreck

ospf6d: fix DEFUN formatting wrecked by clang

12 months agoMerge pull request #15864 from opensourcerouting/fix/graceful_restart_per_neighbor
Donald Sharp [Mon, 29 Apr 2024 13:16:36 +0000 (09:16 -0400)]
Merge pull request #15864 from opensourcerouting/fix/graceful_restart_per_neighbor

tests: Check if Graceful Restart per-neighbor works as expected

12 months agoMerge pull request #15865 from opensourcerouting/fix/drop_duplicate_pytestmark
Donald Sharp [Mon, 29 Apr 2024 13:14:52 +0000 (09:14 -0400)]
Merge pull request #15865 from opensourcerouting/fix/drop_duplicate_pytestmark

tests: A bit of housekeeping for topotests

12 months agobgpd : Ensure logging for dynamic neighbor listen limit reached 15669/head
rathorepo [Thu, 18 Apr 2024 09:53:36 +0000 (09:53 +0000)]
bgpd : Ensure logging for dynamic neighbor listen limit reached

Dynamic neighbors exceeding the listen limit were rejected without appropriate logging.
Previously, only rejection logs were generated, leaving users unaware of when the limit being reached.
Adding a log message for when the listen limit is reached

Signed-off-by: Pooja Rathore <rathorepo@vmware.com>
12 months agoMerge pull request #15670 from poojarathore30/pg-deletion-with-listen-range
Donatas Abraitis [Mon, 29 Apr 2024 08:29:07 +0000 (11:29 +0300)]
Merge pull request #15670 from poojarathore30/pg-deletion-with-listen-range

bgpd : Prevent deletion of BGP peer groups associated to listen range

12 months agoMerge pull request #15851 from chiragshah6/fdev2
Donatas Abraitis [Mon, 29 Apr 2024 08:28:03 +0000 (11:28 +0300)]
Merge pull request #15851 from chiragshah6/fdev2

tools: Handle seq num for BGP as-path in frr-reload.py

12 months agoMerge pull request #15861 from anlancs/fix-bgpd-dead-code
Donatas Abraitis [Mon, 29 Apr 2024 08:25:20 +0000 (11:25 +0300)]
Merge pull request #15861 from anlancs/fix-bgpd-dead-code

bgpd: fix the dead code

12 months agotools: add iproute2 alias for pathd daemon 15834/head
Philippe Guibert [Wed, 24 Apr 2024 15:06:17 +0000 (17:06 +0200)]
tools: add iproute2 alias for pathd daemon

With SRv6 traffic engineering, some ipv6 routes will
be installed by the Pathd daemon.
Populate the iproute2 aliasing table with pathd.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
12 months agotests: Apply black formatting from what frrbot suggested to be happy 15865/head
Donatas Abraitis [Sat, 27 Apr 2024 20:39:48 +0000 (23:39 +0300)]
tests: Apply black formatting from what frrbot suggested to be happy

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
12 months agotests: Add missing check_router_status for bgp_tcp_mss test
Donatas Abraitis [Sat, 27 Apr 2024 20:30:08 +0000 (23:30 +0300)]
tests: Add missing check_router_status for bgp_tcp_mss test

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
12 months agotools: Add black formatting commit to .git-blame-ignore-revs
Donatas Abraitis [Sat, 27 Apr 2024 20:20:58 +0000 (23:20 +0300)]
tools: Add black formatting commit to .git-blame-ignore-revs

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
12 months agotests: Apply black formatting for all tests/topotests
Donatas Abraitis [Sat, 27 Apr 2024 20:19:32 +0000 (23:19 +0300)]
tests: Apply black formatting for all tests/topotests

It's just annoying when the linter tells to apply the formatting for the code
you didn't touch.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
12 months agotests: Drop duplicate pytestmark per file
Donatas Abraitis [Sat, 27 Apr 2024 20:18:15 +0000 (23:18 +0300)]
tests: Drop duplicate pytestmark per file

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
12 months agotests: Drop debug statements from bgp_gr_restart_retain_routes 15864/head
Donatas Abraitis [Sat, 27 Apr 2024 20:09:40 +0000 (23:09 +0300)]
tests: Drop debug statements from bgp_gr_restart_retain_routes

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
12 months agotests: Check if Graceful Restart per-neighbor works as expected
Donatas Abraitis [Sat, 27 Apr 2024 20:06:19 +0000 (23:06 +0300)]
tests: Check if Graceful Restart per-neighbor works as expected

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
12 months agotests: Use a single frr.conf for bgp_gr_restart_retain_routes
Donatas Abraitis [Sat, 27 Apr 2024 20:00:36 +0000 (23:00 +0300)]
tests: Use a single frr.conf for bgp_gr_restart_retain_routes

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
12 months agoMerge pull request #15854 from mjstapp/dump_outofsync_flag
Donatas Abraitis [Sat, 27 Apr 2024 18:16:49 +0000 (21:16 +0300)]
Merge pull request #15854 from mjstapp/dump_outofsync_flag

lib: add ZEBRA_FLAG_OUTOFSYNC to dump_flags function

12 months agobgpd : Prevent deletion of BGP peer groups associated to listen range 15670/head
rathorepo [Wed, 3 Apr 2024 10:54:46 +0000 (10:54 +0000)]
bgpd : Prevent deletion of BGP peer groups associated to listen range

Description:
-----
Deleting a peer group also deletes its associated BGP listen range.
This behaviour is undesired as it could cause unintended configuration changes.

Fix :
-----
-Do not allow peer group deletion until they are no longer associated with any listen range.
-Check the count of listen ranges attached to the group.
If any listen ranges are found, returns a configuration warning, preventing the deletion.

Signed-off-by: Pooja Rathore <rathorepo@vmware.com>
12 months agobgpd: fix the dead code 15861/head
anlan_cs [Sat, 27 Apr 2024 12:59:05 +0000 (20:59 +0800)]
bgpd: fix the dead code

Fixed the Coverity issue 1586018:
Control flow issues (DEADCODE) /bgpd/bgp_ecommunity.c: 1402 in ecommunity_ecom2str()

Signed-off-by: anlan_cs <anlan_cs@tom.com>
12 months agoMerge pull request #15782 from opensourcerouting/fix/drop_srte_color_flag
Russ White [Sat, 27 Apr 2024 12:19:09 +0000 (08:19 -0400)]
Merge pull request #15782 from opensourcerouting/fix/drop_srte_color_flag

bgpd: Drop SRTE_COLOR attribute flag

12 months agoMerge pull request #15848 from donaldsharp/pim_crash_dnode
Jafar Al-Gharaibeh [Sat, 27 Apr 2024 03:28:10 +0000 (22:28 -0500)]
Merge pull request #15848 from donaldsharp/pim_crash_dnode

pimd: fix crash unconfiguring rp keepalive timer

12 months agoMerge pull request #15796 from LabNConsulting/aceelindem/ospf-ospfapi-options
Donatas Abraitis [Fri, 26 Apr 2024 20:31:38 +0000 (23:31 +0300)]
Merge pull request #15796 from LabNConsulting/aceelindem/ospf-ospfapi-options

ospfd: OSPFAPI Server options to limit to local connections and per-instance TCP

12 months agoMerge pull request #15759 from anlancs/doc-isisd-cleanup-1
Donatas Abraitis [Fri, 26 Apr 2024 20:29:58 +0000 (23:29 +0300)]
Merge pull request #15759 from anlancs/doc-isisd-cleanup-1

doc: clean up a few commands for isis

12 months agoMerge pull request #15737 from vjardin/cmake_install_prefix
Donatas Abraitis [Fri, 26 Apr 2024 20:29:29 +0000 (23:29 +0300)]
Merge pull request #15737 from vjardin/cmake_install_prefix

cmake install prefix

12 months agoMerge pull request #15841 from pguibert6WIND/dx6_support
Donatas Abraitis [Fri, 26 Apr 2024 20:25:34 +0000 (23:25 +0300)]
Merge pull request #15841 from pguibert6WIND/dx6_support

zebra, sharpd: add srv6 End.DX6 support

12 months agoMerge pull request #15845 from pguibert6WIND/bmp_improvements
Donatas Abraitis [Fri, 26 Apr 2024 20:24:54 +0000 (23:24 +0300)]
Merge pull request #15845 from pguibert6WIND/bmp_improvements

Bmp improvements about statistics

12 months agolib: add ZEBRA_FLAG_OUTOFSYNC to dump_flags function 15854/head
Mark Stapp [Fri, 26 Apr 2024 18:48:00 +0000 (14:48 -0400)]
lib: add ZEBRA_FLAG_OUTOFSYNC to dump_flags function

Right where the zapi route flags are defined, there's a comment
asking that the flag-dumper-function also be updated.

Also apply clang-format's preferences, so next person won't have
to.

Signed-off-by: Mark Stapp <mjs@cisco.com>
12 months agoMerge pull request #15723 from opensourcerouting/feature/extended_link_bw_refactored_v1
Russ White [Fri, 26 Apr 2024 18:41:05 +0000 (14:41 -0400)]
Merge pull request #15723 from opensourcerouting/feature/extended_link_bw_refactored_v1

bgpd: Implement extended link-bandwidth

12 months agoMerge pull request #15588 from opensourcerouting/sqlite-filename-size
Donald Sharp [Fri, 26 Apr 2024 14:19:05 +0000 (10:19 -0400)]
Merge pull request #15588 from opensourcerouting/sqlite-filename-size

lib: fix SQLite dbfile path length

12 months agopimd: fix crash unconfiguring rp keepalive timer 15848/head
Vijayalaxmi Basavaraj [Mon, 22 Apr 2024 17:55:23 +0000 (10:55 -0700)]
pimd: fix crash unconfiguring rp keepalive timer

pimd crashs while unconfigure of rp ka timer as we are trying to access
a yand dnode(suppress timer) which does not exist at the moment.

User just configured rp keepalive timer and not suppress timer,
the yang dnode would not be present. Instead of directly accessing
yang_dnode_get_unit16, first check the yang node exist using
the xpath.

Ticket: #3874971

Testing:

Before:
------
tor-11(config)# no ip pim rp keep-alive-timer 3000
vtysh: error reading from pimd: Success (0)Warning: closing connection to pimd because of an I/O error!

Broadcast message from root@tor-11 (somewhere) (Mon Apr 22 17:29:12 2024):

cumulus-core: Running cl-support for core files "pimd.25467.1713806952.core"

After:
-----
tor-11(config)# no ip pim rp keep-alive-timer 3000
tor-11(config)#

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Signed-off-by: Vijayalaxmi Basavaraj <vbasavaraj@nvidia.com>
12 months agoMerge pull request #15843 from opensourcerouting/yang-link-netconf-acm
Mark Stapp [Fri, 26 Apr 2024 13:31:44 +0000 (09:31 -0400)]
Merge pull request #15843 from opensourcerouting/yang-link-netconf-acm

yang: ietf-netconf-acm needs to be in libfrr

12 months agoMerge pull request #15850 from donaldsharp/sa_clang_15_some_problems
Mark Stapp [Fri, 26 Apr 2024 12:01:26 +0000 (08:01 -0400)]
Merge pull request #15850 from donaldsharp/sa_clang_15_some_problems

bgpd: Remove unused addition found in clang

12 months agoMerge pull request #15744 from pguibert6WIND/snmp_oid_line73_error
Donald Sharp [Fri, 26 Apr 2024 11:38:42 +0000 (07:38 -0400)]
Merge pull request #15744 from pguibert6WIND/snmp_oid_line73_error

topotests: lib, fix filter out "At line 73 in /usr/share/snmp/mibs/ie…