1 /* NetBSD shared section */
3 #ifndef AFS_PARAM_COMMON_H
4 #define AFS_PARAM_COMMON_H 1
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
10 #define AFS_SYSCALL 210
12 #define AFS_XBSD_ENV 1 /* {Free,Open,Net}BSD */
14 #define AFS_NBSD_ENV 1
15 #define AFS_NBSD15_ENV 1
16 #define AFS_NBSD16_ENV 1
17 #define AFS_NBSD20_ENV 1
19 #define AFS_NONFSTRANS 1
20 #define AFS_KERBEROS_ENV 1
22 #define AFS_VFSINCL_ENV 1
24 #define AFS_HAVE_FFS 1 /* Use system's ffs. */
26 #if !defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__) && !defined(IGNORE_STDS_H)
27 #if __NetBSD_Version__ >= 200040000
28 #define AFS_HAVE_STATVFS 1 /* System supports statvfs */
30 #define AFS_HAVE_STATVFS 0 /* System doesn't supports statvfs */
36 #if !defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__) && !defined(IGNORE_STDS_H)
37 #include <sys/param.h>
40 #define FTRUNC O_TRUNC
47 #define IN_LOCK(ip) lockmgr(&ip->i_lock, LK_EXCLUSIVE, \
49 #define IN_UNLOCK(ip) lockmgr(&ip->i_lock, LK_RELEASE, \
52 #include <afs/afs_sysnames.h>
55 #define AFS_GREEDY43_ENV 1
57 #define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */
58 #define AFS_USE_GETTIMEOFDAY 1 /* use gettimeofday to implement rx clock */
60 /* Extra kernel definitions (from kdefs file) */
62 #define AFS_GLOBAL_SUNLOCK 1
63 #define AFS_VFS34 1 /* What is VFS34??? */
64 #define afsio_iov uio_iov
65 #define afsio_iovcnt uio_iovcnt
66 #define afsio_offset uio_offset
67 #define afsio_seg uio_segflg
68 #define afsio_resid uio_resid
69 #define AFS_UIOSYS UIO_SYSSPACE
70 #define AFS_UIOUSER UIO_USERSPACE
71 #define AFS_CLBYTES CLBYTES
72 #define AFS_KALLOC(x) kalloc(x)
73 #define AFS_KFREE(x,y) kfree(x,y)
74 #define v_count v_usecount
75 #define v_vfsp v_mount
76 #define vfs_bsize mnt_stat.f_bsize
77 #define vfs_fsid mnt_stat.f_fsid
78 #define va_nodeid va_fileid
79 #define vfs_vnodecovered mnt_vnodecovered
81 #define vnode_t struct vnode
84 #define MUTEX_DEFAULT 0
85 #endif /* MUTEX_DEFAULT */
91 #define p_rcred p_ucred
93 #define VN_RELE(vp) vrele(((struct vnode *)(vp)))
94 #define VN_HOLD(vp) VREF(((struct vnode *)(vp)))
96 #if !defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__) && !defined(IGNORE_STDS_H)
97 enum vcexcl { NONEXCL, EXCL };
101 #define MIN(A,B) ((A) < (B) ? (A) : (B))
104 #define MAX(A,B) ((A) > (B) ? (A) : (B))
108 #endif /* ! ASSEMBLER & ! __LANGUAGE_ASSEMBLY__ && !defined(IGNORE_STDS_H) */
111 #else /* !defined(UKERNEL) */
114 /* This section for user space compiles only */
116 #define UKERNEL 1 /* user space kernel */
118 #include <afs/afs_sysnames.h>
120 #define AFS_USERSPACE_IP_ADDR 1
121 #define RXK_LISTENER_ENV 1
122 #define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */
124 #define afsio_iov uio_iov
125 #define afsio_iovcnt uio_iovcnt
126 #define afsio_offset uio_offset
127 #define afsio_seg uio_segflg
128 #define afsio_fmode uio_fmode
129 #define afsio_resid uio_resid
130 #define AFS_UIOSYS UIO_SYSSPACE
131 #define AFS_UIOUSER UIO_USERSPACE
132 #define AFS_CLBYTES MCLBYTES
133 #define AFS_MINCHANGE 2
134 #define VATTR_NULL usr_vattr_null
141 #if !defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__) && !defined(IGNORE_STDS_H)
143 #include <sys/param.h>
144 #include <sys/types.h>
145 #include <sys/mount.h>
146 #include <sys/fcntl.h>
147 #include <netinet/in.h>
149 #include <sys/socket.h>
152 #endif /* !defined(UKERNEL) */
154 #endif /* AFS_PARAM_COMMON_H */