diff options
| author | Donald Sharp <sharpd@cumulusnetworks.com> | 2017-05-22 10:35:08 -0400 |
|---|---|---|
| committer | Donald Sharp <sharpd@cumulusnetworks.com> | 2017-07-24 13:51:37 -0400 |
| commit | 472ad3832c1db4802a604e44e049ada8f04b53fa (patch) | |
| tree | d0fc5daa52a3fafa888e8736872adb38f5c60f82 /pimd/pim_msdp_socket.c | |
| parent | 2ad78035cc824f747e64274020140dcd0b95e3fd (diff) | |
pimd: Make msdp `struct pim_instance *` aware
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Diffstat (limited to 'pimd/pim_msdp_socket.c')
| -rw-r--r-- | pimd/pim_msdp_socket.c | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/pimd/pim_msdp_socket.c b/pimd/pim_msdp_socket.c index 9b955d47c6..897a1b3d04 100644 --- a/pimd/pim_msdp_socket.c +++ b/pimd/pim_msdp_socket.c @@ -56,7 +56,7 @@ static void pim_msdp_update_sock_send_buffer_size(int fd) static int pim_msdp_sock_accept(struct thread *thread) { union sockunion su; - struct pim_msdp_listener *listener = THREAD_ARG(thread); + struct pim_instance *pim = THREAD_ARG(thread); int accept_sock; int msdp_sock; struct pim_msdp_peer *mp; @@ -70,9 +70,9 @@ static int pim_msdp_sock_accept(struct thread *thread) zlog_err("accept_sock is negative value %d", accept_sock); return -1; } - listener->thread = NULL; - thread_add_read(master, pim_msdp_sock_accept, listener, accept_sock, - &listener->thread); + pim->msdp.listener.thread = NULL; + thread_add_read(master, pim_msdp_sock_accept, pim, accept_sock, + &pim->msdp.listener.thread); /* accept client connection. */ msdp_sock = sockunion_accept(accept_sock, &su); @@ -83,9 +83,9 @@ static int pim_msdp_sock_accept(struct thread *thread) } /* see if have peer config for this */ - mp = pim_msdp_peer_find(su.sin.sin_addr); + mp = pim_msdp_peer_find(pim, su.sin.sin_addr); if (!mp || !PIM_MSDP_PEER_IS_LISTENER(mp)) { - ++pimg->msdp.rejected_accepts; + ++pim->msdp.rejected_accepts; if (PIM_DEBUG_MSDP_EVENTS) { zlog_err("msdp peer connection refused from %s", sockunion2str(&su, buf, SU_ADDRSTRLEN)); @@ -117,15 +117,15 @@ static int pim_msdp_sock_accept(struct thread *thread) } /* global listener for the MSDP well know TCP port */ -int pim_msdp_sock_listen(void) +int pim_msdp_sock_listen(struct pim_instance *pim) { int sock; int socklen; struct sockaddr_in sin; int rc; - struct pim_msdp_listener *listener = &pimg->msdp.listener; + struct pim_msdp_listener *listener = &pim->msdp.listener; - if (pimg->msdp.flags & PIM_MSDPF_LISTENER) { + if (pim->msdp.flags & PIM_MSDPF_LISTENER) { /* listener already setup */ return 0; } @@ -178,10 +178,10 @@ int pim_msdp_sock_listen(void) listener->fd = sock; memcpy(&listener->su, &sin, socklen); listener->thread = NULL; - thread_add_read(pimg->msdp.master, pim_msdp_sock_accept, listener, sock, + thread_add_read(pim->msdp.master, pim_msdp_sock_accept, pim, sock, &listener->thread); - pimg->msdp.flags |= PIM_MSDPF_LISTENER; + pim->msdp.flags |= PIM_MSDPF_LISTENER; return 0; } |
