From 555f1c248bd42d7b11054c8b369e37c31edbed4e Mon Sep 17 00:00:00 2001 From: sam Date: Sat, 8 Nov 2003 23:09:42 +0000 Subject: divert socket fixups: o pickup Giant in divert_packet to protect sbappendaddr since it can be entered through MPSAFE callouts or through ip_input when mpsafenet is 1 o add missing locking on output o add locking to abort and shutdown o add a ctlinput handler to invalidate held routing table references on an ICMP redirect (may not be needed) Supported by: FreeBSD Foundation --- sys/netinet/in_proto.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'sys/netinet/in_proto.c') diff --git a/sys/netinet/in_proto.c b/sys/netinet/in_proto.c index 49bdde8..c57f878 100644 --- a/sys/netinet/in_proto.c +++ b/sys/netinet/in_proto.c @@ -206,7 +206,7 @@ struct protosw inetsw[] = { #endif #ifdef IPDIVERT { SOCK_RAW, &inetdomain, IPPROTO_DIVERT, PR_ATOMIC|PR_ADDR, - div_input, 0, 0, ip_ctloutput, + div_input, 0, div_ctlinput, ip_ctloutput, 0, div_init, 0, 0, 0, &div_usrreqs, -- cgit v1.1