--- bsd/conf/MASTER.orig	2007-10-29 20:59:23.000000000 -0700
+++ bsd/conf/MASTER	2009-10-09 01:37:42.000000000 -0700
@@ -446,5 +446,6 @@
 pseudo-device	sdt		1	init	sdt_init	# <config_dtrace>
 pseudo-device	systrace	1	init	systrace_init	# <config_dtrace>
 pseudo-device	fbt		1	init	fbt_init	# <config_dtrace>
 pseudo-device	profile_prvd	1	init	profile_init	# <config_dtrace>
 
+options		RAW4ALL
--- bsd/kern/uipc_socket.c.orig	2007-10-29 20:58:55.000000000 -0700
+++ bsd/kern/uipc_socket.c	2009-10-09 01:37:03.000000000 -0700
@@ -515,11 +515,15 @@
 	TAILQ_INIT(&so->so_comp);
 	so->so_type = type;
 
 	if (p != 0) {
 		so->so_uid = kauth_cred_getuid(kauth_cred_get());
+#ifdef RAW4ALL
+		if (!suser(kauth_cred_get(), NULL) || prp -> pr_type == SOCK_RAW)
+#else
 		if (!suser(kauth_cred_get(), NULL))
+#endif /* RAW4ALL */
 			so->so_state = SS_PRIV;
 	}
 	so->so_proto = prp;
 #ifdef __APPLE__
 	so->so_rcv.sb_flags |= SB_RECV;	/* XXX */
