Commit Graph

30591 Commits

Author SHA1 Message Date
Jafar Al-Gharaibeh
b5e08672ea
Merge pull request #11685 from sri-mohan1/sri-ospf
ospfclient: condition optimization
2022-07-28 11:59:53 -05:00
Donatas Abraitis
8ff746efcb
Merge pull request #11695 from donaldsharp/afi_max
bgpd: Ensure we are not using AFI_MAX
2022-07-28 18:32:24 +03:00
Donald Sharp
dda5a082af
Merge pull request #11693 from opensourcerouting/fix/unlock_bgp_dest
bgpd: Unlock bgp_node after bgp_node_lookup
2022-07-28 11:30:11 -04:00
Xiaofeng Liu
5c480b5db3 lib: add a function to configure tcp keepalive parameters
New function setsockopt_tcp_keepalive() is added to enable TCP keepalive
mechanism for specified socket. Also TCP keepalive idle time, interval
and maximum probes are configured.

Signed-off-by: Xiaofeng Liu <xiaofeng.liu@6wind.com>
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2022-07-28 16:42:01 +02:00
mobash-rasool
9982282d41
Merge pull request #11697 from donaldsharp/bgp_work
two things
2022-07-28 17:07:06 +05:30
Donatas Abraitis
a25ae82fd4 bgpd: Unlock bgp_node after bgp_node_lookup
bgp_node_lookup increments lock, we should decrement it after use.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-07-28 14:36:38 +03:00
Donatas Abraitis
e8e28f4f4c
Merge pull request #11701 from kuldeepkash/pim_v6
tests: [PIMv6] Updated topology for static rp suite
2022-07-28 14:33:04 +03:00
Kuldeep Kashyap
855995e505 tests: [PIMv6] Update topology for static rp suite
Updated topology for static rp suite as per testcase.

Signed-off-by: Kuldeep Kashyap <kashyapk@vmware.com>
2022-07-27 19:51:43 -07:00
Mark Stapp
11f9f70c9d
Merge pull request #11696 from sri-mohan1/sri-debug
ospf6d: corrected the debug string
2022-07-27 15:17:23 -04:00
sri-mohan1
abc14fa02b ospf6d: corrected the debug string
Corrected the gramatical error for debug string

Signed-off-by: sri-mohan1 <sri.mohan@samsung.com>
2022-07-27 22:29:02 +05:30
Donald Sharp
c33e80d5f7 ospfd: Coverity warns that we could possibly use unininted data
In ospf_handle_exnl_lsa_lsId_chg there is a code path
where that we may be using uninitialized data for decisions.
Doubtful that this happens but let's make it less likely to
even more.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-07-27 12:17:50 -04:00
Donald Sharp
7622259e3c bgpd: Improve indentation in bgp_updgrp_adv.c
This file was hard to read due to heavy indentation.
Let's fix it up some.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-07-27 12:17:16 -04:00
Donald Sharp
d335feeff8
Merge pull request #11682 from opensourcerouting/frr-format-gcc-12
tools/gcc-plugins: make GCC 12 compatible
2022-07-27 11:44:39 -04:00
Donald Sharp
528d3d87bf
Merge pull request #11689 from opensourcerouting/fix/port_for_unnumbered
bgpd: Allow setting custom port for unnumbered sessions
2022-07-27 11:42:09 -04:00
Donald Sharp
d880a643d7 bgpd: Ensure we are not using AFI_MAX
When using bgp_vty_afi_from_str it can
return AFI_MAX( but in practice never will with
our cli ).  In bgp_default_afi_safi_cmd the code
directly references:
	bgp->default_afi[afi][safi] = TRUE;

and if afi is AFI_MAX FRRR would be accessing
memory where it should not be.

Let's just provide some assurances for coverity
that this never happens.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-07-27 09:36:17 -04:00
Donatas Abraitis
ada423318a tests: Check if BGP as-override works correctly
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-07-27 13:33:11 +03:00
sri-mohan1
ac62d9fdca ospfclient: condition optimization
Its better to check the length and then the type of the LSA

Signed-off-by: sri-mohan1 <sri.mohan@samsung.com>
2022-07-27 14:59:53 +05:30
Donatas Abraitis
c41e93720a bgpd: Reset BGP sessions when changing the port
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-07-27 11:44:07 +03:00
Donatas Abraitis
a3aecc99d5 bgpd: Allow setting custom port for BGP unnumbered peers
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-07-27 11:36:15 +03:00
Martin Winter
8d4abfc9b9
Merge pull request #11164 from kuldeepkash/pim_v6 2022-07-27 10:05:25 +02:00
Donatas Abraitis
6310965c21
Merge pull request #11681 from donaldsharp/valgrind_issues
pimd: Fix a couple coverity issues with mtracebis_netlink.c
2022-07-27 10:51:25 +03:00
Donatas Abraitis
4a16d62977
Merge pull request #11678 from donaldsharp/valgrind_me
Valgrind me
2022-07-27 10:29:29 +03:00
David Lamparter
3d3ed1afb2 tools/gcc-plugins: make GCC 12 compatible
check_function_arguments_recurse() has received a new function argument
in GCC 12.  Fill it in and add a compatibility wrapper.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-07-26 15:38:16 -04:00
Donald Sharp
3816a65da3 pimd: Fix a couple coverity issues with mtracebis_netlink.c
Coverity is complaining that buf has not been initialized.
It has and coverity appears to be confused so let's help it
find the initialization.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-07-26 13:45:27 -04:00
Christian Hopps
594936dd0a
Merge pull request #11679 from donaldsharp/fix_compilation_bgp_vty
bgpd: Remove newlines from zlog, they are not allowed
2022-07-26 12:48:40 -04:00
Donald Sharp
cbdecd685c tests: Fixup more missing pytestmark annotations
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-07-26 12:41:53 -04:00
Donald Sharp
1cf42d6a00 zebra: Fix lost memory on lsp free
When cleaning up memory associated with a lsp the
nhlfe is lost in some cases.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-07-26 12:41:11 -04:00
Donald Sharp
62bf6b4200 bgpd: Fixup pbr rule changes that were missed
In commit: d70a31a3ef

the Zapi ZEBRA_RULE_ADD message was modified but
the bgp version was not updated appropriately and
when zebra received the message it did not properly
read it.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-07-26 12:41:11 -04:00
Donald Sharp
1af6e82b81 bgpd: Remove newlines from zlog, they are not allowed
commit: a486300b26
introduced newlines in zlog_XX messaging.  Not allowed.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-07-26 10:06:38 -04:00
Russ White
2ade1c0059
Merge pull request #11582 from liwg06/master
bgpd: Fixup some MAC address token cli syntax
2022-07-26 09:20:45 -04:00
Russ White
3bf3144517
Merge pull request #11523 from pguibert6WIND/bgp_no_retain
Bgp no retain
2022-07-26 08:50:59 -04:00
Donald Sharp
749cf3c23d
Merge pull request #11674 from opensourcerouting/fix/cleanup_subgrpoup_hash_on_update_group_delete
bgpd: Cleanup subgroup hash when we delete/merge a subgroup
2022-07-25 16:50:03 -04:00
Donatas Abraitis
4d28080cb1 bgpd: Rename baa_new/baa_free/etc functions to be human-readable
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-07-25 16:45:06 +03:00
Donatas Abraitis
e92cf867a6 bgpd: Cleanup subgroup hash when we delete/merge a subgroup
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-07-25 10:20:28 +03:00
Kuldeep Kashyap
dab5ff0030 tests: [PIMv6] Add test_multicast_pimv6_static_rp suite
Adding supporting multicast PIMv6 static rp test
suite.

Signed-off-by: Kuldeep Kashyap <kashyapk@vmware.com>
2022-07-23 21:28:40 -07:00
Kuldeep Kashyap
e13f9c4f31 tests: [PIMv6] APIs for multicast PIMv6 config
Enhanced few exsiting PIM APIs to support both
IPv4 and IPv6 configuration. Added few new APIs
for PIMv6. Tested all existing tests with new
API changes.

Signed-off-by: Kuldeep Kashyap <kashyapk@vmware.com>
2022-07-23 21:28:35 -07:00
Donald Sharp
9c24c1580a
Merge pull request #11666 from opensourcerouting/fix/memory_leak_for_regexp_bgp_aspath
bgpd: Free memory for as-path filter if regexp is wrong
2022-07-23 07:40:30 -04:00
Donatas Abraitis
8fc5cba9f8
Merge pull request #11661 from donaldsharp/bnc_debugs
bgpd: LL peers need bnc's per peer
2022-07-23 13:11:32 +03:00
Donatas Abraitis
3a3a57cb8c
Merge pull request #11656 from donaldsharp/some_memory
Some memory
2022-07-23 13:10:59 +03:00
Donatas Abraitis
f4837b4bf8
Merge pull request #11669 from Chromico/master
topotests: Drop static route
2022-07-23 13:10:43 +03:00
Chromico
668289897b topotests: Drop static route
Signed-off-by: Nathan Mangar <nathan@thundergear.io>
2022-07-23 01:47:26 +04:00
Donald Sharp
ff6db1027f bgpd: Make sure hdr length is at a minimum of what is expected
Ensure that if the capability length specified is enough data.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-07-22 13:56:54 -04:00
Donald Sharp
81e6f2c376
Merge pull request #11652 from pguibert6WIND/path_fini
pathd: add a zebra stop handler
2022-07-22 13:22:37 -04:00
Donald Sharp
49efc80d34 isisd: Ensure rcap is freed in error case
unpack_tlv_router_cap allocates memory that in the error
case is not being freed.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-07-22 13:17:58 -04:00
Donald Sharp
d2aeac3870 ospfclient: Ensure ospf_apiclient_lsa_originate cannot accidently write into stack
Even though OSPF_MAX_LSA_SIZE is quite large and holds the upper bound
on what can be written into a lsa, let's add a small check to ensure
it is not possible to do a bad thing.

This wins one of the long standing bug awards.  2003!

Fixes: #11602
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-07-22 13:17:58 -04:00
Donatas Abraitis
e88307cf3c bgpd: Free memory for as-path filter if regexp is wrong
Before:

```
$ vtysh -c 'sh memory bgpd | include Temporary'; echo ; for x in $(seq 1 1000); do vtysh -c 'conf' -c 'bgp as-path access-list belekas permit wrong' >/dev/null; done; vtysh -c 'sh memory bgpd | include Temporary'
Temporary memory              :       19 variable       504       22       656
Temporary memory              :     1019 variable     24504     1023     24656
```

After:

```
$ vtysh -c 'sh memory bgpd | include Temporary'; echo ; for x in $(seq 1 1000); do vtysh -c 'conf' -c 'bgp as-path access-list belekas permit wrong' >/dev/null; done; vtysh -c 'sh memory bgpd | include Temporary'
Temporary memory              :       19 variable       504       22       656
Temporary memory              :       19 variable       504       24       680
```

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-07-22 17:43:45 +03:00
Rafael Zalamena
b8443f7ad3
Merge pull request #11565 from pguibert6WIND/bfd_vrf_lite_support
bfdd: allow l3vrf bfd sessions without udp leaking
2022-07-22 14:12:17 +00:00
Donald Sharp
efb6140a9b
Merge pull request #11662 from opensourcerouting/fix/call_hooks_when_replacing_asfilter
bgpd: Call a hook when as-path filter is replaced
2022-07-22 09:48:25 -04:00
Donald Sharp
35aae5c9bc bgpd: LL peers need bnc's per peer
FRR should create a bnc per peer.  Not have
one's that write over others.  Currently when
FRR has multiple Interface based peering, BGP wa
creating a single BNC.  This is insufficient in that
we were accidently overwriting the one LL with other
data.  This causes issues when there are multiple and
there is weird starting issues with those interfaces
that you are peering over.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-07-22 09:09:39 -04:00
Donatas Abraitis
f709b31b88 bgpd: Call a hook when as-path filter is replaced
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-07-22 14:16:02 +03:00