initial-freebsd-port-work-20010414
[openafs.git] / src / rx / rx_kcommon.h
1 /*
2  * Copyright 2000, International Business Machines Corporation and others.
3  * All Rights Reserved.
4  * 
5  * This software has been released under the terms of the IBM Public
6  * License.  For details, see the LICENSE file in the top-level source
7  * directory or online at http://www.openafs.org/dl/license10.html
8  */
9
10 /*
11  * rx_kcommon.h - Common kernel RX header for all system types.
12  */
13
14 #ifndef _RX_KCOMMON_H_
15 #define _RX_KCOMMON_H_
16
17 #ifdef AFS_DARWIN_ENV
18 #ifndef _MACH_ETAP_H_
19 #define _MACH_ETAP_H_
20 typedef unsigned short                  etap_event_t;
21 #endif
22 #endif  
23 #include "../h/types.h"
24 #include "../h/param.h"
25 #ifndef AFS_LINUX22_ENV
26 #include "../h/systm.h"
27 #endif
28 #include "../h/time.h"
29 #ifdef AFS_SUN56_ENV
30 #include "../h/vfs.h"           /* stops SUN56 socketvar.h warnings */
31 #include "../h/stropts.h"       /* stops SUN56 socketvar.h warnings */
32 #include "../h/stream.h"        /* stops SUN56 socketvar.h errors */
33 #endif
34 #include "../h/socket.h"
35 #ifndef AFS_LINUX22_ENV
36 #include "../h/socketvar.h"
37 #include "../h/protosw.h"
38 #if !defined(AFS_SUN5_ENV) && !defined(AFS_FBSD_ENV)
39 #include "../h/domain.h"
40 #include "../h/dir.h"
41 #include "../h/buf.h"
42 #include "../h/mbuf.h"
43 #else
44 #if defined(AFS_FBSD_ENV)
45 #include "../h/dirent.h"
46 #include "../h/socket.h"
47 #include "../h/domain.h"
48 #include "../h/buf.h"
49 #include "../h/mbuf.h"
50 #endif /* AFS_FBSD_ENV */
51 #endif
52 #endif /* AFS_LINUX22_ENV */
53 #ifdef AFS_SGI62_ENV
54 #include "../h/hashing.h"
55 #endif
56 #include "../netinet/in.h"
57 #include "../net/route.h"
58 #include "../netinet/in_systm.h"
59 #include "../netinet/ip.h"
60 #if !defined(AFS_HPUX110_ENV) && !defined(AFS_LINUX22_ENV)
61 #include "../netinet/in_pcb.h"
62 #endif /* ! AFS_HPUX110_ENV && ! AFS_LINUX22_ENV */
63 #ifndef AFS_LINUX22_ENV
64 #include "../netinet/ip_var.h"
65 #include "../netinet/ip_icmp.h"
66 #endif /* AFS_LINUX22_ENV */
67 #include "../netinet/udp.h"
68 #if !defined(AFS_SGI62_ENV) && !defined(AFS_LINUX22_ENV)
69 #include "../netinet/udp_var.h"
70 #endif
71 #if defined(AFS_HPUX102_ENV) || (defined(AFS_SGI62_ENV) && !defined(AFS_SGI64_ENV))
72 #include "../h/user.h"
73 #endif
74 #ifdef AFS_LINUX22_ENV
75 #define _LINUX_CODA_FS_I
76 struct coda_inode_info {};
77 #include "../h/sched.h"
78 #include "../h/netdevice.h"
79 #else
80 #include "../h/proc.h"
81 #include "../h/file.h"
82 #endif
83 #include "../net/if.h"
84 #if !defined(AFS_HPUX110_ENV) && !defined(AFS_LINUX22_ENV)
85 #include "../netinet/in_var.h"
86 #endif /* ! AFS_HPUX110_ENV && ! AFS_LINUX22_ENV */
87 #ifndef AFS_LINUX22_ENV
88 #include "../rpc/types.h"
89 #endif
90 #include "../afs/afs_osi.h"
91 #include "../rx/rx_kmutex.h"
92 #include "../afs/lock.h"
93 #ifndef AFS_LINUX22_ENV
94 #include "../rpc/xdr.h"
95 #endif
96 #include "../rx/rx.h"
97 #include "../rx/rx_globals.h"
98 #include "../afs/longc_procs.h"
99 #include "../afs/afs_stats.h"
100 #include "../h/errno.h"
101
102 extern afs_int32 afs_termState;
103 extern int (*rxk_GetPacketProc)(); /* set to packet allocation procedure */
104 extern int (*rxk_PacketArrivalProc)();
105
106 #define MAXRXPORTS  20
107 typedef unsigned short rxk_ports_t[MAXRXPORTS];
108 typedef char *rxk_portRocks_t[MAXRXPORTS];
109 extern rxk_ports_t rxk_ports;
110 extern rxk_portRocks_t rxk_portRocks;
111
112 extern struct osi_socket *rxk_NewSocket(short aport);
113 extern struct ifnet *rxi_FindIfnet();
114
115 extern int rxk_initDone;
116
117 #if defined(AFS_FBSD_ENV)
118 extern struct domain inetdomain;
119 #endif /* AFS_FBSD_ENV */
120
121 #endif /* _RX_KCOMMON_H_ */