change datagram queuing to use m_act properly; type mbufs with rights;
[unix-history] / usr / src / sys / kern / uipc_proto.c
/* uipc_proto.c 6.2 84/08/21 */
#include "../h/param.h"
#include "../h/socket.h"
#include "../h/protosw.h"
#include "../h/domain.h"
#include "../h/mbuf.h"
/*
* Definitions of protocols supported in the UNIX domain.
*/
int uipc_usrreq();
int raw_init(),raw_usrreq(),raw_input(),raw_ctlinput();
extern struct domain unixdomain; /* or at least forward */
struct protosw unixsw[] = {
{ SOCK_STREAM, &unixdomain, 0, PR_CONNREQUIRED|PR_WANTRCVD,
0, 0, 0, 0,
uipc_usrreq,
0, 0, 0, 0,
},
{ SOCK_DGRAM, &unixdomain, 0, PR_ATOMIC|PR_ADDR|PR_RIGHTS,
0, 0, 0, 0,
uipc_usrreq,
0, 0, 0, 0,
},
{ 0, 0, 0, 0,
raw_input, 0, raw_ctlinput, 0,
raw_usrreq,
raw_init, 0, 0, 0,
}
};
int unp_externalize(), unp_dispose();
struct domain unixdomain =
{ AF_UNIX, "unix", 0, unp_externalize, unp_dispose,
unixsw, &unixsw[sizeof(unixsw)/sizeof(unixsw[0])] };