home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / unix / volume21 / amd / part03 / os-u2_2.h < prev    next >
C/C++ Source or Header  |  1990-04-11  |  4KB  |  141 lines

  1. /* $Id: os-u2_2.h,v 5.1.1.1 90/01/11 17:16:29 jsp Exp Locker: jsp $ */
  2.  
  3. /*
  4.  * Ultrix 2.2 definitions for Amd (automounter)
  5.  *
  6.  * Copyright (c) 1990 Jan-Simon Pendry
  7.  * Copyright (c) 1990 Imperial College of Science, Technology & Medicine
  8.  * Copyright (c) 1990 The Regents of the University of California.
  9.  * All rights reserved.
  10.  *
  11.  * This code is derived from software contributed to Berkeley by
  12.  * Jan-Simon Pendry at Imperial College, London.
  13.  *
  14.  * Redistribution and use in source and binary forms are permitted
  15.  * provided that the above copyright notice and this paragraph are
  16.  * duplicated in all such forms and that any documentation,
  17.  * advertising materials, and other materials related to such
  18.  * distribution and use acknowledge that the software was developed
  19.  * by Imperial College of Science, Technology and Medicine, London, UK.
  20.  * The names of the College and University may not be used to endorse
  21.  * or promote products derived from this software without specific
  22.  * prior written permission.
  23.  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
  24.  * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
  25.  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  26.  *
  27.  *    %W% (Berkeley) %G%
  28.  */
  29.  
  30. /*
  31.  * Does the compiler grok void *
  32.  */
  33. #undef    VOIDP
  34.  
  35. /*
  36.  * Which version of the Sun RPC library we are using
  37.  * This is the implementation release number, not
  38.  * the protocol revision number.
  39.  */
  40. #define    RPC_3
  41.  
  42. /*
  43.  * Which version of the NFS interface are we using.
  44.  * This is the implementation release number, not
  45.  * the protocol revision number.
  46.  */
  47. #define    NFS_3
  48.  
  49. /*
  50.  * Byte ordering
  51.  */
  52. #undef    ARCH_ENDIAN
  53. #if defined(vax)
  54. #define    ARCH_ENDIAN "little"
  55. #endif
  56.  
  57. /*
  58.  * The mount table is obtained from the kernel
  59.  */
  60. #undef    UPDATE_MTAB
  61.  
  62. /*
  63.  * No mntent info on Ultrix
  64.   */
  65. #undef    MNTENT_HDR
  66.  
  67. /*
  68.  * No support for syslog()
  69.  */
  70. #undef    HAS_SYSLOG
  71.  
  72. /*
  73.  * No support for ndbm
  74.  */
  75. #undef    HAS_NDBM_MAPS
  76.  
  77. /*
  78.  * Name of filesystem types
  79.  */
  80. #define    MOUNT_TYPE_NFS    GT_NFS
  81. #define    MOUNT_TYPE_UFS    GT_ULTRIX
  82. #undef    MTAB_TYPE_UFS
  83. #define    MTAB_TYPE_UFS    "ufs"
  84.  
  85. /*
  86.  * Name of mount & unmount system calls
  87.  */
  88. #undef    MOUNT_TRAP
  89. #define    MOUNT_TRAP(type, mnt, flag, mnt_data) \
  90.     mount(mnt->mnt_fsname, mnt->mnt_dir, flag, type, mnt_data)
  91. #undef    UNMOUNT_TRAP
  92. #define    UNMOUNT_TRAP(mnt)    umount(mnt->mnt_passno)
  93.  
  94. /*
  95.  * Miscellaneous Ultrix bits
  96.  */
  97. #define    M_RDONLY    M_RONLY
  98.  
  99. #ifndef MNTMAXSTR
  100. #define    MNTMAXSTR       128
  101. #endif
  102.  
  103. #define    MNTTYPE_UFS    "ufs"        /* Un*x file system */
  104. #define    MNTTYPE_NFS    "nfs"        /* network file system */
  105. #define    MNTTYPE_IGNORE    "ignore"    /* No type specified, ignore this entry */
  106.  
  107. #define    MNTOPT_RO    "ro"        /* read only */
  108. #define    MNTOPT_RW    "rw"        /* read/write */
  109. #define    MNTOPT_QUOTA    "quota"        /* quotas */
  110. #define    MNTOPT_NOQUOTA    "noquota"    /* no quotas */
  111. #define    MNTOPT_HARD    "hard"        /* hard mount */
  112. #define    MNTOPT_SOFT    "soft"        /* soft mount */
  113. #define    MNTOPT_INTR    "intr"        /* interrupts allowed */
  114.  
  115. #define    MNTOPT_NOSUID    "nosuid"    /* no set uid allowed */
  116.  
  117. struct mntent {
  118.     char    *mnt_fsname;    /* name of mounted file system */
  119.     char    *mnt_dir;    /* file system path prefix */
  120.     char    *mnt_type;    /* MNTTYPE_* */
  121.     char    *mnt_opts;    /* MNTOPT* */
  122.     int    mnt_freq;    /* dump frequency, in days */
  123.     int    mnt_passno;    /* pass number on parallel fsck */
  124. };
  125. #define    MOUNTED        "/etc/mtab"
  126.  
  127. #define    NFS_HDR    "u2_2-nfs.h"
  128. #define    UFS_HDR    "u2_2-nfs.h"
  129.  
  130. #define    MISC_RPC
  131.  
  132. #define    nfs_args    nfs_gfs_mount
  133. #define    ULTRIX_HACK    /* Should be handled better than this !! */
  134. #define    NEED_MNTOPT_PARSER
  135.  
  136. /*
  137.  * How to get a mount list
  138.  */
  139. #undef    READ_MTAB_FROM_FILE
  140. #define    READ_MTAB_ULTRIX_STYLE
  141.