2 /* This section for kernel libafs compiles only */
5 * Jim Rees, University of Michigan CITI
12 #include <sys/param.h>
13 #include <afs/afs_sysnames.h>
16 #define AFS_XBSD_ENV 1 /* {Free,Open,Net}BSD */
17 #define AFS_X86_XBSD_ENV 1
19 #define AFS_NAMEI_ENV 1 /* User space interface to file system */
20 #define AFS_64BIT_IOPS_ENV 1 /* Needed for NAMEI */
21 #define AFS_OBSD_ENV 1
22 #define AFS_NONFSTRANS 1
23 #define AFS_KERBEROS_ENV 1
24 #define FTRUNC O_TRUNC
31 #define IN_LOCK(ip) lockmgr(&ip->i_lock, LK_EXCLUSIVE, \
33 #define IN_UNLOCK(ip) lockmgr(&ip->i_lock, LK_RELEASE, \
36 #define AFS_VM_RDWR_ENV 0
38 #define AFS_VFSINCL_ENV 1
39 #define AFS_GREEDY43_ENV 1
42 #define AFS_SYSCALL 210
43 #define AFS_MOUNT_AFS "afs"
47 #define MOUNT_UFS "ufs"
51 #define MOUNT_AFS AFS_MOUNT_AFS
54 #define SYS_NAME "i386_obsd29"
55 #define SYS_NAME_ID 2002
57 #define AFS_HAVE_FFS 1 /* Use system's ffs. */
58 #define AFS_HAVE_STATVFS 0 /* System doesn't supports statvfs */
60 #define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */
61 #define AFS_USE_GETTIMEOFDAY 1 /* use gettimeofday to implement rx clock */
63 #define AFSLITTLE_ENDIAN 1
65 /* Extra kernel definitions (from kdefs file) */
67 #define AFS_GLOBAL_SUNLOCK 1
68 #define AFS_VFS34 1 /* What is VFS34??? */
69 #define AFS_SHORTGID 0 /* 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 MB_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 vnode_t struct vnode
88 #define setgroups sys_setgroups
91 #define MUTEX_DEFAULT 0
92 #endif /* MUTEX_DEFAULT */
98 #define p_rcred p_ucred
100 #define VN_RELE(vp) vrele(((struct vnode *)(vp)))
101 #define VN_HOLD(vp) VREF(((struct vnode *)(vp)))
103 #if !defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__)
104 enum vcexcl {NONEXCL, EXCL};
108 #define MIN(A,B) ((A) < (B) ? (A) : (B))
111 #define MAX(A,B) ((A) > (B) ? (A) : (B))
115 #endif /* ! ASSEMBLER & ! __LANGUAGE_ASSEMBLY__ */
118 #endif /* AFS_PARAM_H */
120 #else /* !defined(UKERNEL) */
122 /* This section for user space compiles only */
125 * Jim Rees, University of Michigan CITI
132 #define UKERNEL 1 /* user space kernel */
134 #define AFS_VFSINCL_ENV 1
135 #define AFS_OBSD_ENV 1
136 #define AFS_386i_ENV 1 /* 386 Architecture--for lwp stuff */
137 #define AFS_NONFSTRANS 1
138 #define AFS_KERBEROS_ENV
140 #define AFS_MOUNT_AFS "afs" /* The name of the filesystem type. */
141 #define AFS_SYSCALL 210
142 #define AFS_NAMEI_ENV 1 /* User space interface to file system */
143 #define AFS_64BIT_IOPS_ENV 1 /* Needed for NAMEI */
144 #include <afs/afs_sysnames.h>
146 #define AFS_USERSPACE_IP_ADDR 1
147 #define RXK_LISTENER_ENV 1
148 #define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */
150 /* Machine / Operating system information */
151 #define SYS_NAME "i386_obsd29"
152 #define SYS_NAME_ID 2002
153 #define AFSLITTLE_ENDIAN 1
154 #define AFS_HAVE_FFS 1 /* Use system's ffs. */
155 #define AFS_HAVE_STATVFS 0 /* System doesn't support statvfs */
157 #define afsio_iov uio_iov
158 #define afsio_iovcnt uio_iovcnt
159 #define afsio_offset uio_offset
160 #define afsio_seg uio_segflg
161 #define afsio_fmode uio_fmode
162 #define afsio_resid uio_resid
164 #define AFS_UIOUSER UIO_USERSPACE
165 #define AFS_CLBYTES MB_CLBYTES
166 #define AFS_MINCHANGE 2
167 #define VATTR_NULL usr_vattr_null
175 #include <sys/param.h>
176 #include <sys/types.h>
177 #include <sys/mount.h>
178 #include <sys/fcntl.h>
179 #include <netinet/in.h>
181 #include <sys/socket.h>
183 #endif /* AFS_PARAM_H */
185 #endif /* !defined(UKERNEL) */