summaryrefslogtreecommitdiff
path: root/pimd/pim_register.h
AgeCommit message (Collapse)Author
2023-02-09*: auto-convert to SPDX License IDsDavid Lamparter
Done with a combination of regex'ing and banging my head against a wall. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-06-21pim6d: Send register msg with IPv6 global addressMobashshera Rasool
Use global unicast IPv6 address to send the register packet. Fixes: #11235 Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
2022-03-23pim6d: Mroute changesplsaranya
Mroute and supporting changes Signed-off-by: plsaranya <Saranya_Panjarathina@dell.com>
2022-03-10pim6d: Parsing pimv6 register msgMobashshera Rasool
Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
2022-01-12pimd: `prefix_sg` => `pim_sgaddr`David Lamparter
Mostly just 2 sed calls: - `sed -e 's%struct prefix_sg%pim_sgaddr%g'` - `sed -e 's%memset(&sg, 0, sizeof(pim_sgaddr));%memset(\&sg, 0, sizeof(sg));%g'` Plus a bunch of fixing whatever that broke. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2020-03-19pimd: When DR becomes non DR, couldreg state events not handled.saravanank
RCA: Upstreams which are in register state other than noinfo, doesnt remove register tunnel from oif after it becomes nonDR Fix: scan upstreams with iif as the old dr and check if couldReg becomes false. If couldreg becomes false from true, remove regiface and stop reg timer. Do not disturb the entry. Later the entry shall be removed by kat expiry. Signed-off-by: Saravanan K <saravanank@vmware.com>
2019-04-20pimd: extern pim_null_register_sendAnuradha Karuppiah
pim_vxlan will use this for registering the local-VTEP-IP wth the RP independent of the presence of BUM traffic. Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com>
2017-07-24pimd: Remove pimg from pim_register.cDonald Sharp
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-07-17*: reindentreindent-master-afterwhitespace / reindent
indent.py `git ls-files | pcregrep '\.[ch]$' | pcregrep -v '^(ldpd|babeld|nhrpd)/'` Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-05-15*: make consistent & update GPLv2 file headersDavid Lamparter
The FSF's address changed, and we had a mixture of comment styles for the GPL file header. (The style with * at the beginning won out with 580 to 141 in existing files.) Note: I've intentionally left intact other "variations" of the copyright header, e.g. whether it says "Zebra", "Quagga", "FRR", or nothing. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-03-23pimd: Allow SSM groups to co-exist with ASM groups.anuradhak
SSM groups (232/8 or user configured SSM range) can exist in the same multicast network as ASM groups. For such groups all RPT related state machine operations have to be skipped as defined by section 4.8 of RFC4601 - 1. Source registration is skipped for SSM groups. For SSM groups mroute is setup on the FHR when a new multicast flow is rxed; however source registration (i.e. pimreg join) is skipped. This will let the ASIC black hole the traffic till a valid OIL is added to the mroute. 2. (*,G) IGMP registrations are ignored for SSM groups. Sample output: ============= fhr# sh ip pim group-type SSM group range : 232.0.0.0/8 fhr# sh ip pim group-type 232.1.1.1 Group type: SSM fhr# sh ip pim group-type 239.1.1.1 Group type: ASM fhr# Sample config: ============= fhr(config)# ip pim ssm prefix-list ssm-ranges fhr(config)# Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com> Ticket: CM-15344 Testing Done: 1. SSM/ASM source-registration/igmp-joins. 2. On the fly multicast group type changes. 3. pim-smoke.
2016-12-21pimd: Remove dead code from pim_register.cDonald Sharp
Remove the dead test code from pim_register.c Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Add appropriate (S,G) debugs for registerDonald Sharp
When we send a register record the S,G if debugs are turned on. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Fix pim to use correct src address for packetsDonald Sharp
When sending register packets to the RP from the FHR we should be using the ip address of the incoming interface that received the mcast packet. Ticket: CM-12445 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Fix RP shenanigansDonald Sharp
The RP was not properly handling the series of events: 1) When a WRVIFWHOLE is received if we are the RP, send a pim register stop to the FHR. 2) When a register was received we were sending a join (S,G) towards the S, then a immediate prune (S,G) followed by another join (S,G). Just send the first join 3) Save whom we received the S,G register from so we can use it later 4) Allow a join timer to restart itself instead of causing a crash. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: First Schwag at pim_register_stopDonald Sharp
Implement the pim_register_stop state machine. There are still a few bugs still but this is enough to get us rolling a bit more. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Add null_register bit to pim_register_sendDonald Sharp
When sending a pim register message to an RP, we need the ability to set the null bit in the message. This adds the ability to do so. Additionally we need to switch the ip_hdr to a const uint8_t *buf because pim_register_send really shouldn't know or care about the fact it's a 'struct ip'. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Refactor pim message receiveDonald Sharp
We were using a variety of techniques to handle incoming pim packets. Refactor to use a switch statement to handle the incoming packets. Also add the ability to notice that we are getting a register stop. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-07-12pimd: Some Initial Groundwork for register stopDonald Sharp
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-05-25Pimd: pim register send is being sent and received at the RPDonald Sharp
Modify the code to send a register packet upstream to the RP. Packet is currently being received but not properly decoded currently. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-05-25pimd: Start handling of pim REGISTER packet typeDonald Sharp
This code starts the handling of the pim register type. No guarantees that it works correctly, just that it compiles and the start of the code is in there. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-05-25pimd: Start work for handling of register commandDonald Sharp
Start the coding of the REGISTER receive and send. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>