]>
git.puffer.fish Git - mirror/frr.git/log
Christian Hopps [Sat, 26 Feb 2022 12:55:32 +0000 (07:55 -0500)]
lib: grpc: initialize uninitialized member variables
fixes #9732, fixes #10578
Signed-off-by: Christian Hopps <chopps@labn.net>
Christian Hopps [Sun, 6 Mar 2022 11:58:22 +0000 (06:58 -0500)]
lib: grpc: do not remove candidate entry too soon
Fix from Rafael Zalamena <rzalamena@opensourcerouting.org>
Signed-off-by: Christian Hopps <chopps@labn.net>
Rafael Zalamena [Mon, 21 Feb 2022 11:28:11 +0000 (06:28 -0500)]
lib: tweak northbound gRPC default timeout
Don't let open sockets hang for too long. This will fix an issue where a
improperly coded client (e.g. socat) could exaust the amount of open
file descriptors.
Documentation:
https://grpc.github.io/grpc/cpp/md_doc_keepalive.html
Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
Donatas Abraitis [Sat, 19 Feb 2022 09:08:29 +0000 (11:08 +0200)]
Merge pull request #10539 from chiragshah6/evpn_dev1
bgpd: evpn route-map match ead type-1 route-type
Jafar Al-Gharaibeh [Fri, 18 Feb 2022 00:51:51 +0000 (18:51 -0600)]
Merge pull request #10604 from mjstapp/fix_staticd_nh_count
staticd: reject route config with too many nexthops
Donatas Abraitis [Thu, 17 Feb 2022 19:58:50 +0000 (21:58 +0200)]
Merge pull request #10591 from donaldsharp/rip_packet_fix
ripd: Fix packet send for non primary addresses
Chirag Shah [Thu, 17 Feb 2022 05:39:43 +0000 (21:39 -0800)]
doc: add description for match evpn route-type
Signed-off-by: Chirag Shah <chirag@nvidia.com>
Chirag Shah [Fri, 11 Feb 2022 03:35:14 +0000 (19:35 -0800)]
bgpd: evpn route-map match esr type-4 route-type
Testing:
After fix:
bharat(config-route-map)# match evpn route-type
1 EAD (Type-1) route
2 MAC-IP (Type-2) route
3 Multicast (Type-3) route
4 Ethernet Segment (Type-4) route <----
5 Prefix (Type-5) route
ead EAD (Type-1) route
es Ethernet Segment (Type-4) route
macip MAC-IP (Type-2) route
multicast Multicast (Type-3) route
prefix Prefix (Type-5) route
bharat(config-route-map)# match evpn route-type 4
bharat(config-route-map)# do show running-config
Building configuration...
...
!
route-map ALLOW_EVPN_R permit 10
match evpn route-type es <----
exit
BGP:
route-map: ALLOW_EVPN_R Invoked: 0 Optimization: enabled Processed Change: false
permit, sequence 10 Invoked 0
Match clauses:
evpn route-type es <-----
Set clauses:
Call clause:
Action:
Exit routemap
Signed-off-by: Chirag Shah <chirag@nvidia.com>
Chirag Shah [Tue, 8 Feb 2022 20:59:16 +0000 (12:59 -0800)]
bgpd: evpn route-map match ead type-1 route-type
Add evpn mh route type-1 (EAD) to match clause
of route-map.
Ticket: issue#10461
Reviewed By:
Testing Done:
With fix:
vtep1(config-route-map)# match evpn route-type
1 EAD (Type-1) route
2 MAC-IP (Type-2) route
3 Multicast (Type-3) route
5 Prefix (Type-5) route
ead EAD (Type-1) route
macip MAC-IP (Type-2) route
multicast Multicast (Type-3) route
prefix Prefix (Type-5) route
vtep1# show running-config bgpd
....
route-map HOST_ALLOW_1 permit 1
match evpn route-type ead
vtep1# show route-map HOST_ALLOW_1
BGP:
route-map: HOST_ALLOW_1 Invoked: 6 Optimization: disabled Processed Change: false
permit, sequence 1 Invoked 6
Match clauses:
ip address prefix-list LOCAL_HOST_VRF1
evpn route-type ead
Signed-off-by: Chirag Shah <chirag@nvidia.com>
Mark Stapp [Thu, 17 Feb 2022 14:49:41 +0000 (09:49 -0500)]
staticd: reject route config with too many nexthops
Restrict the number of nexthops for a route to the compiled-in
limit. Be careful with the zapi route struct's array of nexthops
too.
Signed-off-by: Mark Stapp <mstapp@nvidia.com>
Mark Stapp [Thu, 17 Feb 2022 14:53:25 +0000 (09:53 -0500)]
staticd: capture zebra's advertised ECMP limit
Capture the ECMP limit advertised by zebra (via zapi).
Signed-off-by: Mark Stapp <mstapp@nvidia.com>
Mark Stapp [Thu, 17 Feb 2022 14:48:07 +0000 (09:48 -0500)]
staticd: fix spelling in an error message
whitespace change to fix a typo.
Signed-off-by: Mark Stapp <mstapp@nvidia.com>
Donald Sharp [Thu, 17 Feb 2022 14:41:52 +0000 (09:41 -0500)]
Merge pull request #10557 from alexk99/zebra-fpm-multihop-weight
Zebra FPM: don't lose next hop weights while exporting via FPM
Donald Sharp [Thu, 17 Feb 2022 13:06:14 +0000 (08:06 -0500)]
Merge pull request #10582 from anlancs/pimd-remove-redundant
pimd: remove redundant code
Jafar Al-Gharaibeh [Thu, 17 Feb 2022 05:07:25 +0000 (23:07 -0600)]
Merge pull request #8968 from donaldsharp/route_map_test
tests: Cleanup test_route_map_topo1.py from pylint
Russ White [Thu, 17 Feb 2022 00:20:47 +0000 (19:20 -0500)]
Merge pull request #10547 from donaldsharp/10458
zebra: Keep the interface flags safe on multiple ioctl calls
Donald Sharp [Thu, 1 Jul 2021 11:35:28 +0000 (07:35 -0400)]
tests: Cleanup test_route_map_topo1.py from pylint
noticed that pylint was complaining about some easily
fixable stuff in test_route_map_topo1.py so let's clean
it up some.
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donatas Abraitis [Wed, 16 Feb 2022 20:10:21 +0000 (22:10 +0200)]
Merge pull request #10558 from Jafaral/ospf-net-or-iface
doc: mixing `ip ospf` and `network` commands is not supported
Igor Ryzhov [Wed, 16 Feb 2022 19:15:09 +0000 (22:15 +0300)]
Merge pull request #10598 from mobash-rasool/pim-compile-fix
pimd: Fix Compilation issue in PIM
Jafar Al-Gharaibeh [Wed, 16 Feb 2022 19:11:21 +0000 (13:11 -0600)]
Merge pull request #10561 from mjstapp/nlsock_hash_lock
zebra: make netlink object hash threadsafe
Mobashshera Rasool [Wed, 16 Feb 2022 17:04:08 +0000 (09:04 -0800)]
pimd: Fix Compilation issue in PIM
A recent merge caused this, fixing it.
Signed-off-by: Mobashshera Rasool <mrasool@gmail.com>
Sri Mohana Singamsetty [Wed, 16 Feb 2022 16:44:20 +0000 (08:44 -0800)]
Merge pull request #10590 from donaldsharp/bgp_error_codes
Bgp error codes
Donald Sharp [Wed, 16 Feb 2022 16:26:03 +0000 (11:26 -0500)]
Merge pull request #9224 from SaiGomathiN/saig
pimd: IGMP Query Generation
Mark Stapp [Wed, 16 Feb 2022 15:57:08 +0000 (10:57 -0500)]
Merge pull request #10586 from punithkumar-spk/master
bgpd: uninitialized compiler warning
Donald Sharp [Wed, 16 Feb 2022 14:53:48 +0000 (09:53 -0500)]
Merge pull request #10356 from opensourcerouting/pim6-adjust-
20220117
pim6d: conversion work batch
Russ White [Wed, 16 Feb 2022 02:33:16 +0000 (21:33 -0500)]
Merge pull request #10575 from donaldsharp/bgp_requires_policy
bgp: Add a 6 hour warning to missing policy
Donald Sharp [Wed, 16 Feb 2022 00:47:23 +0000 (19:47 -0500)]
ripd: Fix packet send for non primary addresses
When rip is configured to work on secondary addresses
on an interface, rip was not properly sending out
the packets on secondary addresses because the source of the
packet was never properly being setup and rip would
send the packet out multiple times for the primary address
not once for each address on the interface that is setup to work.
tcpdump + rip debugs output with fix:
2022/02/15 19:59:50 RIP: [ZG173-BHW0K] turn on virbr0
2022/02/15 19:59:51 RIP: [PYB7S-80D89] multicast join at virbr0
2022/02/15 19:59:51 RIP: [GZR24-FCQGG] multicast request on virbr0
2022/02/15 19:59:51 RIP: [JTNCV-XD8S1] rip_send_packet 192.168.122.1 > 224.0.0.9 (virbr0)
2022/02/15 19:59:51 RIP: [VEJY5-67P5X] SEND to 224.0.0.9520
2022/02/15 19:59:51 RIP: [JTNCV-XD8S1] rip_send_packet 73.3.3.8 > 224.0.0.9 (virbr0)
2022/02/15 19:59:51 RIP: [VEJY5-67P5X] SEND to 224.0.0.9520
19:59:51.831128 IP 192.168.122.1.route > rip2-routers.mcast.net.route: RIPv2, Request, length: 24
19:59:51.831161 IP c-73-3-3-8.hsd1.mo.comcast.net.route > rip2-routers.mcast.net.route: RIPv2, Request, length: 24
Fixes: #10588
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Punith Kumar [Tue, 15 Feb 2022 22:07:19 +0000 (22:07 +0000)]
bgpd: Fix uninitialized compiler warning
Signed-off-by: Punith Kumar <punithkumar.spk@gmail.com>
Donald Sharp [Tue, 15 Feb 2022 21:36:30 +0000 (16:36 -0500)]
bgpd: Renumber bgp_create_error_code enum values
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Tue, 15 Feb 2022 20:53:30 +0000 (15:53 -0500)]
bgpd: Convert bgp error codes for cli input to an enum
Conversion of bgp error codes returned for cli input into
an enum and then properly handling all the error cases
in bgp_vty_return.
Because not all error codes returned were properly handled
in this function there existed configuration examples that
were accepted on the cli without an error message but not
saved.
Fixes: #10589
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Tue, 15 Feb 2022 21:12:02 +0000 (16:12 -0500)]
bgpd: Remove unused BGP_ERR_MAX #define
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Tue, 15 Feb 2022 21:04:50 +0000 (16:04 -0500)]
bgpd: Move some error codes to bgp_vty_return handling
BGP_ERR_PEER_GROUP_MEMBER and BGP_ERR_PEER_GROUP_PEER_TYPE_DIFFERENT
both are not handled by bgp_vty_return, but both can be handled by
this function as that there is nothing special going on here.
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Tue, 15 Feb 2022 20:54:53 +0000 (15:54 -0500)]
bgpd: Remove impossible invalid state
confederations are checking to see that the bgp pointer
is non-null. But it's impossible to have a null pointer
in the cli and in all paths we have already deref'ed the bgp
pointer. Let's remove that error code as that it is impossible
to happen.
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Russ White [Tue, 15 Feb 2022 18:19:48 +0000 (13:19 -0500)]
Merge pull request #10571 from rameshabhinay/ospf6_auth_trailer
ospf6d: fix coverity issues.
Russ White [Tue, 15 Feb 2022 17:59:45 +0000 (12:59 -0500)]
Merge pull request #10546 from ton31337/fix/check_for_null_inside_unintern
bgpd: Check for NULL inside aspath_unintern()
Russ White [Tue, 15 Feb 2022 17:58:28 +0000 (12:58 -0500)]
Merge pull request #10555 from anlancs/doc-comment
doc: add "cost" to ospfd "range" command
Russ White [Tue, 15 Feb 2022 17:57:39 +0000 (12:57 -0500)]
Merge pull request #10562 from donaldsharp/starv_warn
lib: Save number of times a thread is starved
Donald Sharp [Mon, 14 Feb 2022 12:57:45 +0000 (07:57 -0500)]
bgp: Add a 15 minute warning to missing policy
Add a 15 minute warning to the logging system when
bgp policy is not setup properly. Operators keep asking
about the missing policy( on upgrade typically ). Let's
try to give them a bit more of a hint when something is
going wrong as that they are clearly missing the other
various places FRR tells them about it.
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Russ White [Tue, 15 Feb 2022 16:33:02 +0000 (11:33 -0500)]
Merge pull request #10573 from ton31337/fix/doc_rc_tag
doc: An example how we do RC tagging for stabilization branch
anlan_cs [Sun, 13 Feb 2022 06:45:02 +0000 (14:45 +0800)]
pimd: remove redundant code
`ifchannel_rb` is already cleaned by `pim_ifchannel_delete_all`, so
it should be removed.
Signed-off-by: anlan_cs <vic.lan@pica8.com>
Donatas Abraitis [Mon, 14 Feb 2022 20:17:54 +0000 (22:17 +0200)]
Merge pull request #10577 from donaldsharp/speeling
Speeling
Donald Sharp [Mon, 14 Feb 2022 17:56:44 +0000 (12:56 -0500)]
zebra: Fix spelling mistake
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Mon, 14 Feb 2022 17:56:21 +0000 (12:56 -0500)]
yang: Fix spelling mistake
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Mon, 14 Feb 2022 17:56:04 +0000 (12:56 -0500)]
vtysh: Fix spelling mistakes
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Mon, 14 Feb 2022 17:55:20 +0000 (12:55 -0500)]
tests: Fix spelling and grammar mistakes
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Mon, 14 Feb 2022 17:54:05 +0000 (12:54 -0500)]
pceplib: Fix spelling mistakes
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Mon, 14 Feb 2022 17:53:48 +0000 (12:53 -0500)]
pathd: Fix spelling mistakes
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Mon, 14 Feb 2022 17:53:16 +0000 (12:53 -0500)]
ospfd: Fix spelling mistakes
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Mon, 14 Feb 2022 17:52:05 +0000 (12:52 -0500)]
ospf6d: Fix spelling mistakes
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Mon, 14 Feb 2022 17:51:22 +0000 (12:51 -0500)]
doc: Fix spelling mistakes
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Donald Sharp [Mon, 14 Feb 2022 17:50:58 +0000 (12:50 -0500)]
bgpd: Fix spelling mistakes
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Abhinay Ramesh [Sat, 12 Feb 2022 12:05:57 +0000 (12:05 +0000)]
ospf6d: fix coverity issues.
Fixed below coverity issues
________________________________________________________________________________________________________
*** CID
1511366 : (TAINTED_SCALAR)
/ospf6d/ospf6_message.c: 2631 in ospf6_make_lsupdate_list()
2625 + OSPF6_HEADER_SIZE)
2626 > ospf6_packet_max(on->ospf6_if)) {
2627 ospf6_fill_header(on->ospf6_if, (*op)->s,
2628 length + OSPF6_HEADER_SIZE);
2629 (*op)->length = length + OSPF6_HEADER_SIZE;
2630 ospf6_fill_lsupdate_header((*op)->s, *lsa_cnt);
>>> CID
1511366 : (TAINTED_SCALAR)
>>> Passing tainted variable "(*op)->length" to a tainted sink.
2631 ospf6_send_lsupdate(on, NULL, *op);
2632
2633 /* refresh packet */
2634 *op = ospf6_packet_new(on->ospf6_if->ifmtu);
2635 length = OSPF6_LS_UPD_MIN_SIZE;
2636 *lsa_cnt = 0;
/ospf6d/ospf6_message.c: 2631 in ospf6_make_lsupdate_list()
2625 + OSPF6_HEADER_SIZE)
2626 > ospf6_packet_max(on->ospf6_if)) {
2627 ospf6_fill_header(on->ospf6_if, (*op)->s,
2628 length + OSPF6_HEADER_SIZE);
2629 (*op)->length = length + OSPF6_HEADER_SIZE;
2630 ospf6_fill_lsupdate_header((*op)->s, *lsa_cnt);
>>> CID
1511366 : (TAINTED_SCALAR)
>>> Passing tainted variable "(*op)->length" to a tainted sink.
2631 ospf6_send_lsupdate(on, NULL, *op);
________________________________________________________________________________________________________
*** CID
1511365 : (TAINTED_SCALAR)
/ospf6d/ospf6_message.c: 2674 in ospf6_make_ls_retrans_list()
2669 if (on->ospf6_if->state == OSPF6_INTERFACE_POINTTOPOINT)
2670 (*op)->dst = allspfrouters6;
2671 else
2672 (*op)->dst = on->linklocal_addr;
2673
>>> CID
1511365 : (TAINTED_SCALAR)
>>> Passing tainted variable "(*op)->length" to a tainted sink.
2674 ospf6_fill_hdr_checksum(on->ospf6_if, *op);
2675 ospf6_packet_add(on->ospf6_if, *op);
2676 OSPF6_MESSAGE_WRITE_ON(on->ospf6_if);
/ospf6d/ospf6_message.c: 2674 in ospf6_make_ls_retrans_list()
2669 if (on->ospf6_if->state == OSPF6_INTERFACE_POINTTOPOINT)
2670 (*op)->dst = allspfrouters6;
2671 else
2672 (*op)->dst = on->linklocal_addr;
2673
>>> CID
1511365 : (TAINTED_SCALAR)
>>> Passing tainted variable "(*op)->length" to a tainted sink.
2674 ospf6_fill_hdr_checksum(on->ospf6_if, *op);
2675 ospf6_packet_add(on->ospf6_if, *op);
2676 OSPF6_MESSAGE_WRITE_ON(on->ospf6_if);
/ospf6d/ospf6_message.c: 2674 in ospf6_make_ls_retrans_list()
2668 ospf6_fill_lsupdate_header((*op)->s, *lsa_cnt);
2669 if (on->ospf6_if->state == OSPF6_INTERFACE_POINTTOPOINT)
2670 (*op)->dst = allspfrouters6;
2671 else
2672 (*op)->dst = on->linklocal_addr;
2673
>>> CID
1511365 : (TAINTED_SCALAR)
>>> Passing tainted variable "(*op)->length" to a tainted sink.
2674 ospf6_fill_hdr_checksum(on->ospf6_if, *op);
2675 ospf6_packet_add(on->ospf6_if, *op);
2676 OSPF6_MESSAGE_WRITE_ON(on->ospf6_if);
________________________________________________________________________________________________________
*** CID
1511364 : Insecure data handling (TAINTED_SCALAR)
/ospf6d/ospf6_message.c: 2125 in ospf6_write()
2120 if (oi->at_data.flags != 0) {
2121 at_len = ospf6_auth_len_get(oi);
2122 if (at_len) {
2123 iovector[0].iov_len =
2124 ntohs(oh->length) + at_len;
>>> CID
1511364 : Insecure data handling (TAINTED_SCALAR)
>>> Passing tainted variable "iovector[0].iov_len" to a tainted sink.
2125 ospf6_auth_digest_send(oi->linklocal_addr, oi,
2126 oh, at_len,
2127 iovector[0].iov_len);
2128 } else {
2129 iovector[0].iov_len = ntohs(oh->length);
2130 }
________________________________________________________________________________________________________
*** CID
1511363 : (DEADCODE)
/ospf6d/ospf6_auth_trailer.c: 275 in ospf6_hash_hmac_sha_digest()
269 case KEYCHAIN_ALGO_HMAC_SHA512:
270 #ifdef CRYPTO_OPENSSL
271 sha512_digest(mes, len, digest);
272 #endif
273 break;
274 case KEYCHAIN_ALGO_NULL:
>>> CID
1511363 : (DEADCODE)
>>> Execution cannot reach this statement: "case KEYCHAIN_ALGO_MAX:".
275 case KEYCHAIN_ALGO_MAX:
276 default:
/ospf6d/ospf6_auth_trailer.c: 274 in ospf6_hash_hmac_sha_digest()
269 case KEYCHAIN_ALGO_HMAC_SHA512:
270 #ifdef CRYPTO_OPENSSL
271 sha512_digest(mes, len, digest);
272 #endif
273 break;
>>> CID
1511363 : (DEADCODE)
>>> Execution cannot reach this statement: "case KEYCHAIN_ALGO_NULL:".
274 case KEYCHAIN_ALGO_NULL:
275 case KEYCHAIN_ALGO_MAX:
276 default:
________________________________________________________________________________________________________
*** CID
1511362 : Insecure data handling (TAINTED_SCALAR)
/ospf6d/ospf6_auth_trailer.c: 541 in ospf6_auth_check_digest()
535
536 auth_len = ntohs(ospf6_auth->length);
537
538 memcpy(temp_hash, ospf6_auth->data, hash_len);
539 memcpy(ospf6_auth->data, apad, hash_len);
540
>>> CID
1511362 : Insecure data handling (TAINTED_SCALAR)
>>> Passing tainted variable "oh_len + auth_len + lls_block_len" to a tainted sink.
541 ospf6_auth_update_digest(oi, oh, ospf6_auth, auth_str,
542 (oh_len + auth_len + lls_block_len),
543 hash_algo);
________________________________________________________________________________________________________
*** CID
1511361 : Insecure data handling (TAINTED_SCALAR)
/ospf6d/ospf6_auth_trailer.c: 124 in ospf6_auth_hdr_dump_recv()
118 at_len = length - (oh_len + lls_len);
119 if (at_len > 0) {
120 ospf6_at_hdr =
121 (struct ospf6_auth_hdr *)((uint8_t *)ospfh + oh_len);
122 at_hdr_len = ntohs(ospf6_at_hdr->length);
123 hash_len = at_hdr_len - OSPF6_AUTH_HDR_MIN_SIZE;
>>> CID
1511361 : Insecure data handling (TAINTED_SCALAR)
>>> Passing tainted variable "hash_len" to a tainted sink.
124 memcpy(temp, ospf6_at_hdr->data, hash_len);
125 temp[hash_len] = '\0';
________________________________________________________________________________________________________
*** CID
1482146 : Insecure data handling (TAINTED_SCALAR)
/ospf6d/ospf6_message.c: 2787 in ospf6_lsupdate_send_neighbor_now()
2781
2782 if (IS_OSPF6_DEBUG_FLOODING
2783 || IS_OSPF6_DEBUG_MESSAGE(OSPF6_MESSAGE_TYPE_LSUPDATE, SEND_HDR))
2784 zlog_debug("%s: Send lsupdate with lsa %s (age %u)", __func__,
2785 lsa->name, ntohs(lsa->header->age));
2786
>>> CID
1482146 : Insecure data handling (TAINTED_SCALAR)
>>> Passing tainted variable "op->length" to a tainted sink.
2787 ospf6_send_lsupdate(on, NULL, op);
Signed-off-by: Abhinay Ramesh <rabhinay@vmware.com>
David Lamparter [Fri, 14 Jan 2022 19:17:46 +0000 (20:17 +0100)]
pim6d: IPv6-adjust pim_msg_send() and related
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Fri, 14 Jan 2022 19:02:36 +0000 (20:02 +0100)]
pim6d: IPv6-adjust pim_ifchannel_*
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Fri, 14 Jan 2022 18:53:55 +0000 (19:53 +0100)]
pim6d: IPv6-adjust assert-related addrs
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Fri, 14 Jan 2022 18:43:37 +0000 (19:43 +0100)]
pim6d: IPv6-adjust jp_agg->group
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Fri, 14 Jan 2022 16:52:36 +0000 (17:52 +0100)]
pim6d: IPv6-adjust iface primary/DR addrs
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Fri, 14 Jan 2022 18:12:32 +0000 (19:12 +0100)]
pim6d: IPv6-adjust pim_upstream addr
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Fri, 14 Jan 2022 17:03:21 +0000 (18:03 +0100)]
pim6d: IPv6-adjust Hello/TLV processing
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Fri, 14 Jan 2022 16:47:14 +0000 (17:47 +0100)]
pim6d: IPv6-adjust neigh->source_addr
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Fri, 14 Jan 2022 15:55:12 +0000 (16:55 +0100)]
pim6d: IPv6-adjust various pim_sgaddr uses
Since `pim_sgaddr` is `pim_addr` now, that causes a whole lot of fallout
anywhere S,G pairs are handled.
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Fri, 14 Jan 2022 16:23:51 +0000 (17:23 +0100)]
pim6d: prepare SSM/filter functions
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Wed, 5 Jan 2022 18:38:17 +0000 (19:38 +0100)]
pim6d: prepare/stub pim_rp_* functions for IPv6
These are sprinkled relatively widely through the PIM codebase, so for
the time being reduce the "compiler warning surface" by moving them
forward to proper types without actual implementations.
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Fri, 14 Jan 2022 15:38:41 +0000 (16:38 +0100)]
pim6d: more TLV parse/encode IPv6 preparation
More proliferation of pim_addr to work towards IPV6.
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Fri, 14 Jan 2022 13:57:21 +0000 (14:57 +0100)]
pim6d: prepare IPv6 address encoding functions
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David Lamparter [Thu, 13 Jan 2022 13:29:09 +0000 (14:29 +0100)]
pim6d: convert address comparison in I_am_DR macro
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Donatas Abraitis [Sun, 13 Feb 2022 19:23:53 +0000 (21:23 +0200)]
doc: An example how we do RC tagging for stabilization branch
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
Mark Stapp [Thu, 10 Feb 2022 18:29:59 +0000 (13:29 -0500)]
zebra: make netlink object hash threadsafe
The recently-added hashtable of nlsock objects needs to be
thread-safe: it's accessed from the main and dplane pthreads.
Add a mutex for it, use wrapper apis when accessing it. Add
a per-OS init/terminate api so we can do init that's not
per-vrf or per-namespace.
Signed-off-by: Mark Stapp <mstapp@nvidia.com>
Jafar Al-Gharaibeh [Fri, 11 Feb 2022 17:37:40 +0000 (11:37 -0600)]
Merge pull request #10533 from taspelund/ip_rule_nl_debugs
zebra: add netlink debugs for ip rules
Donatas Abraitis [Fri, 11 Feb 2022 05:53:02 +0000 (07:53 +0200)]
Merge pull request #9697 from SaiGomathiN/igmp-sources
pimd: json support added
Trey Aspelund [Thu, 10 Feb 2022 21:37:45 +0000 (21:37 +0000)]
zebra: cleanup multiline strings in debug_nl.c
NetDEF CI has been whining about multiline string style.
Make the strings single-line and call it a day.
Signed-off-by: Trey Aspelund <taspelund@nvidia.com>
Trey Aspelund [Tue, 8 Feb 2022 03:37:23 +0000 (03:37 +0000)]
zebra: add netlink debugs for ip rules
Adds functions to parse + decode netlink rules.
Adds RTM_NEWRULE + RTM_DELRULE to "debug zebra kernel".
Signed-off-by: Trey Aspelund <taspelund@nvidia.com>
Russ White [Thu, 10 Feb 2022 19:17:13 +0000 (14:17 -0500)]
Merge pull request #8890 from rameshabhinay/ospf6_auth_trailer
OSPF6: Support OSPF6 authentication trailer RFC 7166
Donald Sharp [Thu, 10 Feb 2022 19:10:26 +0000 (14:10 -0500)]
lib: Save number of times a thread is starved
Add a counter to the number of times a thread is starved from
a timer event and add the output to `show thread cpu`
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Jafar Al-Gharaibeh [Thu, 10 Feb 2022 16:22:02 +0000 (10:22 -0600)]
doc: mixing `ip ospf` and `network` commands is not supported
Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
kiselev99@gmail.com [Thu, 10 Feb 2022 15:47:20 +0000 (18:47 +0300)]
zebra: FPM next hop weights
Don't lose next hop weights while exporting via FPM
Signed-off-by: Alex Kiselev <alex@bisonrouter.com>
Rafael Zalamena [Thu, 10 Feb 2022 13:24:22 +0000 (10:24 -0300)]
Merge pull request #10537 from mjstapp/fix_dplane_strdup
zebra: use frr mem apis in dplane
Donald Sharp [Thu, 10 Feb 2022 13:12:07 +0000 (08:12 -0500)]
Merge pull request #10552 from idryzhov/frr-reload-nodes
tools: fix frr-reload context keywords
Donatas Abraitis [Thu, 10 Feb 2022 12:46:49 +0000 (14:46 +0200)]
Merge pull request #10540 from idryzhov/attr-extra-revert
revert recent bgp attr->extra changes
Igor Ryzhov [Thu, 10 Feb 2022 12:35:21 +0000 (15:35 +0300)]
Merge pull request #10545 from ton31337/feature/get_set_for_lcommunity
bgpd: Use get/set helpers for attr->lcommunity
Donatas Abraitis [Wed, 9 Feb 2022 11:44:25 +0000 (13:44 +0200)]
bgpd: Use get/set helpers for attr->lcommunity
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
Igor Ryzhov [Wed, 9 Feb 2022 10:06:51 +0000 (13:06 +0300)]
Revert "bgpd: Move out ipv6_ecommunity struct from attr to attr_extra"
This reverts commit
2703b7db19cebad82772d5210132dab412b855c3 .
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Igor Ryzhov [Wed, 9 Feb 2022 10:02:12 +0000 (13:02 +0300)]
Revert "bgpd: Move attr->pmsi_tnl_type to attr->extra->pmsi_tnl_type"
This reverts commit
fc6ba64f04696416a1216bb57a7fd72efc5a0904 .
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Igor Ryzhov [Wed, 9 Feb 2022 10:02:02 +0000 (13:02 +0300)]
Revert "bgpd: Free only subattributes, not the whole attr_extra pointer"
This reverts commit
0911206097dc04315bcd6b3accd6236a047a1e06 .
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Donatas Abraitis [Thu, 10 Feb 2022 08:36:06 +0000 (10:36 +0200)]
Merge pull request #10549 from idryzhov/bgp-coverity
bgpd: fix null pointer dereferences
Donatas Abraitis [Thu, 10 Feb 2022 07:02:02 +0000 (09:02 +0200)]
Merge pull request #10550 from idryzhov/bgp-attr-undup
bgpd: remove bgp_attr_undup
Donatas Abraitis [Thu, 10 Feb 2022 06:53:26 +0000 (08:53 +0200)]
Merge pull request #10551 from idryzhov/bgpd-memleaks
bgpd: fix a couple of memleaks
Igor Ryzhov [Wed, 9 Feb 2022 23:51:49 +0000 (02:51 +0300)]
tools: fix frr-reload context keywords
There are singline-line commands inside `router bgp` that start with
`vnc ` or `bmp `. Those commands are currently treated as node-entering
commands. We need to specify such commands more precisely.
Fixes #10548.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Igor Ryzhov [Wed, 9 Feb 2022 22:43:37 +0000 (01:43 +0300)]
bgpd: remove bgp_attr_undup
bgp_attr_undup does the same thing as bgp_attr_flush – frees the
temporary data that might be allocated when applying a route-map. There
is no need to have two separate functions for that.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Igor Ryzhov [Wed, 9 Feb 2022 22:23:41 +0000 (01:23 +0300)]
bgpd: fix aspath memleak on error in vnc_direct_bgp_add_nve
bgp_attr_default_set creates a new empty aspath. If family error happens,
this aspath is not freed. Move attr initialization after we checked the
family.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Igor Ryzhov [Wed, 9 Feb 2022 22:20:03 +0000 (01:20 +0300)]
bgpd: fix aspath memory leak in aggr_suppress_map_test
aspth_empty a couple of lines earlier creates an aspath and it must be
freed.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Igor Ryzhov [Wed, 9 Feb 2022 22:15:57 +0000 (01:15 +0300)]
bgpd: fix missing bgp_attr_flush on errors in bgp_update
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Igor Ryzhov [Wed, 9 Feb 2022 21:14:39 +0000 (00:14 +0300)]
bgpd: fix null pointer dereferences
They were introduced during recent ecommunity rework in
b53e67a3 .
CID
1511347 and
1511348 .
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Russ White [Wed, 9 Feb 2022 17:56:37 +0000 (12:56 -0500)]
Merge pull request #10482 from donaldsharp/zebra_buffering
Zebra buffering
Bijan [Tue, 1 Feb 2022 07:33:00 +0000 (11:03 +0330)]
zebra: Keep the interface flags safe on multiple ioctl calls
Trying to call multiple ioctl calls on ifreq will result in
overwriting ifreq with garbage data. On if_get_flags call,
try to keep the flags field safe from another possible ioctl
call before applying the flags field.
Modified code as per Code Review, done by Donald Sharp.
Signed-off-by: Bijan <bijanebrahimi@riseup.net>
Jafar Al-Gharaibeh [Wed, 9 Feb 2022 15:03:41 +0000 (09:03 -0600)]
Merge pull request #9631 from donaldsharp/more_workflow
doc: Update workflow.rst for release management
Donatas Abraitis [Wed, 9 Feb 2022 14:41:14 +0000 (16:41 +0200)]
bgpd: Check for NULL inside aspath_unintern()
It's not always guarded, just check inside.
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
Donald Sharp [Thu, 16 Sep 2021 18:36:17 +0000 (14:36 -0400)]
doc: Update workflow.rst for release management
Some release management updates
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Abhinay Ramesh [Mon, 28 Jun 2021 09:47:17 +0000 (09:47 +0000)]
tests: Added ospf6 authentication trailer topotest
Have added topotest to verify below combination.
Auth support for md5
Auth support for hmac-sha-256
Auth support with keychain for md5
Auth support with keychain for hmac-sha-256
Have sussessfully run all 4 test cases in my local setup.
Signed-off-by: Abhinay Ramesh <rabhinay@vmware.com>
Abhinay Ramesh [Tue, 8 Jun 2021 12:40:21 +0000 (12:40 +0000)]
ospf6d: Enable the feature using configure.ac
Problem Statement:
=================
The feature is not enabled, needs to be enabled by doing required
initialization.
RCA:
====
Changes to support the feature is present, but the feature macro
needs to be enabled.
Fix:
====
This commit has changes to enable the code.
Risk:
=====
Medium
Need to ensure all existing ospf6 related topotests pass. to ensure
packet processing is not impacted.
Tests Executed:
===============
Have tested the functionality with enabling openssl and also disabling
openssl.
Signed-off-by: Abhinay Ramesh <rabhinay@vmware.com>