Commit Graph

34121 Commits

Author SHA1 Message Date
Christian Hopps
ef91d34f01 zebra: add zebra to mgmtd oper-state
Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-28 17:53:40 +00:00
Christian Hopps
4e0147a05e lib: add dedicated API functions for native msgs
- reorg native message header

Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-28 17:53:40 +00:00
Christian Hopps
ad1ccb6e62 lib: northbound: add yielding and batching to oper-state queries
Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-28 17:52:57 +00:00
Christian Hopps
b7db6b2675 lib: darr: add ability to set MTYPE for dynamic arrays
Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-28 17:52:57 +00:00
Christian Hopps
356c01b121 lib: yang: add yang_get_node_keys() function
- comment out unused mem-leaking function.
- improve yang_dnode_get_path return type

Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-28 17:52:57 +00:00
Christian Hopps
60a8cf71f7 tools: add more libyang iter macros to .clang-format
Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-28 17:52:57 +00:00
Christian Hopps
408ee24e41 lib: create and use libyang tree during oper-state walk
Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-28 17:52:57 +00:00
Christian Hopps
d58653a5ba lib: northbound: improve xpath functionality
Allow user to leave keys off of a list entry node at the end of the xpath. This
will return all list entries. Previously there was no way to just get the list
entries. One had to leave off the last list entry node which would then return
all list nodes as well as all the siblings at the same level.

Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-28 17:52:57 +00:00
Christian Hopps
db0211d48a lib: yang: add new functions
- yang_get_key_preds
- yang_lyd_new_list

A function like new_list was added recently to libyang,
this is a compat version.

Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-28 17:52:57 +00:00
Christian Hopps
f3d6edc7ee lib: darr: add new access and str functions
- darr_last(), and darr_strdup_cap().
- strcat, strdup, strlen, strnul equivs.

Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-28 17:52:57 +00:00
Christian Hopps
1bb6f21208 tests: add debugs and count in static_simple test
Also add option to use unified config.

Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-28 17:52:57 +00:00
Christian Hopps
9cd8693363 mgmtd: step 6: remove old unfinished get-data code
Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-28 10:41:54 +00:00
Christian Hopps
8df542b219 mgmtd: step 5: add get-tree txn functionality
Adds the guts of the get-tree functionality that is called by or calls
the FE and BE code for get-tree processing.

Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-28 10:41:54 +00:00
Christian Hopps
be2424a875 mgmtd: step 4: FE adapter get-tree functionality
Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-28 10:41:54 +00:00
Christian Hopps
33b9c2ef00 mgmtd: step 3: BE adapter native message handling
Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-28 10:41:54 +00:00
Christian Hopps
4fee273e9c lib: step 2: mgmtd: BE client code for get-tree functionality
Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-28 10:41:54 +00:00
Christian Hopps
772f6c07c7 lib: step 1: mgmtd: add FE get-tree functionality
Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-28 10:41:54 +00:00
Christian Hopps
80cac370d0 lib: yang: add tree "printing" utility functions
Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-26 08:34:56 -05:00
Christian Hopps
8790457c46 lib: add simplified native msg support
This is intended to replace protobuf use in mgmtd.

Signed-off-by: Christian Hopps <chopps@labn.net>
2023-12-26 08:34:56 -05:00
Quentin Young
080299fe10
Merge pull request #15063 from idryzhov/dev-doc-graphviz
doc: add graphiz dependency for dev docs
2023-12-23 22:50:23 -05:00
Igor Ryzhov
c3c5431da2
Merge pull request #15053 from opensourcerouting/fix/drop_ipv6_address_configured
zebra: Drop ipv6_address_configured() function
2023-12-22 22:13:32 +02:00
Igor Ryzhov
4907ce966b doc: add graphiz dependency for dev docs
There's a graph in cli.rst that needs graphviz to be built.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2023-12-22 16:08:43 +02:00
Donatas Abraitis
eba1c1e23b
Merge pull request #15059 from donaldsharp/generate_support_bundle_on_test_failure
Generate support bundle on test failure
2023-12-22 09:32:32 +02:00
Donatas Abraitis
1225954fb6
Merge pull request #15060 from donaldsharp/keychain_free_no_i_really_mean_it
lib: Keychain.c was using free
2023-12-22 09:31:21 +02:00
Donald Sharp
09fbf2e56d lib: Keychain.c was using free
This is a bit of a bummer that this slipped through
for so long.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2023-12-21 17:01:56 -05:00
Donald Sharp
daa80a5afa tools: Add some more data to support bundles
The ipv[4|6] vpn tables in bgp were not being
gathered.  This would be useful for some situations

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2023-12-21 10:26:47 -05:00
Donald Sharp
1aa6c5ec23 tests: Stop some warning messages on test runs
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2023-12-21 10:24:23 -05:00
Donald Sharp
7477d8732f tests: Auto generate support bundle when a test fails
Tests can fail, let's be proactive and gather up a support
bundle when they fail.  It will help diagnose the problem
to some extent.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2023-12-21 10:22:22 -05:00
Donatas Abraitis
1332be595e zebra: Drop ipv6_address_configured() function
Not used.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-12-21 15:25:27 +02:00
Russ White
bbda45a825
Merge pull request #15047 from LabNConsulting/aceelindem/fix-opaque-functab-leak
ospfd: Fix opaque functab memory leak and opaque AS External LSA cleanup problems
2023-12-20 15:42:25 -05:00
Acee
dec87faab6 ospfd: Fix opaque functab leak and opaque AS cleanup problems
1. Fix ospf opaque LSA function table memory leak.
   2. Remove incorrect one-to-one association of OSPF info-per-type
      to function table (since there many be many).
   3. Fix a problem with opaque AS external cleanup that was exposed
      by #2.
   4. Fix LSA memory leak in ospf_opaque_type9_lsa_if_cleanup().

Signed-off-by: Acee <aceelindem@gmail.com>
2023-12-20 09:43:51 -05:00
Russ White
b6cb72fccd
Merge pull request #15046 from FRRouting/revert-15002-bgp_evpn_label_no_delete
Revert "bgpd: When receiving a label, store it"
2023-12-19 11:42:04 -05:00
Donald Sharp
d1b3f070b1
Revert "bgpd: When receiving a label, store it" 2023-12-19 11:40:24 -05:00
Russ White
a3388fa6b1
Merge pull request #15002 from donaldsharp/bgp_evpn_label_no_delete
bgpd: When receiving a label, store it
2023-12-19 11:34:04 -05:00
Donald Sharp
066f379ffd
Merge pull request #15022 from opensourcerouting/fix/change_to_log.error
tools: Use error log level when failing to execute commands via frr-reload.py
2023-12-18 08:58:09 -05:00
Donald Sharp
490928b6d4
Merge pull request #15036 from opensourcerouting/fix/use_constants_for_addpath_cap_length
bgpd: Use CAPABILITY_CODE_ADDPATH_LEN instead of numeric value
2023-12-18 08:54:39 -05:00
Donald Sharp
b3e5ee5e44
Merge pull request #15037 from opensourcerouting/fix/validate_send_receive_flags
bgpd: Validate Addpath capability flags per AF
2023-12-18 08:54:22 -05:00
Donatas Abraitis
24ecc73274
Merge pull request #15032 from leonshaw/fix/bgp-default-withdraw
bgpd: "default-originate" shouldn't withdraw non-default routes
2023-12-18 12:39:51 +02:00
Xiao Liang
4538247c99 tests: Check for 0.0.0.0/1 in bgp_default_route
Ensure that 0.0.0.0/1 route can be advertised along with
default-originate.

Signed-off-by: Xiao Liang <shaw.leon@gmail.com>
2023-12-18 15:14:33 +08:00
Donatas Abraitis
0f05e56bed bgpd: Validate Addpath capability flags per AF
Send/Receive:
         This field indicates whether the sender is (a) able to receive
         multiple paths from its peer (value 1), (b) able to send
         multiple paths to its peer (value 2), or (c) both (value 3) for
         the <AFI, SAFI>.

         If any other value is received, then the capability SHOULD be
         treated as not understood and ignored [RFC5492].

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-12-17 21:25:51 +02:00
Donatas Abraitis
e09b5afb9d
Merge pull request #15035 from donaldsharp/more_frr_memory_leaks_on_shutdown
More frr memory leaks on shutdown
2023-12-17 12:04:47 +02:00
Donatas Abraitis
66c78c6c58 bgpd: Use CAPABILITY_CODE_ADDPATH_LEN instead of numeric value
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-12-17 12:03:36 +02:00
Donald Sharp
e700069534 nhrpd: Cleanup a hash on nhrp shutdown
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2023-12-16 09:29:00 -05:00
Donald Sharp
f38687b8f5 lib, bgpd, nhrpd: Cleanup memory in lib/resolver on shutdown
This memory was not being cleaned up on shutdown.  Fix this.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2023-12-16 09:18:41 -05:00
Xiao Liang
4d74ba929d bgpd: "default-originate" shouldn't withdraw non-default routes
Prevent "default-originate" from withdrawing non-default routes like
0.0.0.0/1 by checking prefix length.

Signed-off-by: Xiao Liang <shaw.leon@gmail.com>
2023-12-15 18:27:39 +08:00
Donatas Abraitis
a912f8fab7
Merge pull request #15015 from donaldsharp/test_ospf_suppress_fa_cleanup
tests: ospf_suppress_fa sleeps, convert to run_and_expect
2023-12-15 07:01:27 +02:00
Donald Sharp
db4bdf7a3a
Merge pull request #15023 from opensourcerouting/fix/drop_redundant_vrf_name
bgpd: Drop redundant VRF name printing for `show bgp summary`
2023-12-14 20:26:52 -05:00
Mark Stapp
594be7d922
Merge pull request #15025 from donaldsharp/dplane_fpm_nl_wedgied
zebra: Prevent possible wedged fpm write
2023-12-14 16:52:59 -05:00
Donald Sharp
68edff198e
Merge pull request #15026 from Orange-OpenSource/ospf-te
ospfd: Correct LSA parser which fulfill the TED
2023-12-14 16:16:34 -05:00
Olivier Dugeon
55ad785753 tests: Update OSPF TE topotests
The OSPF TE topotest is using switches to interconnect router. During the test,
interfaces are shutdown on some routers to simulate link failure and check that
the TED is correctly updated. However, the switche between router avoid the
detection by the neighbor router that the interface is down i.e. the interface
line remains up as it is conneted to the switch and not to the router.

This patch update the tested topology by removing the switch and connect
directly the router excepted the inter AS link on R3. Interface are also
renamed accordingly.

Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
2023-12-14 18:39:16 +01:00