summaryrefslogtreecommitdiff
path: root/pimd/pim_mroute.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2016-07-22 08:57:20 -0400
committerDonald Sharp <sharpd@cumulusnetworks.com>2016-12-21 20:26:03 -0500
commit05e451f828dce67a38ffb234258cfb10660619d7 (patch)
treef9fd19cc3791b4c7b10fb17af1e0a677f3145f7f /pimd/pim_mroute.c
parent99064df9e385acc466ea8b4ee9f53709d0df9b55 (diff)
pimd: Refactor s,g information to struct prefix in pim_upstream.h
This change allows us to pass the (s,g) state around as a prefix. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Diffstat (limited to 'pimd/pim_mroute.c')
-rw-r--r--pimd/pim_mroute.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/pimd/pim_mroute.c b/pimd/pim_mroute.c
index c13f2cbba4..aeb49f770c 100644
--- a/pimd/pim_mroute.c
+++ b/pimd/pim_mroute.c
@@ -97,6 +97,7 @@ pim_mroute_msg_nocache (int fd, struct interface *ifp, const struct igmpmsg *msg
struct pim_ifchannel *ch;
struct pim_upstream *up;
struct pim_rpf *rpg;
+ struct prefix sg;
rpg = RP(msg->im_dst);
/*
@@ -127,6 +128,8 @@ pim_mroute_msg_nocache (int fd, struct interface *ifp, const struct igmpmsg *msg
__PRETTY_FUNCTION__, grp_str, src_str);
}
+ sg.u.sg.src = msg->im_src;
+ sg.u.sg.grp = msg->im_dst;
up = pim_upstream_add(msg->im_src, msg->im_dst, ifp);
if (!up) {
if (PIM_DEBUG_PIM_TRACE) {
@@ -139,8 +142,7 @@ pim_mroute_msg_nocache (int fd, struct interface *ifp, const struct igmpmsg *msg
pim_upstream_keep_alive_timer_start (up, PIM_KEEPALIVE_PERIOD);
- up->channel_oil = pim_channel_oil_add(msg->im_dst,
- msg->im_src,
+ up->channel_oil = pim_channel_oil_add(&sg,
pim_ifp->mroute_vif_index);
if (!up->channel_oil) {
if (PIM_DEBUG_PIM_TRACE) {