diff --git a/slirp/udp.c b/slirp/udp.c index 8cc6cb66da5e5b666402207cb0af06f95efc8971..f77e00f5a072d0ad203eec31fe09cea34d2e4e29 100644 --- a/slirp/udp.c +++ b/slirp/udp.c @@ -152,7 +152,7 @@ udp_input(register struct mbuf *m, int iphlen) * Locate pcb for datagram. */ so = slirp->udp_last_so; - if (so->so_lport != uh->uh_sport || + if (so == &slirp->udb || so->so_lport != uh->uh_sport || so->so_laddr.s_addr != ip->ip_src.s_addr) { struct socket *tmp;