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