[BACK]Return to mntopts.h CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / include

Annotation of src/include/mntopts.h, Revision 1.11.6.2

1.11.6.2! simonb      1: /*     $NetBSD: mntopts.h,v 1.11 2008/07/31 05:38:04 simonb Exp $      */
        !             2:
        !             3: /*-
        !             4:  * Copyright (c) 1994
        !             5:  *      The Regents of the University of California.  All rights reserved.
        !             6:  *
        !             7:  * Redistribution and use in source and binary forms, with or without
        !             8:  * modification, are permitted provided that the following conditions
        !             9:  * are met:
        !            10:  * 1. Redistributions of source code must retain the above copyright
        !            11:  *    notice, this list of conditions and the following disclaimer.
        !            12:  * 2. Redistributions in binary form must reproduce the above copyright
        !            13:  *    notice, this list of conditions and the following disclaimer in the
        !            14:  *    documentation and/or other materials provided with the distribution.
        !            15:  * 3. Neither the name of the University nor the names of its contributors
        !            16:  *    may be used to endorse or promote products derived from this software
        !            17:  *    without specific prior written permission.
        !            18:  *
        !            19:  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
        !            20:  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
        !            21:  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
        !            22:  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
        !            23:  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
        !            24:  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
        !            25:  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
        !            26:  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
        !            27:  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
        !            28:  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
        !            29:  * SUCH DAMAGE.
        !            30:  *
        !            31:  *     @(#)mntopts.h   8.7 (Berkeley) 3/29/95
        !            32:  */
        !            33: #ifndef _MNTOPTS_H_
        !            34: #define _MNTOPTS_H_
        !            35:
        !            36: struct mntopt {
        !            37:        const char *m_option;   /* option name */
        !            38:        int m_inverse;          /* if a negative option, eg "dev" */
        !            39:        int m_flag;             /* bit to set, eg. MNT_RDONLY */
        !            40:        int m_altloc;           /* 1 => set bit in altflags */
        !            41: };
        !            42:
        !            43: /* User-visible MNT_ flags. */
        !            44: #define MOPT_ASYNC             { "async",      0, MNT_ASYNC, 0 }
        !            45: #define MOPT_NOCOREDUMP                { "coredump",   1, MNT_NOCOREDUMP, 0 }
        !            46: #define MOPT_NODEV             { "dev",        1, MNT_NODEV, 0 }
        !            47: #define MOPT_NODEVMTIME                { "devmtime",   1, MNT_NODEVMTIME, 0 }
        !            48: #define MOPT_NOEXEC            { "exec",       1, MNT_NOEXEC, 0 }
        !            49: #define MOPT_NOSUID            { "suid",       1, MNT_NOSUID, 0 }
        !            50: #define MOPT_RDONLY            { "rdonly",     0, MNT_RDONLY, 0 }
        !            51: #define MOPT_SYNC              { "sync",       0, MNT_SYNCHRONOUS, 0 }
        !            52: #define MOPT_UNION             { "union",      0, MNT_UNION, 0 }
        !            53: #define MOPT_USERQUOTA         { "userquota",  0, 0, 0 }
        !            54: #define MOPT_GROUPQUOTA                { "groupquota", 0, 0, 0 }
        !            55: #define MOPT_NOATIME           { "atime",      1, MNT_NOATIME, 0 }
        !            56: #define MOPT_SYMPERM           { "symperm",    0, MNT_SYMPERM, 0 }
        !            57: #define MOPT_SOFTDEP           { "softdep",    0, MNT_SOFTDEP, 0 }
        !            58: #define MOPT_LOG               { "log",        0, MNT_LOG, 0 }
        !            59: #define MOPT_IGNORE            { "hidden",     0, MNT_IGNORE, 0 }
        !            60:
        !            61: /* Control flags. */
        !            62: #define MOPT_FORCE             { "force",      0, MNT_FORCE, 0 }
        !            63: #define MOPT_UPDATE            { "update",     0, MNT_UPDATE, 0 }
        !            64: #define MOPT_RELOAD            { "reload",     0, MNT_RELOAD, 0 }
        !            65: #define MOPT_GETARGS           { "getargs",    0, MNT_GETARGS, 0 }
        !            66:
        !            67: /* Support for old-style "ro", "rw" flags. */
        !            68: #define MOPT_RO                        { "ro",         0, MNT_RDONLY, 0 }
        !            69: #define MOPT_RW                        { "rw",         1, MNT_RDONLY, 0 }
        !            70:
        !            71: /* This is parsed by mount(8), but is ignored by specific mount_*(8)s. */
        !            72: #define MOPT_AUTO              { "auto",       0, 0, 0 }
        !            73: #define MOPT_NULL              { NULL,         0, 0, 0 }
        !            74:
        !            75: #define MOPT_FSTAB_COMPAT                                              \
        !            76:        MOPT_RO,                                                        \
        !            77:        MOPT_RW,                                                        \
        !            78:        MOPT_AUTO
        !            79:
        !            80: /* Standard options which all mounts can understand. */
        !            81: #define MOPT_STDOPTS                                                   \
        !            82:        MOPT_USERQUOTA,                                                 \
        !            83:        MOPT_GROUPQUOTA,                                                \
        !            84:        MOPT_FSTAB_COMPAT,                                              \
        !            85:        MOPT_NOCOREDUMP,                                                \
        !            86:        MOPT_NODEV,                                                     \
        !            87:        MOPT_NOEXEC,                                                    \
        !            88:        MOPT_NOSUID,                                                    \
        !            89:        MOPT_RDONLY,                                                    \
        !            90:        MOPT_UNION,                                                     \
        !            91:        MOPT_IGNORE,                                                    \
        !            92:        MOPT_SYMPERM
        !            93:
        !            94: __BEGIN_DECLS
        !            95: typedef struct mntoptparse *mntoptparse_t;
        !            96: mntoptparse_t getmntopts(const char *, const struct mntopt *, int *, int *);
        !            97: const char *getmntoptstr(mntoptparse_t, const char *);
        !            98: long getmntoptnum(mntoptparse_t, const char *);
        !            99: void freemntopts(mntoptparse_t);
        !           100:
        !           101: extern int getmnt_silent;
        !           102: __END_DECLS
        !           103:
        !           104: #endif /* _MNTOPTS_H_ */

CVSweb <webmaster@jp.NetBSD.org>