home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Source Code 1993 July / THE_SOURCE_CODE_CD_ROM.iso / bsd_srcs / usr.sbin / amd / config / os-bsd44.h < prev    next >
Encoding:
C/C++ Source or Header  |  1991-05-12  |  4.9 KB  |  184 lines

  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-bsd44.h    5.3 (Berkeley) 5/12/91
  39.  *
  40.  * $Id: os-bsd44.h,v 5.2.1.4 91/05/07 22:19:32 jsp Alpha $
  41.  *
  42.  * 4.4 BSD definitions for Amd (automounter)
  43.  */
  44.  
  45. /*
  46.  * Does the compiler grok void *
  47.  */
  48. #define    VOIDP
  49.  
  50. /*
  51.  * Which version of the Sun RPC library we are using
  52.  * This is the implementation release number, not
  53.  * the protocol revision number.
  54.  */
  55. #define    RPC_4
  56.  
  57. /*
  58.  * Which version of the NFS interface are we using.
  59.  * This is the implementation release number, not
  60.  * the protocol revision number.
  61.  */
  62. #define    NFS_44
  63. #define HAS_TCP_NFS
  64.  
  65. /*
  66.  * Does this OS have NDBM support?
  67.  */
  68. #define OS_HAS_NDBM
  69.  
  70. /*
  71.  * 4.4 doesn't provide NIS.
  72.  */
  73. #undef HAS_NIS_MAPS
  74.  
  75. /*
  76.  * The mount table is obtained from the kernel
  77.  */
  78. #undef    UPDATE_MTAB
  79.  
  80. /*
  81.  * No mntent info on 4.4 BSD
  82.  */
  83. #undef    MNTENT_HDR
  84.  
  85. /*
  86.  * Name of filesystem types
  87.  */
  88. #define    MOUNT_TYPE_NFS    MOUNT_NFS
  89. #define    MOUNT_TYPE_UFS    MOUNT_UFS
  90. #undef MTAB_TYPE_UFS
  91. #define    MTAB_TYPE_UFS    "ufs"
  92. #define    MTAB_TYPE_MFS    "mfs"
  93.  
  94. /*
  95.  * How to unmount filesystems
  96.  */
  97. #undef UNMOUNT_TRAP
  98. #undef    NEED_UMOUNT_FS
  99. #define    NEED_UMOUNT_BSD
  100.  
  101. /*
  102.  * How to copy an address into an NFS filehandle
  103.  */
  104. #undef NFS_SA_DREF
  105. #define    NFS_SA_DREF(dst, src) { \
  106.         (dst).addr = (struct sockaddr *) (src); \
  107.         (dst).sotype = SOCK_DGRAM; \
  108.         (dst).proto = 0; \
  109.     }
  110.  
  111. /*
  112.  * Byte ordering
  113.  */
  114. #ifndef BYTE_ORDER
  115. #include <machine/endian.h>
  116. #endif /* BYTE_ORDER */
  117.  
  118. #undef ARCH_ENDIAN
  119. #if BYTE_ORDER == LITTLE_ENDIAN
  120. #define ARCH_ENDIAN "little"
  121. #else
  122. #if BYTE_ORDER == BIG_ENDIAN
  123. #define ARCH_ENDIAN "big"
  124. #else
  125. XXX - Probably no hope of running Amd on this machine!
  126. #endif /* BIG */
  127. #endif /* LITTLE */
  128.  
  129. /*
  130.  * Miscellaneous 4.4 BSD bits
  131.  */
  132. #define    NEED_MNTOPT_PARSER
  133. #define    SHORT_MOUNT_NAME
  134.  
  135. #define    MNTMAXSTR       128
  136.  
  137. #define    MNTTYPE_UFS    "ufs"        /* Un*x file system */
  138. #define    MNTTYPE_NFS    "nfs"        /* network file system */
  139. #define    MNTTYPE_MFS    "mfs"        /* memory file system */
  140. #define    MNTTYPE_IGNORE    "ignore"    /* No type specified, ignore this entry */
  141.  
  142. #define    M_RDONLY    MNT_RDONLY
  143. #define    M_SYNC        MNT_SYNCHRONOUS
  144. #define    M_NOEXEC    MNT_NOEXEC
  145. #define    M_NOSUID    MNT_NOSUID
  146. #define    M_NODEV        MNT_NODEV
  147.  
  148. #define    MNTOPT_SOFT    "soft"        /* soft mount */
  149. #define    MNTOPT_INTR    "intr"        /* interrupts allowed */
  150.  
  151. struct mntent {
  152.     char    *mnt_fsname;    /* name of mounted file system */
  153.     char    *mnt_dir;    /* file system path prefix */
  154.     char    *mnt_type;    /* MNTTYPE_* */
  155.     char    *mnt_opts;    /* MNTOPT* */
  156.     int    mnt_freq;    /* dump frequency, in days */
  157.     int    mnt_passno;    /* pass number on parallel fsck */
  158. };
  159.  
  160. /*
  161.  * Type of a file handle
  162.  */
  163. #undef NFS_FH_TYPE
  164. #define    NFS_FH_TYPE    nfsv2fh_t *
  165.  
  166. /*
  167.  * How to get a mount list
  168.  */
  169. #undef    READ_MTAB_FROM_FILE
  170. #define    READ_MTAB_BSD_STYLE
  171.  
  172. /*
  173.  * The data for the mount syscall needs the path in addition to the
  174.  * host name since that is the only source of information about the
  175.  * mounted filesystem.
  176.  */
  177. #define    NFS_ARGS_NEEDS_PATH
  178.  
  179. /*
  180.  * 4.4 has RE support built in
  181.  */
  182. #undef RE_HDR
  183. #define RE_HDR <regexp.h>
  184.