1 /*
   2  * CDDL HEADER START
   3  *
   4  * The contents of this file are subject to the terms of the
   5  * Common Development and Distribution License (the "License").
   6  * You may not use this file except in compliance with the License.
   7  *
   8  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
   9  * or http://www.opensolaris.org/os/licensing.
  10  * See the License for the specific language governing permissions
  11  * and limitations under the License.
  12  *
  13  * When distributing Covered Code, include this CDDL HEADER in each
  14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15  * If applicable, add the following below this CDDL HEADER, with the
  16  * fields enclosed by brackets "[]" replaced with your own identifying
  17  * information: Portions Copyright [yyyy] [name of copyright owner]
  18  *
  19  * CDDL HEADER END
  20  */
  21 /*
  22  * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
  23  * Use is subject to license terms.
  24  * Copyright 2015 Nexenta Systems, Inc. All rights reserved.
  25  *
  26  *      Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T
  27  *              All Rights Reserved
  28  */
  29 
  30 #ifndef _SYS_MNTENT_H
  31 #define _SYS_MNTENT_H
  32 
  33 #ifdef  __cplusplus
  34 extern "C" {
  35 #endif
  36 
  37 #define MNTTAB          "/etc/mnttab"
  38 #define VFSTAB          "/etc/vfstab"
  39 #define MNTMAXSTR       128
  40 
  41 #define MNTTYPE_ZFS     "zfs"           /* ZFS file system */
  42 #define MNTTYPE_UFS     "ufs"           /* Unix file system */
  43 #define MNTTYPE_SMBFS   "smbfs"         /* SMBFS file system */
  44 #define MNTTYPE_NFS     "nfs"           /* NFS file system */
  45 #define MNTTYPE_NFS3    "nfs3"          /* NFS Version 3 file system */
  46 #define MNTTYPE_NFS4    "nfs4"          /* NFS Version 4 file system */
  47 #define MNTTYPE_PCFS    "pcfs"          /* PC (MSDOS) file system */
  48 #define MNTTYPE_PC      MNTTYPE_PCFS    /* Deprecated name; use MNTTYPE_PCFS */
  49 #define MNTTYPE_LOFS    "lofs"          /* Loop back file system */
  50 #define MNTTYPE_LO      MNTTYPE_LOFS    /* Deprecated name; use MNTTYPE_LOFS */
  51 #define MNTTYPE_HSFS    "hsfs"          /* High Sierra (9660) file system */
  52 #define MNTTYPE_SWAP    "swap"          /* Swap file system */
  53 #define MNTTYPE_TMPFS   "tmpfs"         /* Tmp volatile file system */
  54 #define MNTTYPE_AUTOFS  "autofs"        /* Automounter ``file'' system */
  55 #define MNTTYPE_MNTFS   "mntfs"         /* In-kernel mnttab */
  56 #define MNTTYPE_DEV     "dev"           /* /dev file system */
  57 #define MNTTYPE_CTFS    "ctfs"          /* Contract file system */
  58 #define MNTTYPE_OBJFS   "objfs"         /* Kernel object file system */
  59 #define MNTTYPE_SHAREFS "sharefs"       /* Kernel sharetab file system */
  60 
  61 
  62 #define MNTOPT_RO       "ro"            /* Read only */
  63 #define MNTOPT_RW       "rw"            /* Read/write */
  64 #define MNTOPT_RQ       "rq"            /* Read/write with quotas */
  65 #define MNTOPT_QUOTA    "quota"         /* Check quotas */
  66 #define MNTOPT_NOQUOTA  "noquota"       /* Don't check quotas */
  67 #define MNTOPT_ONERROR  "onerror"       /* action to taken on error */
  68 #define MNTOPT_SOFT     "soft"          /* Soft mount */
  69 #define MNTOPT_SEMISOFT "semisoft"      /* partial soft, uncommited interface */
  70 #define MNTOPT_HARD     "hard"          /* Hard mount */
  71 #define MNTOPT_SUID     "suid"          /* Both setuid and devices allowed */
  72 #define MNTOPT_NOSUID   "nosuid"        /* Neither setuid nor devices allowed */
  73 #define MNTOPT_DEVICES  "devices"       /* Device-special allowed */
  74 #define MNTOPT_NODEVICES        "nodevices"     /* Device-special disallowed */
  75 #define MNTOPT_SETUID   "setuid"        /* Set uid allowed */
  76 #define MNTOPT_NOSETUID "nosetuid"      /* Set uid not allowed */
  77 #define MNTOPT_GRPID    "grpid"         /* SysV-compatible gid on create */
  78 #define MNTOPT_REMOUNT  "remount"       /* Change mount options */
  79 #define MNTOPT_NOSUB    "nosub"         /* Disallow mounts on subdirs */
  80 #define MNTOPT_MULTI    "multi"         /* Do multi-component lookup */
  81 #define MNTOPT_INTR     "intr"          /* Allow NFS ops to be interrupted */
  82 #define MNTOPT_NOINTR   "nointr"        /* Don't allow interrupted ops */
  83 #define MNTOPT_PORT     "port"          /* NFS server IP port number */
  84 #define MNTOPT_SECURE   "secure"        /* Secure (AUTH_DES) mounting */
  85 #define MNTOPT_RSIZE    "rsize"         /* Max NFS read size (bytes) */
  86 #define MNTOPT_WSIZE    "wsize"         /* Max NFS write size (bytes) */
  87 #define MNTOPT_TIMEO    "timeo"         /* NFS timeout (1/10 sec) */
  88 #define MNTOPT_RETRANS  "retrans"       /* Max retransmissions (soft mnts) */
  89 #define MNTOPT_ACTIMEO  "actimeo"       /* Attr cache timeout (sec) */
  90 #define MNTOPT_ACREGMIN "acregmin"      /* Min attr cache timeout (files) */
  91 #define MNTOPT_ACREGMAX "acregmax"      /* Max attr cache timeout (files) */
  92 #define MNTOPT_ACDIRMIN "acdirmin"      /* Min attr cache timeout (dirs) */
  93 #define MNTOPT_ACDIRMAX "acdirmax"      /* Max attr cache timeout (dirs) */
  94 #define MNTOPT_NOAC     "noac"          /* Don't cache attributes at all */
  95 #define MNTOPT_NOCTO    "nocto"         /* No close-to-open consistency */
  96 #define MNTOPT_BG       "bg"            /* Do mount retries in background */
  97 #define MNTOPT_FG       "fg"            /* Do mount retries in foreground */
  98 #define MNTOPT_RETRY    "retry"         /* Number of mount retries */
  99 #define MNTOPT_DEV      "dev"           /* Device id of mounted fs */
 100 #define MNTOPT_POSIX    "posix"         /* Get static pathconf for mount */
 101 #define MNTOPT_MAP      "map"           /* Automount map */
 102 #define MNTOPT_DIRECT   "direct"        /* Automount   direct map mount */
 103 #define MNTOPT_INDIRECT "indirect"      /* Automount indirect map mount */
 104 #define MNTOPT_LLOCK    "llock"         /* Local locking (no lock manager) */
 105 #define MNTOPT_IGNORE   "ignore"        /* Ignore this entry */
 106 #define MNTOPT_VERS     "vers"          /* protocol version number indicator */
 107 #define MNTOPT_PROTO    "proto"         /* protocol network_id indicator */
 108 #define MNTOPT_SEC      "sec"           /* Security flavor indicator */
 109 #define MNTOPT_SYNCDIR  "syncdir"       /* Synchronous local directory ops */
 110 #define MNTOPT_NOSETSEC "nosec"         /* Do no allow setting sec attrs */
 111 #define MNTOPT_NOPRINT  "noprint"       /* Do not print messages */
 112 #define MNTOPT_LARGEFILES "largefiles"  /* allow large files */
 113 #define MNTOPT_NOLARGEFILES "nolargefiles" /* don't allow large files */
 114 #define MNTOPT_FORCEDIRECTIO "forcedirectio" /* Force DirectIO on all files */
 115 #define MNTOPT_NOFORCEDIRECTIO "noforcedirectio" /* No Force DirectIO */
 116 #define MNTOPT_DISABLEDIRECTIO "disabledirectio" /* Disable DirectIO ioctls */
 117 #define MNTOPT_PUBLIC   "public"        /* Use NFS public file handlee */
 118 #define MNTOPT_LOGGING "logging"        /* enable logging */
 119 #define MNTOPT_NOLOGGING "nologging"    /* disable logging */
 120 #define MNTOPT_ATIME    "atime"         /* update atime for files */
 121 #define MNTOPT_NOATIME  "noatime"       /* do not update atime for files */
 122 #define MNTOPT_GLOBAL   "global"        /* Cluster-wide global mount */
 123 #define MNTOPT_NOGLOBAL "noglobal"      /* Mount local to single node */
 124 #define MNTOPT_DFRATIME "dfratime"      /* Deferred access time updates */
 125 #define MNTOPT_NODFRATIME "nodfratime"  /* No Deferred access time updates */
 126 #define MNTOPT_NBMAND   "nbmand"        /* allow non-blocking mandatory locks */
 127 #define MNTOPT_NONBMAND "nonbmand"      /* deny non-blocking mandatory locks */
 128 #define MNTOPT_XATTR    "xattr"         /* enable extended attributes */
 129 #define MNTOPT_NOXATTR  "noxattr"       /* disable extended attributes */
 130 #define MNTOPT_EXEC     "exec"          /* enable executables */
 131 #define MNTOPT_NOEXEC   "noexec"        /* disable executables */
 132 #define MNTOPT_RESTRICT "restrict"      /* restricted autofs mount */
 133 #define MNTOPT_BROWSE   "browse"        /* browsable autofs mount */
 134 #define MNTOPT_NOBROWSE "nobrowse"      /* non-browsable autofs mount */
 135 #define MNTOPT_ZONE     "zone"  /* zone name - set only for non global zones */
 136 
 137 #ifdef  __cplusplus
 138 }
 139 #endif
 140 
 141 #endif  /* _SYS_MNTENT_H */