flock-sysid-20030303
[openafs.git] / src / config / param.sgi_64.h
index 9c90a8d..dfcec84 100644 (file)
@@ -1,3 +1,6 @@
+#ifndef UKERNEL
+/* This section for kernel libafs compiles only */
+
 /*
  * Copyright 2000, International Business Machines Corporation and others.
  * All Rights Reserved.
@@ -7,8 +10,8 @@
  * directory or online at http://www.openafs.org/dl/license10.html
  */
 
-#ifndef        _PARAM_SGI_64_H
-#define        _PARAM_SGI_64_H
+#ifndef        AFS_PARAM_HH
+#define        AFS_PARAM_HH
 
 
 #define AFS_VFS_ENV            1
@@ -26,6 +29,8 @@
 #define AFS_SGI_EXMAG          1       /* use magic fields in extents for AFS extra fields */
 /* AFS_SGI_SHORTSTACK not required since we have a 16K stack. */       
 
+#define AFS_HAVE_FLOCK_SYSID    1
+
 #define _ANSI_C_SOURCE         1       /* rx_user.h */
 
 #define AFS_64BIT_ENV          1       /* Defines afs_int32 as int, not long. */
 #define AFS_EVENT_LOCK  1 /* osi_Sleep/osi_Wakeup use spinlock. */
 #define AFS_SGI_DUAL_FS_CACHE 1 /* implies supports EFS or XFS cache */
 
+#define memset(A, B, S) bzero(A, S)
+#define memcpy(B, A, S) bcopy(A, B, S)
+#define memcmp(A, B, S) bcmp(A, B, S)
+
 #endif /* KERNEL */
 
 #ifndef CMSERVERPREF
 #define CMSERVERPREF
 #endif
-#endif /* _PARAM_SGI_64_H_ */
+#endif /* AFS_PARAM_H */
+
+#else /* !defined(UKERNEL) */
+
+/* This section for user space compiles only */
+
+/*
+ * Copyright 2000, International Business Machines Corporation and others.
+ * All Rights Reserved.
+ * 
+ * This software has been released under the terms of the IBM Public
+ * License.  For details, see the LICENSE file in the top-level source
+ * directory or online at http://www.openafs.org/dl/license10.html
+ */
+
+#ifndef        AFS_PARAM_H
+#define        AFS_PARAM_H
+
+#define AFS_VFS_ENV    1
+/* Used only in vfsck code; is it needed any more???? */
+#define RXK_LISTENER_ENV       1
+#define AFS_USERSPACE_IP_ADDR  1
+
+#define UKERNEL                        1       /* user space kernel */
+#define AFS_GREEDY43_ENV       1       /* Used only in rx/rx_user.c */
+#define AFS_ENV                        1
+#define AFS_USR_SGI_ENV                1
+#define AFS_USR_SGI62_ENV      1
+#define AFS_USR_SGI63_ENV      1
+#define AFS_USR_SGI64_ENV      1
+
+#include <afs/afs_sysnames.h>
+
+/*#define AFS_GLOBAL_SUNLOCK   1*/     /* For global locking */
+
+#define        AFS_3DISPARES           1       /* Utilize the 3 available disk inode 'spares' */
+
+#define AFS_PIOCTL    64+1000
+#define AFS_SYSCALL   73+1000
+
+/* File system entry (used if mount.h doesn't define MOUNT_AFS */
+#define AFS_MOUNT_AFS   1
+
+/* Machine / Operating system information */
+#define sgi_64         1
+#define SYS_NAME       "sgi_64"
+#define SYS_NAME_ID    SYS_NAME_ID_sgi_64
+#define AFSBIG_ENDIAN  1
+#define AFS_HAVE_FFS            1       /* Use system's ffs. */
+#define AFS_HAVE_STATVFS       0       /* System doesn't support statvfs */
+
+/* Extra kernel definitions (from kdefs file) */
+#ifdef KERNEL
+#define        AFS_UIOFMODE            1       /* Only in afs/afs_vnodeops.c (afs_ustrategy) */
+#define        AFS_SYSVLOCK            1       /* sys v locking supported */
+/*#define      AFS_USEBUFFERS  1*/
+#define        afsio_iov       uio_iov
+#define        afsio_iovcnt    uio_iovcnt
+#define        afsio_offset    uio_offset
+#define        afsio_seg       uio_segflg
+#define        afsio_fmode     uio_fmode
+#define        afsio_resid     uio_resid
+#define        AFS_UIOSYS      1
+#define        AFS_UIOUSER     UIO_USERSPACE
+#define        AFS_CLBYTES     MCLBYTES
+#define        AFS_MINCHANGE   2
+#define        VATTR_NULL      usr_vattr_null
+#endif /* KERNEL */
+#define        AFS_DIRENT      
+#ifndef CMSERVERPREF
+#define CMSERVERPREF
+#endif
+#define        ROOTINO         UFSROOTINO
+
+#endif /* AFS_PARAM_H */
+
+#endif /* !defined(UKERNEL) */