xref: /original-bsd/usr.sbin/amd/config/os-irix4.h (revision 614f1308)
1 /*
2  * Copyright (c) 1990 Jan-Simon Pendry
3  * Copyright (c) 1990 Imperial College of Science, Technology & Medicine
4  * Copyright (c) 1990 The Regents of the University of California.
5  * All rights reserved.
6  *
7  * This code is derived from software contributed to Berkeley by
8  * Jan-Simon Pendry at Imperial College, London.
9  *
10  * Redistribution and use in source and binary forms, with or without
11  * modification, are permitted provided that the following conditions
12  * are met:
13  * 1. Redistributions of source code must retain the above copyright
14  *    notice, this list of conditions and the following disclaimer.
15  * 2. Redistributions in binary form must reproduce the above copyright
16  *    notice, this list of conditions and the following disclaimer in the
17  *    documentation and/or other materials provided with the distribution.
18  * 3. All advertising materials mentioning features or use of this software
19  *    must display the following acknowledgement:
20  *      This product includes software developed by the University of
21  *      California, Berkeley and its contributors.
22  * 4. Neither the name of the University nor the names of its contributors
23  *    may be used to endorse or promote products derived from this software
24  *    without specific prior written permission.
25  *
26  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
27  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
28  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
29  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
30  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
31  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
32  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
33  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
34  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
35  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
36  * SUCH DAMAGE.
37  *
38  *	@(#)os-irix4.h	5.1 (Berkeley) 05/31/92
39  *
40  * $Id: os-irix4.h,v 5.2 1992/05/31 16:40:22 jsp Exp $
41  *
42  * IRIX 4.0.X definitions for Amd (automounter)
43  * Contributed by Scott R. Presnell <srp@cgl.ucsf.edu>
44  */
45 
46 /*
47  * Does the compiler grok void *
48  */
49 #define VOIDP
50 
51 /*
52  * Which version of the Sun RPC library we are using
53  * This is the implementation release number, not
54  * the protocol revision number.
55  */
56 #define RPC_3
57 
58 /*
59  * Which version of the NFS interface are we using.
60  * This is the implementation release number, not
61  * the protocol revision number.
62  */
63 #define NFS_3
64 
65 /*
66  * Byte ordering
67  */
68 #undef ARCH_ENDIAN
69 #define ARCH_ENDIAN	"big"
70 
71 /*
72  * Has support for syslog()
73  */
74 #define HAS_SYSLOG
75 
76 #define M_RDONLY	MS_RDONLY
77 #define M_GRPID		MS_GRPID
78 #define M_NOSUID	MS_NOSUID
79 #define M_NONDEV	MS_NODEV
80 
81 /*
82  * Support for ndbm
83  */
84 #define OS_HAS_NDBM
85 
86 #define UPDATE_MTAB
87 
88 #undef	MTAB_TYPE_NFS
89 #define MTAB_TYPE_NFS	"nfs"
90 
91 #undef	MTAB_TYPE_UFS
92 #define MTAB_TYPE_UFS	"efs"
93 
94 #define NMOUNT	40	/* The std sun value */
95 /*
96  * Name of filesystem types
97  */
98 #define MOUNT_TYPE_UFS	sysfs(GETFSIND, FSID_EFS)
99 #define MOUNT_TYPE_NFS	sysfs(GETFSIND, FSID_NFS)
100 
101 #define SYS5_SIGNALS
102 
103 /*
104  * Use <fcntl.h> rather than <sys/file.h>
105  */
106 /*#define USE_FCNTL*/
107 
108 /*
109  * Use fcntl() rather than flock()
110  */
111 /*#define LOCK_FCNTL*/
112 
113 #ifdef __GNUC__
114 #define alloca(sz) __builtin_alloca(sz)
115 #endif
116 
117 #define bzero(ptr, len) memset(ptr, 0, len)
118 #define bcopy(from, to, len) memcpy(to, from, len)
119 
120 #undef MOUNT_TRAP
121 #define MOUNT_TRAP(type, mnt, flags, mnt_data) \
122 	irix_mount(mnt->mnt_fsname, mnt->mnt_dir,flags, type, mnt_data)
123 #undef UNMOUNT_TRAP
124 #define UNMOUNT_TRAP(mnt)	umount(mnt->mnt_dir)
125 #define NFDS	30	/* conservative */
126 
127 #define NFS_HDR "misc-irix.h"
128 #define UFS_HDR "misc-irix.h"
129 
130 /* not included in sys/param.h */
131 #include <sys/types.h>
132 
133 #define MOUNT_HELPER_SOURCE "mount_irix.c"
134 
135 /*
136  * Under 4.0.X this information is in /usr/include/mntent.h
137  * Below is what is used to be for Irix 3.3.X.
138  */
139 /*#define	MNTINFO_DEV	"fsid"*/
140 /*#define	MNTINFO_PREF	"0x"*/
141 
142 #define	MNTINFO_PREF	""
143 
144 /*
145  * Under Irix, mount type "auto" is probed by statfs() in df.  A statfs() of
146  * a direct mount causes that mount to fire.  So change the  mount type in
147  * /etc/mtab to "ignore" to stop that (this is what SGI does for their
148  * automounter.  Use the old FASCIST define for this.
149  */
150 #define FASCIST_DF_COMMAND MNTTYPE_IGNORE
151