diff options
| author | Donald Sharp <sharpd@cumulusnetworks.com> | 2017-05-10 08:45:25 -0400 |
|---|---|---|
| committer | Donald Sharp <sharpd@cumulusnetworks.com> | 2017-07-24 13:51:34 -0400 |
| commit | 6beed98735cb7efc3e4c59aabc13f094bdb8e5cb (patch) | |
| tree | 4fc58219b804e398e4949f67500b54fcf0f2624e | |
| parent | fe232c19489b0ff9003aaa5c37f475d060a1e222 (diff) | |
pimd: Modify pim_mroute_socket_[enable|disable] to be vrf aware
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
| -rw-r--r-- | pimd/pim_mroute.c | 14 | ||||
| -rw-r--r-- | pimd/pim_mroute.h | 4 | ||||
| -rw-r--r-- | pimd/pimd.c | 2 |
3 files changed, 10 insertions, 10 deletions
diff --git a/pimd/pim_mroute.c b/pimd/pim_mroute.c index c92bad6c4d..70dc38c714 100644 --- a/pimd/pim_mroute.c +++ b/pimd/pim_mroute.c @@ -658,7 +658,7 @@ static void mroute_read_off() THREAD_OFF(qpim_mroute_socket_reader); } -int pim_mroute_socket_enable() +int pim_mroute_socket_enable(struct pim_instance *pim) { int fd; @@ -686,31 +686,31 @@ int pim_mroute_socket_enable() return -3; } - pimg->mroute_socket = fd; - pimg->mroute_socket_creation = pim_time_monotonic_sec(); + pim->mroute_socket = fd; + pim->mroute_socket_creation = pim_time_monotonic_sec(); mroute_read_on(); return 0; } -int pim_mroute_socket_disable() +int pim_mroute_socket_disable(struct pim_instance *pim) { - if (pim_mroute_set(pimg->mroute_socket, 0)) { + if (pim_mroute_set(pim->mroute_socket, 0)) { zlog_warn( "Could not disable mroute on socket fd=%d: errno=%d: %s", pimg->mroute_socket, errno, safe_strerror(errno)); return -2; } - if (close(pimg->mroute_socket)) { + if (close(pim->mroute_socket)) { zlog_warn("Failure closing mroute socket: fd=%d errno=%d: %s", pimg->mroute_socket, errno, safe_strerror(errno)); return -3; } mroute_read_off(); - pimg->mroute_socket = -1; + pim->mroute_socket = -1; return 0; } diff --git a/pimd/pim_mroute.h b/pimd/pim_mroute.h index eb6c40b676..2c0d1979d9 100644 --- a/pimd/pim_mroute.h +++ b/pimd/pim_mroute.h @@ -163,8 +163,8 @@ struct igmpmsg { Above: from <linux/mroute.h> */ -int pim_mroute_socket_enable(void); -int pim_mroute_socket_disable(void); +int pim_mroute_socket_enable(struct pim_instance *pim); +int pim_mroute_socket_disable(struct pim_instance *pim); int pim_mroute_add_vif(struct interface *ifp, struct in_addr ifaddr, unsigned char flags); diff --git a/pimd/pimd.c b/pimd/pimd.c index 0db82073af..0d086de077 100644 --- a/pimd/pimd.c +++ b/pimd/pimd.c @@ -269,7 +269,7 @@ void pim_init() } qpim_static_route_list->del = (void (*)(void *))pim_static_route_free; - pim_mroute_socket_enable(); + pim_mroute_socket_enable(pimg); /* |
