diff options
| author | Sam Leffler <sam@FreeBSD.org> | 2003-11-08 22:51:18 +0000 |
|---|---|---|
| committer | Sam Leffler <sam@FreeBSD.org> | 2003-11-08 22:51:18 +0000 |
| commit | 1d78192b35f25532650e095d1ab84b31d3dd6683 (patch) | |
| tree | 7287e48a209fc94cac58dd4cc5c492f3349e616d | |
| parent | e3f268fc89e690d4294cfe1dc3aafbc79086e0b8 (diff) | |
Notes
| -rw-r--r-- | sys/netinet/ip_mroute.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/netinet/ip_mroute.c b/sys/netinet/ip_mroute.c index a7265ac1b3f7..447cc27c5b27 100644 --- a/sys/netinet/ip_mroute.c +++ b/sys/netinet/ip_mroute.c @@ -1289,10 +1289,13 @@ static int socket_send(struct socket *s, struct mbuf *mm, struct sockaddr_in *src) { if (s) { + mtx_lock(&Giant); /* XXX until sockets are locked */ if (sbappendaddr(&s->so_rcv, (struct sockaddr *)src, mm, NULL) != 0) { sorwakeup(s); + mtx_unlock(&Giant); return 0; } + mtx_unlock(&Giant); } m_freem(mm); return -1; |
