Annotation of XNU/bsd/sys/loadable_fs.h, revision 1.1.1.1

1.1       root        1: /*
                      2:  * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
                      3:  *
                      4:  * @APPLE_LICENSE_HEADER_START@
                      5:  * 
                      6:  * The contents of this file constitute Original Code as defined in and
                      7:  * are subject to the Apple Public Source License Version 1.1 (the
                      8:  * "License").  You may not use this file except in compliance with the
                      9:  * License.  Please obtain a copy of the License at
                     10:  * http://www.apple.com/publicsource and read it before using this file.
                     11:  * 
                     12:  * This Original Code and all software distributed under the License are
                     13:  * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
                     14:  * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
                     15:  * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
                     16:  * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT.  Please see the
                     17:  * License for the specific language governing rights and limitations
                     18:  * under the License.
                     19:  * 
                     20:  * @APPLE_LICENSE_HEADER_END@
                     21:  */
                     22: /*     @(#)loadable_fs.h       2.0     26/06/90        (c) 1990 NeXT   */
                     23: 
                     24: /* XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
                     25:  *
                     26:  * W I L L    D R A S T I C A L L Y   C H A N G E   S O O N 
                     27:  * U S E   A T  Y O U R   O W N  R I S K
                     28:  *
                     29:  * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX */
                     30: 
                     31: 
                     32: /* 
                     33:  * loadable_fs.h - message struct for loading and initializing loadable
                     34:  *                file systems.
                     35:  *
                     36:  * HISTORY
                     37:  * 26-Jun-90   Doug Mitchell at NeXT
                     38:  *     Created.
                     39:  * 5-Nov-91    Lee Boynton at NeXT
                     40:  *     Added support for initialization, labels, and WSM options
                     41:  * 29-Mar-99   A.Ramesh at Apple
                     42:  *     Added to Mac OS X, removed mach message related defns
                     43:  */
                     44: 
                     45: #ifndef        _LOADABLE_FS_
                     46: #define _LOADABLE_FS_
                     47: 
                     48: 
                     49: /*
                     50:  * Constants for Loadabls FS Utilities (in "/System/Library/Filesystems")
                     51:  *
                     52:  * Example of a /usr/filesystems directory
                     53:  *
                     54:  * /usr/filesystems/dos.fs/dos.util            utility with which WSM 
                     55:  *                                                     communicates
                     56:  * /usr/filesystems/dos.fs/dos.name            "DOS Floppy" 
                     57:  * /usr/filesystems/dos.fs/dos_reloc           actual loadable filesystem
                     58:  * /usr/filesystems/dos.fs/dos.openfs.tiff     "open folder" icon 
                     59:  * /usr/filesystems/dos.fs/dos.fs.tiff         "closed folder" icon 
                     60:  */
                     61: #define FS_DIR_LOCATION                "/System/Library/Filesystems"
                     62: #define FS_DIR_SUFFIX          ".fs"
                     63: #define FS_UTIL_SUFFIX         ".util"
                     64: #define FS_OPEN_SUFFIX         ".openfs.tiff"
                     65: #define FS_CLOSED_SUFFIX       ".fs.tiff"
                     66: #define FS_NAME_SUFFIX         ".name"
                     67: #define FS_LABEL_SUFFIX                ".label"
                     68: 
                     69: /*
                     70:  * .util program commands - all sent in the form "-p" or "-m" ... as argv[1].
                     71:  */
                     72: #define FSUC_PROBE             'p'     /* probe FS for mount or init */
                     73:        /* example usage: foo.util -p fd0 removable writable */ 
                     74: 
                     75: #define FSUC_PROBEFORINIT      'P'     /* probe FS for init only */
                     76:        /* example usage: foo.util -P fd0 removable */ 
                     77: 
                     78: #define FSUC_MOUNT             'm'     /* mount FS */
                     79:        /* example usage: foo.util -m fd0 /bar removable writable */ 
                     80: 
                     81: #define FSUC_REPAIR            'r'     /* repair ('fsck') FS */ 
                     82:        /* example usage: foo.util -r fd0 removable */
                     83: 
                     84: #define        FSUC_INITIALIZE         'i'     /* initialize FS */
                     85:        /* example usage: foo.util -i fd0 removable */ 
                     86: 
                     87: #define FSUC_UNMOUNT           'u'     /* unmount FS */
                     88:        /* example usage: foo.util -u fd0 /bar */ 
                     89: 
                     90: /* The following is not used by Workspace Manager */
                     91: #define FSUC_MOUNT_FORCE       'M'     /* like FSUC_MOUNT, but proceed even on
                     92:                                         * error. */
                     93: /*
                     94:  * Return codes from .util program
                     95:  */
                     96: #define FSUR_RECOGNIZED                (-1)    /* response to FSUC_PROBE; implies that
                     97:                                         * a mount is possible */
                     98: #define FSUR_UNRECOGNIZED      (-2)    /* negative response to FSUC_PROBE */
                     99: #define FSUR_IO_SUCCESS                (-3)    /* mount, unmount, repair succeeded */
                    100: #define FSUR_IO_FAIL           (-4)    /* unrecoverable I/O error */
                    101: #define FSUR_IO_UNCLEAN                (-5)    /* mount failed, file system not clean 
                    102:                                         */
                    103: #define FSUR_INVAL             (-6)    /* invalid argument */
                    104: #define FSUR_LOADERR           (-7)    /* kern_loader error */
                    105: #define FSUR_INITRECOGNIZED    (-8)    /* response to FSUC_PROBE or 
                    106:                                         * FSUC_PROBEFORINIT, implies that
                    107:                                         * initialization is possible */
                    108: 
                    109: /*
                    110:  *     mount parameters passed from WSM to the .util program.
                    111:  */
                    112: #define        DEVICE_READONLY         "readonly"
                    113: #define        DEVICE_WRITABLE         "writable"
                    114: 
                    115: #define        DEVICE_REMOVABLE        "removable"
                    116: #define        DEVICE_FIXED            "fixed"
                    117: 
                    118: /*
                    119:  *     Additional parameters to the mount command - used by WSM when they
                    120:  *     appear in the /etc/mtab file.
                    121:  */
                    122: #define        MNTOPT_FS               "filesystem=" /* e.g. "filesystem=DOS" */
                    123: #define        MNTOPT_REMOVABLE        "removable"
                    124: 
                    125: #endif /* _LOADABLE_FS_ */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.