1/*
2 * $Id: at_proto.c,v 1.2 2001-06-29 14:14:47 rufustfirefly Exp $
3 *
4 * Copyright (c) 1990,1991 Regents of The University of Michigan.
5 *
6 * All Rights Reserved.  See COPYRIGHT.
7 */
8
9#ifdef HAVE_CONFIG_H
10#include "config.h"
11#endif /* HAVE_CONFIG_H */
12
13#include <sys/protosw.h>
14#include <sys/domain.h>
15#include <sys/types.h>
16#include <sys/socket.h>
17
18#include "at.h"
19
20extern int		ddp_usrreq();
21extern int		ddp_output();
22extern int		ddp_init();
23
24#ifdef ultrix
25extern int		ddp_ifoutput();
26extern int		ddp_ifinput();
27extern int		ddp_ifioctl();
28#endif /* ultrix */
29
30struct protosw		atalksw[] = {
31    {
32	/* Identifiers */
33	SOCK_DGRAM,	&atalkdomain,	ATPROTO_DDP,	PR_ATOMIC|PR_ADDR,
34	/*
35	 * protocol-protocol interface.
36	 * fields are pr_input, pr_output, pr_ctlinput, and pr_ctloutput.
37	 * pr_input can be called from the udp protocol stack for iptalk
38	 * packets bound for a local socket.
39	 * pr_output can be used by higher level appletalk protocols, should
40	 * they be included in the kernel.
41	 */
42	0,		ddp_output,	0,		0,
43	/* socket-protocol interface. */
44	ddp_usrreq,
45	/* utility routines. */
46	ddp_init,	0,		0,		0,
47#ifdef ultrix
48	/* interface hooks */
49	ddp_ifoutput,	ddp_ifinput,	ddp_ifioctl,	0,
50#endif /* ultrix */
51    },
52};
53
54struct domain		atalkdomain = {
55    AF_APPLETALK,	"appletalk",	0,	0,	0,	atalksw,
56    &atalksw[ sizeof( atalksw ) / sizeof( atalksw[ 0 ] ) ]
57};
58