diff --git a/sys/netinet/raw_ip.c b/sys/netinet/raw_ip.c index 8c92315e42df..67a71160690f 100644 --- a/sys/netinet/raw_ip.c +++ b/sys/netinet/raw_ip.c @@ -1,4 +1,4 @@ -/* $NetBSD: raw_ip.c,v 1.55 2001/02/26 07:20:44 itojun Exp $ */ +/* $NetBSD: raw_ip.c,v 1.56 2001/07/03 08:06:19 itojun Exp $ */ /* * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. @@ -450,6 +450,7 @@ rip_usrreq(so, req, m, nam, control, p) (struct ifnet *)control, p)); if (req == PRU_PURGEIF) { + in_pcbpurgeif0(&rawcbtable, (struct ifnet *)control); in_purgeif((struct ifnet *)control); in_pcbpurgeif(&rawcbtable, (struct ifnet *)control); return (0); diff --git a/sys/netinet/tcp_usrreq.c b/sys/netinet/tcp_usrreq.c index d8e9d25a8e97..6bfcb90e03d8 100644 --- a/sys/netinet/tcp_usrreq.c +++ b/sys/netinet/tcp_usrreq.c @@ -1,4 +1,4 @@ -/* $NetBSD: tcp_usrreq.c,v 1.61 2001/03/20 20:07:52 thorpej Exp $ */ +/* $NetBSD: tcp_usrreq.c,v 1.62 2001/07/03 08:06:19 itojun Exp $ */ /* * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. @@ -206,12 +206,14 @@ tcp_usrreq(so, req, m, nam, control, p) switch (family) { #ifdef INET case PF_INET: + in_pcbpurgeif0(&tcbtable, (struct ifnet *)control); in_purgeif((struct ifnet *)control); in_pcbpurgeif(&tcbtable, (struct ifnet *)control); break; #endif #ifdef INET6 case PF_INET6: + in6_pcbpurgeif0(&tcb6, (struct ifnet *)control); in6_purgeif((struct ifnet *)control); in6_pcbpurgeif(&tcb6, (struct ifnet *)control); break; diff --git a/sys/netinet/udp_usrreq.c b/sys/netinet/udp_usrreq.c index 5766bbd1cc78..feee7094acf3 100644 --- a/sys/netinet/udp_usrreq.c +++ b/sys/netinet/udp_usrreq.c @@ -1,4 +1,4 @@ -/* $NetBSD: udp_usrreq.c,v 1.79 2001/06/27 23:40:50 itojun Exp $ */ +/* $NetBSD: udp_usrreq.c,v 1.80 2001/07/03 08:06:20 itojun Exp $ */ /* * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. @@ -1379,6 +1379,7 @@ udp_usrreq(so, req, m, nam, control, p) (struct ifnet *)control, p)); if (req == PRU_PURGEIF) { + in_pcbpurgeif0(&udbtable, (struct ifnet *)control); in_purgeif((struct ifnet *)control); in_pcbpurgeif(&udbtable, (struct ifnet *)control); return (0); diff --git a/sys/netinet6/raw_ip6.c b/sys/netinet6/raw_ip6.c index f11e4819827b..8ce84ced5ad1 100644 --- a/sys/netinet6/raw_ip6.c +++ b/sys/netinet6/raw_ip6.c @@ -1,4 +1,4 @@ -/* $NetBSD: raw_ip6.c,v 1.32 2001/05/08 10:15:15 itojun Exp $ */ +/* $NetBSD: raw_ip6.c,v 1.33 2001/07/03 08:06:20 itojun Exp $ */ /* $KAME: raw_ip6.c,v 1.76 2001/04/29 13:45:09 itojun Exp $ */ /* @@ -601,6 +601,7 @@ rip6_usrreq(so, req, m, nam, control, p) (struct ifnet *)control, p)); if (req == PRU_PURGEIF) { + in6_pcbpurgeif0(&rawin6pcb, (struct ifnet *)control); in6_purgeif((struct ifnet *)control); in6_pcbpurgeif(&rawin6pcb, (struct ifnet *)control); return (0); diff --git a/sys/netinet6/udp6_usrreq.c b/sys/netinet6/udp6_usrreq.c index 9858d7fc6520..29950486cc29 100644 --- a/sys/netinet6/udp6_usrreq.c +++ b/sys/netinet6/udp6_usrreq.c @@ -1,4 +1,4 @@ -/* $NetBSD: udp6_usrreq.c,v 1.43 2001/05/27 17:36:07 itojun Exp $ */ +/* $NetBSD: udp6_usrreq.c,v 1.44 2001/07/03 08:06:20 itojun Exp $ */ /* $KAME: udp6_usrreq.c,v 1.86 2001/05/27 17:33:00 itojun Exp $ */ /* @@ -610,6 +610,7 @@ udp6_usrreq(so, req, m, addr6, control, p) (struct ifnet *)control, p)); if (req == PRU_PURGEIF) { + in6_pcbpurgeif0(&udb6, (struct ifnet *)control); in6_purgeif((struct ifnet *)control); in6_pcbpurgeif(&udb6, (struct ifnet *)control); return (0);