]> arthur.barton.de Git - netatalk.git/blob - sys/netatalk/at_proto.c
Previous fix 9e4e07c1811edbaf3376ad6e238a1353b405002b resulted in the inability to...
[netatalk.git] / sys / netatalk / at_proto.c
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
20 extern int              ddp_usrreq();
21 extern int              ddp_output();
22 extern int              ddp_init();
23
24 #ifdef ultrix
25 extern int              ddp_ifoutput();
26 extern int              ddp_ifinput();
27 extern int              ddp_ifioctl();
28 #endif /* ultrix */
29
30 struct 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
54 struct domain           atalkdomain = {
55     AF_APPLETALK,       "appletalk",    0,      0,      0,      atalksw,
56     &atalksw[ sizeof( atalksw ) / sizeof( atalksw[ 0 ] ) ]
57 };