Commit Graph

2038 Commits

Author SHA1 Message Date
Sai Gomathi N
5d613d13b2 pim6d: Adding the base changes
Adding the file pim6_cmd.h and pim6d_cmd.c as the base changes
for implementing the CLI changes

Removed the pim_cmd_init from the stub file.

Co-authored-by: Sarita Patra <saritap@vmware.com>
Co-authored-by: Abhishek N R <abnr@vmware.com>
Co-authored-by: Sai Gomathi N <nsaigomathi@vmware.com>
Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
2022-02-28 01:38:24 -08:00
David Lamparter
d7da6520e9
Merge pull request #10376 from patrasar/master_pimv6_vtysh 2022-02-28 10:26:22 +01:00
David Lamparter
8f26d9da67 pimd: fix unused variable
Fix `-Werror` build.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-26 15:32:48 +01:00
Donald Sharp
3bf65aa1ae
Merge pull request #10400 from opensourcerouting/pim6-compilefix
pim6d: get running with ipv6 types throughout
2022-02-26 08:03:06 -05:00
sarita patra
e8515e32a4 pim6d: Adding PIMV6 as VTYSH client
Co-authored-by: Mobashshera Rasool <mrasool@vmware.com>
Signed-off-by: sarita patra <saritap@vmware.com>
2022-02-25 06:08:42 -08:00
Christian Hopps
7bf63db79b
Merge pull request #10632 from donaldsharp/thread_return_null
*: Change thread->func to return void instead of int
2022-02-24 01:43:48 -05:00
Jafar Al-Gharaibeh
ca6c97340b
Merge pull request #10628 from anlancs/pimd-minors
pimd: cosmetic change
2022-02-23 23:26:58 -06:00
Donald Sharp
cc9f21da22 *: Change thread->func to return void instead of int
The int return value is never used.  Modify the code
base to just return a void instead.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-02-23 19:56:04 -05:00
anlan_cs
de674e9fc2 pimd: cosmetic change
Remove one empty line. And correct one word.

Signed-off-by: anlan_cs <vic.lan@pica8.com>
2022-02-21 21:33:04 +08:00
Mobashshera Rasool
fcfd479d99 pimd: Do not allow 224.0.0.0/24 range in igmp join
224.0.0.0/24 cannot be used by igmp since this is reserved
for routing protocols and other low-level topology discovery or
maintenance protocols.

Fixes: #10614

Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
2022-02-20 22:21:31 -08:00
Donald Sharp
b5bf67e905
Merge pull request #10582 from anlancs/pimd-remove-redundant
pimd: remove redundant code
2022-02-17 08:06:14 -05:00
Mobashshera Rasool
dfc26ad186 pimd: Fix Compilation issue in PIM
A recent merge caused this, fixing it.

Signed-off-by: Mobashshera Rasool <mrasool@gmail.com>
2022-02-16 09:04:08 -08:00
Donald Sharp
7b08708e65
Merge pull request #9224 from SaiGomathiN/saig
pimd: IGMP Query Generation
2022-02-16 11:26:03 -05:00
David Lamparter
ae449dc594 pim6d: remove PIM_V6_TEMP_BREAK
It's no longer necessary, pim6d now compiles without this hack.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-16 16:40:56 +01:00
David Lamparter
94120cb227 pim6d: get into a kinda-working state wrt. zebra
Fix up just enough to make us not operate in complete darkness.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-16 16:40:56 +01:00
David Lamparter
b7f71639c9 pim6d: isolate remaining TODOs into stubs file
This creates `pim6_stubs.c`, which is intended to temporarily provide
stubbed-out definitions of some functions we don't have yet for IPv6.
This makes pim6d compile without the `PIM_V6_TEMP_BREAK` hack, and is
very important as an intermediate step to get a working environment for
further work.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-16 16:40:56 +01:00
David Lamparter
deb76ca4ce pim6d: drop off MLAG code 2022-02-16 16:40:56 +01:00
David Lamparter
5a46a3dea9 pim6d: drop off IGMP code
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-16 16:40:56 +01:00
David Lamparter
809c11a9d8 pim6d: IPv6-adjust BSM code
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-16 16:40:56 +01:00
David Lamparter
f0d63d90bd pim6d: IPv6-adjust static multicast routes
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-16 16:40:56 +01:00
David Lamparter
a9338fa449 pim6d: IPv6-adjust mroute code
This is just hitting the pim_mroute code with a hammer until it doesn't
print warnings anymore.  This is NOT quite tested or working yet, it
just compiles.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-16 16:40:56 +01:00
David Lamparter
89e2cbd38f pim6d: IPv6-adjust northbound code
Just fixing a bunch of compiler errors, this will NOT actually configure
IPv6 PIM properly.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-16 16:32:26 +01:00
David Lamparter
00b1f412a1 pim6d: IPv6-adjust RPF lookups
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-16 16:32:26 +01:00
David Lamparter
101b31041a pim6d: IPv6-adjust upstream_rpf_genid_changed
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-16 16:32:26 +01:00
anlan_cs
c0d217c4e8 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>
2022-02-15 22:49:37 +08:00
David Lamparter
29fd9fca45 pim6d: IPv6-adjust pim_msg_send() and related
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-14 06:45:03 +01:00
David Lamparter
2b844385dc pim6d: IPv6-adjust pim_ifchannel_*
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-14 06:45:03 +01:00
David Lamparter
efd66f7bad pim6d: IPv6-adjust assert-related addrs
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-14 06:45:03 +01:00
David Lamparter
da6bed2bbe pim6d: IPv6-adjust jp_agg->group
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-14 06:45:03 +01:00
David Lamparter
034db86b72 pim6d: IPv6-adjust iface primary/DR addrs
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-14 06:45:03 +01:00
David Lamparter
01adb431d3 pim6d: IPv6-adjust pim_upstream addr
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-14 06:45:03 +01:00
David Lamparter
11928ecf19 pim6d: IPv6-adjust Hello/TLV processing
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-14 06:45:03 +01:00
David Lamparter
9bb93fa04e pim6d: IPv6-adjust neigh->source_addr
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-14 06:45:03 +01:00
David Lamparter
c631920c15 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>
2022-02-14 06:45:03 +01:00
David Lamparter
80d9fa1e68 pim6d: prepare SSM/filter functions
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-14 06:45:03 +01:00
David Lamparter
5d99ebea32 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>
2022-02-14 06:45:03 +01:00
David Lamparter
0d36009204 pim6d: more TLV parse/encode IPv6 preparation
More proliferation of pim_addr to work towards IPV6.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-14 06:45:03 +01:00
David Lamparter
16763d77a3 pim6d: prepare IPv6 address encoding functions
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-14 06:45:03 +01:00
David Lamparter
883052c6f9 pim6d: convert address comparison in I_am_DR macro
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-02-14 06:45:03 +01:00
Donatas Abraitis
f7d8698313
Merge pull request #9697 from SaiGomathiN/igmp-sources
pimd: json support added
2022-02-11 07:53:02 +02:00
Donald Sharp
12da18e059
Merge pull request #10509 from mobash-rasool/fixes2
pimd: Querier to non-querier transistion to be ignored in a case
2022-02-08 14:06:33 -05:00
Donald Sharp
76802e5209
Merge pull request #10292 from opensourcerouting/pim6-addr-aux
pimd: start tackling IPv6 address operations
2022-02-08 13:09:08 -05:00
Donald Sharp
35e5ef55f1 pimd: Modify show ip pim assert to only show interesting bits
`show ip pim assert` shows S,G ifchannel information even when
there is no information available about the assert process.

Fix the code to not dump non-interesting cases.

Fixes: 10462
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-02-07 19:55:00 -05:00
Mobashshera Rasool
5bc4a46b00 pimd: Querier to non-querier transistion to be ignored in a case
As per RFC 2236 section 3, when the leave message is received at a querier,
it starts sending Query messages for "last Member Query Interval*query count"
During this time there should not be any querier to non-querier
transition and the same router needs to send the remaning queries.

Fixes: #10422
Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
2022-02-07 01:46:19 -08:00
Donald Sharp
5f010b1205 pim: Use INADDR_ANY for current_bsr checking is valid yet
In all places that pim_nht_bsr_del is called, the code
needs to not unregister if the current_bsr is INADDR_ANY.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-02-04 10:55:11 -05:00
Donald Sharp
2d51f27f02 pimd: Only remove bsr NHT if we actually have tracked something
I'm now seeing in my log file:

2022/01/28 11:20:05 PIM: [Q0PZ7-QBBN3] attempting to delete nonexistent NHT BSR entry 0.0.0.0
2022/01/28 11:20:05 PIM: [Q0PZ7-QBBN3] attempting to delete nonexistent NHT BSR entry 0.0.0.0
2022/01/28 11:20:06 PIM: [Q0PZ7-QBBN3] attempting to delete nonexistent NHT BSR entry 0.0.0.0

When I run pimd.  Looking at the code there are 3 places where pim_bsm.c removes the
NHT BSR tracking.  In 2 of them the code ensures that the address is already setup
in 1 place it is not.  Fix.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-02-04 10:54:26 -05:00
Donatas Abraitis
3757f96485 bgpd,pimd,isisd,nhrpd: Convert to vty_json()
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2022-01-31 21:20:41 +02:00
Quentin Young
7590fd4965
Merge pull request #10410 from idryzhov/pim-memleaks 2022-01-25 11:41:09 -05:00
Russ White
e48b2fea63
Merge pull request #10411 from idryzhov/if-config-vrf-name
*: do not print vrf name for interface config when using vrf-lite
2022-01-25 11:34:59 -05:00
David Lamparter
414db8e341
Merge pull request #10395 from qlyoung/fix-pim-xpath-buffer-sizes 2022-01-25 17:22:39 +01:00