1 /* uipc_proto.c 6.3 84/08/29 */ 2 3 #include "param.h" 4 #include "socket.h" 5 #include "protosw.h" 6 #include "domain.h" 7 #include "mbuf.h" 8 9 /* 10 * Definitions of protocols supported in the UNIX domain. 11 */ 12 13 int uipc_usrreq(); 14 int raw_init(),raw_usrreq(),raw_input(),raw_ctlinput(); 15 extern struct domain unixdomain; /* or at least forward */ 16 17 struct protosw unixsw[] = { 18 { SOCK_STREAM, &unixdomain, 0, PR_CONNREQUIRED|PR_WANTRCVD, 19 0, 0, 0, 0, 20 uipc_usrreq, 21 0, 0, 0, 0, 22 }, 23 { SOCK_DGRAM, &unixdomain, 0, PR_ATOMIC|PR_ADDR|PR_RIGHTS, 24 0, 0, 0, 0, 25 uipc_usrreq, 26 0, 0, 0, 0, 27 }, 28 { 0, 0, 0, 0, 29 raw_input, 0, raw_ctlinput, 0, 30 raw_usrreq, 31 raw_init, 0, 0, 0, 32 } 33 }; 34 35 int unp_externalize(), unp_dispose(); 36 37 struct domain unixdomain = 38 { AF_UNIX, "unix", 0, unp_externalize, unp_dispose, 39 unixsw, &unixsw[sizeof(unixsw)/sizeof(unixsw[0])] }; 40