Commit Graph

33799 Commits

Author SHA1 Message Date
Louis Scalbert
dae5791c44 bgpd: fix illegal memory access in bgp_ls_tlv_check_size()
Fix illegal memory access bgp_ls_tlv_check_size() if type is 1253.

> CID 1568377 (#4 of 4): Out-of-bounds read (OVERRUN)
> 5. overrun-local: Overrunning array bgp_linkstate_tlv_infos of 1253 16-byte elements at element index 1253 (byte offset 20063) using index type (which evaluates to 1253).

Fixes: 7e0d9ff8ba ("bgpd: display link-state prefixes detail")
Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2023-09-28 15:27:27 +02:00
Louis Scalbert
eb9e286511 bgpd: do not check attr in bgp_packet_attribute
Fix the following coverity issue. attr cannot be NULL.

> CID 1568376 (#1 of 1): Dereference before null check (REVERSE_INULL)
> check_after_deref: Null-checking attr suggests that it may be null, but it has already been dereferenced on all paths leading to the check.

Fixes: 8b531b1107 ("bgpd: store and send bgp link-state attributes")
Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
2023-09-28 15:08:23 +02:00
Donald Sharp
8640fc9c0a
Merge pull request #14494 from idryzhov/mgmtd-show-datastore-contents-crash
mgmtd: fix crash on "show mgmtd datastore-contents"
2023-09-28 09:06:11 -04:00
Donald Sharp
45eec10c83
Merge pull request #14502 from opensourcerouting/fix/document_on_how_to_set_the_distance_from_linux
doc: Add an example on how to set a distance for a route from the kernel
2023-09-28 08:15:25 -04:00
Donatas Abraitis
67e1800e84 doc: Add neighbor capability dynamic command
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-09-28 13:13:52 +03:00
Donatas Abraitis
5952e479e5 doc: Add an example on how to set a distance for a route from the kernel
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-09-28 12:52:15 +03:00
Donatas Abraitis
6a9fe6fac3
Merge pull request #14500 from qlyoung/add-rtd-config
doc: add .readthedocs.yaml configs
2023-09-28 12:36:29 +03:00
Donatas Abraitis
f48f2de17c
Merge pull request #14499 from qlyoung/fix-doc-whitespace-toctree
fix various developer doc issues
2023-09-28 12:36:19 +03:00
Donatas Abraitis
0af4541576
Merge pull request #14498 from idryzhov/fix-conf-t-file-lock
Fixes for `file-lock` mode of configuration node
2023-09-28 10:03:06 +03:00
Quentin Young
f71f078023 doc: add .readthedocs.yaml configs
As of Sep 25 2023, RTD projects require config files to build. This
patch is necessary for docs to continue to build.

Signed-off-by: Quentin Young <qlyoung@qlyoung.net>
2023-09-27 20:16:16 -04:00
Quentin Young
e45651fbd0 doc: include checkpatch & cspf docs in toctree
The documentation pages on checkpatch and CSPF were not reachable
because they were not included in any toctree. Include them in the tree!

Signed-off-by: Quentin Young <qlyoung@qlyoung.net>
2023-09-27 19:55:35 -04:00
Quentin Young
d2292c6bfe doc: fix whitespace, formatting errors
* Fix various whitespace and syntax errors
* Fix a couple tiny grammar mistakes

Signed-off-by: Quentin Young <qlyoung@qlyoung.net>
2023-09-27 19:55:35 -04:00
Igor Ryzhov
1a09cf3894 vtysh: fix entering configuration node in file-lock mode
When the config node is entered in file-lock mode, we should actually
remember it to correctly apply the workaround in `vtysh_exit`.
Otherwise, the file-lock mode is dropped once we exit any node one level
below the config node.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2023-09-28 02:45:05 +03:00
Igor Ryzhov
d3aa9adb8d vty: fix working in file-lock mode
When the configuration node is entered in file-lock mode, candidate
and running datastores are locked. Any configuration change is followed
by an implicit commit which leads to a crash of mgmtd, because double
lock is prohibited by an assert. When working in file-lock mode, we
shouldn't do implicit commits which is disabled by allowing pending
configuration changes.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2023-09-28 02:41:16 +03:00
Jafar Al-Gharaibeh
52cc7f1006
Merge pull request #14222 from opensourcerouting/doc/debian12
[DOC] Debian 12
2023-09-27 17:46:40 -05:00
Jafar Al-Gharaibeh
f5820215f2
Merge pull request #14495 from opensourcerouting/fix/update_releases_table
doc: Fix release dates in workflow
2023-09-27 17:45:05 -05:00
Igor Ryzhov
b8ebb7fc62 vty: fix configure terminal argument descriptions
"terminal" and "file-lock" description are mixed up.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2023-09-27 23:34:53 +03:00
Donald Sharp
60c38a99ac
Merge pull request #14342 from fdumontet6WIND/fix_crash_snmp
bgpd: fix crash in *bgpv2PeerErrorsTable"
2023-09-27 15:25:38 -04:00
Donatas Abraitis
fb5f11ae67 doc: Use backward order when for release dates hint
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-09-27 16:49:56 +03:00
Donatas Abraitis
21d718aa6c doc: Fix release dates in workflow
Align to the release rules:

Releases are scheduled in a 4-month cycle on the first Tuesday each March/July/November.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-09-27 16:45:01 +03:00
Donald Sharp
bb308b1efc
Merge pull request #14482 from opensourcerouting/fix/walltime_threshold_disable
lib: Drop deprecated enable-time-check, enable-cpu-time compile options
2023-09-27 06:32:11 -04:00
Igor Ryzhov
7a8b1875c5 mgmtd: fix crash on "show mgmtd datastore-contents"
When the command is called without specifying the datastore, it crashes.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2023-09-27 13:22:01 +03:00
Martin Winter
e1996b3f4a
doc: Add Debian 12 Build documentation
Signed-off-by: Rodrigo Nardi <rnardi@netdef.org>
Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
2023-09-26 17:44:11 +02:00
Russ White
f289533d5d
Merge pull request #14447 from marcos-ng/master
doc: reference the correct MGMTd show command
2023-09-26 11:43:17 -04:00
Russ White
dbd08a31cc
Merge pull request #14356 from Keelan10/ospf_external_aggregator-leak
ospfd: Fix External Aggregator Leak
2023-09-26 10:18:08 -04:00
Russ White
8e755a03a3
Merge pull request #12649 from louis-6wind/bgp-link-state
bgpd: add basic support of BGP Link-State RFC7752
2023-09-26 10:07:02 -04:00
Donatas Abraitis
2853f14d05 bgpd: Set the TTL for the correct socket
When we accept a connection, we try to set TTL for the socket, but the socket
is not yet created/assigned and we are trying to set it on the wrong socket fd.

```
[Event] connection from 127.0.0.1 fd 25, active peer status 3 fd -1
can't set sockopt IP_TTL 255 to socket -1
bgp_set_socket_ttl: Can't set TxTTL on peer (rtrid 0.0.0.0) socket, err = 9
Unable to set min/max TTL on peer 127.0.0.1, Continuing
```

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-09-25 22:25:32 +03:00
Donald Sharp
c0a681eed5
Merge pull request #14487 from opensourcerouting/fix/doc_bullet_new_line_missing
Some recent documentation adjustments
2023-09-25 09:57:00 -04:00
Donald Sharp
646895a565
Merge pull request #14484 from opensourcerouting/coverity-20230924
lib: assert for VTY_PASSFD expectations
2023-09-25 09:52:23 -04:00
Donatas Abraitis
cd1dc02f89 doc: Use different label to distinguish PBR nexthop groups
/root/frr/doc/user/pbr.rst:32: WARNING: duplicate label nexthop-groups, other instance in /root/frr/doc/user/nexthop_groups.rst

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-09-25 09:33:02 +03:00
Donatas Abraitis
99ccb3a590 doc: Replace frr code highlighting marker to sh
No such thing exists.

 /root/frr/doc/user/ospfd.rst:624: WARNING: Cannot analyze code. No Pygments lexer found for "frr".

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-09-25 09:28:42 +03:00
Donatas Abraitis
d677be63f8 doc: Drop bullet point from ospfd documentation
/root/frr/doc/user/ospfd.rst:609: WARNING: Bullet list ends without a blank line; unexpected unindent.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-09-25 09:27:21 +03:00
David Lamparter
ee5dd0a081 lib: assert for VTY_PASSFD expectations
Coverity is complaining that vty->state could be VTY_PASSFD here.  It
can't, it really shouldn't, and if it actually is then something went
seriously wrong somewhere earlier so assert()ing out is the best thing
to do.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2023-09-24 20:14:37 +02:00
Donatas Abraitis
1c829fac8e
Merge pull request #14467 from cscarpitta/bugfix/fix-srv6-isis-memleaks
isisd: Fix memory leaks when IS-IS fails to process an SRv6 locator chunk
2023-09-24 20:47:15 +03:00
Donatas Abraitis
56d8305481
Merge pull request #14473 from cscarpitta/bugfix/fix-srv6-topotest-warning
tests: Fix DeprecationWarning in SRv6 L3VPN topotest
2023-09-24 20:47:07 +03:00
Donatas Abraitis
fd0fe0bb6a lib: Drop deprecated enable-time-check, enable-cpu-time compile options
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-09-24 20:41:24 +03:00
Donatas Abraitis
a2a9733fec
Merge pull request #14468 from donaldsharp/bgp_send_ordering
bgpd: Ensure send order is 100% consistent
2023-09-24 16:48:44 +03:00
Donald Sharp
9d9c6dc01e
Merge pull request #14476 from anlancs/fix/pimd-remove-fd-close
pimd: remove redundant closing socket
2023-09-23 18:43:43 -04:00
Donald Sharp
e0b37a21be
Merge pull request #14475 from opensourcerouting/fix/unset_per_afi_stuff_when_dynamic_UNSET_received
Clear per afi/safi stuff for GR/LLGR when dynamic capability with UNSET action received
2023-09-23 09:51:47 -04:00
Donald Sharp
7d12e26121
Merge pull request #14464 from opensourcerouting/fix/dampening_crash
bgpd: Fix dampening info crash
2023-09-23 09:51:01 -04:00
Donald Sharp
4f0db0daaf
Merge pull request #14470 from opensourcerouting/fix/rewrite_dynamic_capabilities_tests
tests: Improve BGP dynamic capability tests
2023-09-23 09:50:43 -04:00
anlan_cs
411e16a1c7 pimd: remove redundant closing socket
The socket has been closed in `ssmpingd_setsockopt()` in the wrong cases,
so remove the redundant closing socket from outer layer.

Signed-off-by: anlan_cs <anlan_cs@tom.com>
2023-09-23 21:06:32 +08:00
Donatas Abraitis
61bd60b984 bgpd: Flush per AFI/SAFI capabilities flags, stale_time for LLGR cap
Clear to defaults if receiving dynamic capability with UNSET action.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-09-22 20:50:07 +03:00
Donatas Abraitis
f793136d18 bgpd: Clear graceful-restart per AFI/SAFI capability flags when receiving unset
We flushed the main capability received flag, but missed flushing per AFI/SAFI.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-09-22 20:50:06 +03:00
Carmine Scarpitta
71ed1868d6 tests: Fix DeprecationWarning in SRv6 L3VPN topotest
Fix the following warning:

tests/topotests/bgp_srv6l3vpn_sid/test_bgp_srv6l3vpn_sid.py:42
  /media/SharedUTM/workspace/frr/tests/topotests/bgp_srv6l3vpn_sid/test_bgp_srv6l3vpn_sid.py:42: DeprecationWarning: invalid escape sequence '\ '

In test_bgp_srv6l3vpn_sid.py we have a comment containing some '\'
characters. Python mistakenly tries to interpret such "\" characters
as escape sequences, which leads to the above warning.

Let's tell Python to treat the comment as a raw string,
so that it simply treats backslashes as literal characters rather than
escape sequences.

Signed-off-by: Carmine Scarpitta <cscarpit@cisco.com>
2023-09-22 18:43:42 +02:00
Rafael Zalamena
aed94c8096 lib: don't announce prefix delete for duplicates
When deleting a duplicated prefix list entry don't announce the change
to route map listeners, otherwise they will be removing rules that
shouldn't be removed causing the prefix that still exist in the
prefix-list to be not evaluated anymore.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2023-09-22 13:03:28 -03:00
Rafael Zalamena
71fb99d22e Revert "lib : fix duplicate prefix list delete"
This reverts commit 394ed767e7.
2023-09-22 12:24:16 -03:00
Donald Sharp
eceb1cab6d
Merge pull request #14450 from kuldeepkash/general_fixes
tests: Adding BGP convergence verification before starting PIM tests
2023-09-22 09:53:03 -04:00
Donald Sharp
1adbce9b1d
Merge pull request #14458 from opensourcerouting/fix/update_doc_for_vtysh
doc: domainname MUST be manually written to vtysh.conf also
2023-09-22 09:51:01 -04:00
Donald Sharp
f327f2e8ae
Merge pull request #14463 from mjstapp/fix_bgp_ctime_r
bgpd: fix return of local from ctime_r
2023-09-22 09:47:33 -04:00