Add param.h files for recent FreeBSD
[openafs.git] / src / config / param.nbsd60.h
1 /* NetBSD shared section */
2
3 #ifndef AFS_PARAM_COMMON_H
4 #define AFS_PARAM_COMMON_H 1
5
6 #define AFS_NAMEI_ENV  1        /* User space interface to file system */
7 #define AFS_64BIT_IOPS_ENV 1    /* Needed for NAMEI */
8 #define AFS_64BIT_CLIENT 1
9
10 #define AFS_MOUNT_AFS "afs"     /* The name of the filesystem type. */
11 #define AFS_SYSCALL 210
12
13 #define AFS_KALLOC(n)           kmem_alloc(n, KM_SLEEP)
14 #define AFS_KALLOC_NOSLEEP(n)   kmem_alloc(n, KM_NOSLEEP)
15 #define AFS_KFREE               kmem_free
16 #define VATTR_NULL              vattr_null
17
18 #if 0
19 /* including this file before sysincludes.h is canonical, but
20  * NBSD40's mount.h defines MOUNT_AFS */
21
22 #ifndef MOUNT_AFS
23 #define MOUNT_AFS AFS_MOUNT_AFS
24 #endif
25
26 #endif /* 0 */
27
28 #define AFS_XBSD_ENV 1          /* {Free,Open,Net}BSD */
29
30 #define AFS_NBSD_ENV 1
31 #define AFS_NBSD15_ENV 1
32 #define AFS_NBSD16_ENV 1
33 #define AFS_NBSD20_ENV 1
34 #define AFS_NBSD30_ENV 1
35 #define AFS_NBSD40_ENV 1
36 #define AFS_NBSD50_ENV 1
37 #define AFS_NBSD60_ENV 1
38 #undef  AFS_NONFSTRANS
39 #define AFS_NONFSTRANS 1
40
41 #define AFS_VFSINCL_ENV 1
42
43 #define AFS_HAVE_FFS            1       /* Use system's ffs. */
44
45 #if     !defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__) && !defined(IGNORE_STDS_H)
46 #define AFS_HAVE_STATVFS    1   /* System supports statvfs */
47 #endif
48
49 #ifndef UKERNEL
50
51 #if     !defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__) && !defined(IGNORE_STDS_H)
52 #include <sys/param.h>
53 #endif
54
55 #define FTRUNC O_TRUNC
56
57 #define IUPD 0x0010
58 #define IACC 0x0020
59 #define ICHG 0x0040
60 #define IMOD 0x0080
61
62 #define RXK_LISTENER_ENV  1
63
64 #include <afs/afs_sysnames.h>
65
66 #define AFS_VFS_ENV     1
67 #define AFS_GREEDY43_ENV        1
68
69 #define AFS_GCPAGS              0       /* if nonzero, garbage collect PAGs */
70 #define AFS_USE_GETTIMEOFDAY    1       /* use gettimeofday to implement rx clock */
71 #define AFS_GLOBAL_SUNLOCK      1
72
73 /* Extra kernel definitions (from kdefs file) */
74 #ifdef _KERNEL_DEPRECATED
75 #define AFS_VFS34       1       /* What is VFS34??? */
76 #define afsio_iov       uio_iov
77 #define afsio_iovcnt    uio_iovcnt
78 #define afsio_offset    uio_offset
79 #define afsio_seg       uio_segflg
80 #define afsio_resid     uio_resid
81 #define AFS_UIOSYS      UIO_SYSSPACE
82 #define AFS_UIOUSER     UIO_USERSPACE
83 #define AFS_CLBYTES     CLBYTES
84 #define osi_GetTime(x)  microtime(x)
85 #define AFS_KALLOC(x)   kalloc(x)
86 #define AFS_KFREE(x,y)  kfree(x,y)
87 #define v_count         v_usecount
88 #define v_vfsp          v_mount
89 #define vfs_bsize       mnt_stat.f_bsize
90 #define vfs_fsid        mnt_stat.f_fsid
91 #define va_nodeid       va_fileid
92 #define vfs_vnodecovered mnt_vnodecovered
93 #define direct          dirent
94
95 #ifndef MUTEX_DEFAULT
96 #define MUTEX_DEFAULT   0
97 #endif /* MUTEX_DEFAULT */
98
99 #ifndef SSYS
100 #define SSYS            0x00002
101 #endif /* SSYS */
102
103 #define p_rcred         p_ucred
104
105 #define VN_RELE(vp)     vrele(((struct vnode *)(vp)))
106 #define VN_HOLD(vp)     VREF(((struct vnode *)(vp)))
107
108 #if     !defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__) && !defined(IGNORE_STDS_H)
109 enum vcexcl { NONEXCL, EXCL };
110
111 #ifdef KERNEL
112 #ifndef MIN
113 #define MIN(A,B) ((A) < (B) ? (A) : (B))
114 #endif
115 #ifndef MAX
116 #define MAX(A,B) ((A) > (B) ? (A) : (B))
117 #endif
118 #endif /* KERNEL */
119
120 #endif /* ! ASSEMBLER & ! __LANGUAGE_ASSEMBLY__ && !defined(IGNORE_STDS_H) */
121 #endif /* _KERNEL_DEPRECATED */
122
123 #else /* !defined(UKERNEL) */
124
125
126 /* This section for user space compiles only */
127
128 #define UKERNEL                 1       /* user space kernel */
129
130 #include <afs/afs_sysnames.h>
131
132 #define AFS_USERSPACE_IP_ADDR 1
133 #define RXK_LISTENER_ENV      1
134 #define AFS_GCPAGS            0 /* if nonzero, garbage collect PAGs */
135
136 #define afsio_iov       uio_iov
137 #define afsio_iovcnt    uio_iovcnt
138 #define afsio_offset    uio_offset
139 #define afsio_seg       uio_segflg
140 #define afsio_fmode     uio_fmode
141 #define afsio_resid     uio_resid
142 #define AFS_UIOSYS      UIO_SYSSPACE
143 #define AFS_UIOUSER     UIO_USERSPACE
144 #define AFS_CLBYTES     MCLBYTES
145 #define AFS_MINCHANGE   2
146 #define VATTR_NULL      usr_vattr_null
147
148 #define AFS_DIRENT
149 #ifndef CMSERVERPREF
150 #define CMSERVERPREF
151 #endif
152
153 #if     !defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__) && !defined(IGNORE_STDS_H) && !defined()
154 #include <limits.h>
155 #include <sys/param.h>
156 #include <sys/types.h>
157 #include <sys/mount.h>
158 #include <sys/fcntl.h>
159 #include <netinet/in.h>
160 #include <sys/uio.h>
161 #include <sys/socket.h>
162 #endif
163
164 #endif /* !defined(UKERNEL) */
165
166 #endif /* AFS_PARAM_COMMON_H */