* add p cc
[mascara-docs.git] / i386 / linux / linux-2.3.21 / net / protocols.c
blob7516a07963fbfc7045d1ee751e75f0773e475098
1 /*
2 * Protocol initializer table. Here separately for convenience
4 */
7 #include <linux/config.h>
8 #include <linux/types.h>
9 #include <linux/kernel.h>
10 #include <linux/net.h>
11 #include <linux/fs.h>
13 #ifdef CONFIG_UNIX
14 #include <linux/un.h>
15 #include <net/af_unix.h>
16 #endif
18 #ifdef CONFIG_INET
19 #include <linux/inet.h>
20 #ifdef CONFIG_IPV6
21 extern void inet6_proto_init(struct net_proto *pro);
22 #endif
23 #endif /* INET */
25 #ifdef CONFIG_ECONET
26 extern void econet_proto_init(struct net_proto *pro);
27 #endif
29 #ifdef CONFIG_NETLINK
30 extern void netlink_proto_init(struct net_proto *pro);
31 #endif
33 #ifdef CONFIG_PACKET
34 extern void packet_proto_init(struct net_proto *pro);
35 #endif
37 #if defined(CONFIG_IPX) || defined(CONFIG_IPX_MODULE)
38 #define NEED_802
39 #include <net/ipxcall.h>
40 #endif
42 #ifdef CONFIG_X25
43 #include <net/x25call.h>
44 #endif
46 #ifdef CONFIG_LAPB
47 #include <net/lapbcall.h>
48 #endif
50 #ifdef CONFIG_AX25
51 #include <net/ax25call.h>
52 #ifdef CONFIG_NETROM
53 #include <net/nrcall.h>
54 #endif
55 #ifdef CONFIG_ROSE
56 #include <net/rosecall.h>
57 #endif
58 #endif
60 #ifdef CONFIG_IRDA
61 #include <net/irda/irdacall.h>
62 #endif
64 #if defined(CONFIG_DECNET)
65 #include <net/decnet_call.h>
66 #endif
68 #if defined(CONFIG_ATALK) || defined(CONFIG_ATALK_MODULE)
69 #define NEED_802
70 #include <net/atalkcall.h>
71 #endif
73 #if defined(CONFIG_NETBEUI)
74 #define NEED_LLC
75 #include <net/netbeuicall.h>
76 #endif
78 #if defined(CONFIG_LLC)
79 #define NEED_LLC
80 #endif
82 #include <net/psnapcall.h>
84 #ifdef CONFIG_TR
85 #include <linux/netdevice.h>
86 #include <linux/trdevice.h>
87 extern void rif_init(struct net_proto *);
88 #endif
90 #ifdef CONFIG_ATM
91 #include <linux/atm.h>
92 #endif
94 #ifdef NEED_LLC
95 #define NEED_802
96 #include <net/llccall.h>
97 #endif
99 #ifdef NEED_802
100 #include <net/p8022call.h>
101 #endif
104 * Protocol Table
107 struct net_proto protocols[] = {
108 #ifdef CONFIG_NETLINK
109 { "NETLINK", netlink_proto_init },
110 #endif
112 #ifdef CONFIG_PACKET
113 { "PACKET", packet_proto_init },
114 #endif
116 #ifdef CONFIG_UNIX
117 { "UNIX", unix_proto_init }, /* Unix domain socket family */
118 #endif
120 #ifdef NEED_802
121 { "802.2", p8022_proto_init }, /* 802.2 demultiplexor */
122 { "SNAP", snap_proto_init }, /* SNAP demultiplexor */
123 #endif
125 #ifdef CONFIG_TR
126 { "RIF", rif_init }, /* RIF for Token ring */
127 #endif
129 #ifdef CONFIG_ATM
130 { "ATMPVC", atmpvc_proto_init }, /* ATM PVCs */
131 { "ATMSVC", atmsvc_proto_init }, /* ATM SVCs */
132 #endif
134 #ifdef NEED_LLC
135 { "802.2LLC", llc_init }, /* 802.2 LLC */
136 #endif
138 #ifdef CONFIG_AX25
139 { "AX.25", ax25_proto_init }, /* Amateur Radio AX.25 */
140 #ifdef CONFIG_NETROM
141 { "NET/ROM", nr_proto_init }, /* Amateur Radio NET/ROM */
142 #endif
143 #ifdef CONFIG_ROSE
144 { "Rose", rose_proto_init }, /* Amateur Radio X.25 PLP */
145 #endif
146 #endif
147 #ifdef CONFIG_DECNET
148 { "DECnet", decnet_proto_init }, /* DECnet */
149 #endif
150 #ifdef CONFIG_INET
151 { "INET", inet_proto_init }, /* TCP/IP */
152 #ifdef CONFIG_IPV6
153 { "INET6", inet6_proto_init}, /* IPv6 */
154 #endif
155 #endif
157 #ifdef CONFIG_IPX
158 { "IPX", ipx_proto_init }, /* IPX */
159 #endif
161 #ifdef CONFIG_ATALK
162 { "DDP", atalk_proto_init }, /* Netatalk Appletalk driver */
163 #endif
165 #ifdef CONFIG_LAPB
166 { "LAPB", lapb_proto_init }, /* LAPB protocols */
167 #endif
169 #ifdef CONFIG_X25
170 { "X.25", x25_proto_init }, /* CCITT X.25 Packet Layer */
171 #endif
173 #ifdef CONFIG_ECONET
174 { "Econet", econet_proto_init }, /* Acorn Econet */
175 #endif
177 #ifdef CONFIG_IRDA
178 { "IrDA", irda_proto_init }, /* IrDA protocols */
179 #endif
181 { NULL, NULL } /* End marker */