home *** CD-ROM | disk | FTP | other *** search
/ NeXTSTEP 3.2 (Developer) / NS_dev_3.2.iso / NextDeveloper / Headers / bsd / sys / mount.h < prev    next >
C/C++ Source or Header  |  1993-10-19  |  3KB  |  113 lines

  1. /* 
  2.  * Mach Operating System
  3.  * Copyright (c) 1987 Carnegie-Mellon University
  4.  * All rights reserved.  The CMU software License Agreement specifies
  5.  * the terms and conditions for use and redistribution.
  6.  */
  7. /*
  8.  * HISTORY
  9.  * 27-Sep-91  Kevin Wells (kwells) at NeXT
  10.  *    Added Mac file system argument struct. Did not add file system
  11.  *    type - these are now allocated dynamically for loadable
  12.  *    file systems.
  13.  *
  14.  * 02-May-90  Morris Meyer (mmeyer) at NeXT
  15.  *    Added CD-ROM file system mount type.
  16.  *
  17.  * 27-Sep-89  Morris Meyer (mmeyer) at NeXT
  18.  *    NFS 4.0 Changes: Additional mount options, hooks for other filesystems
  19.  *
  20.  * 11-Aug-87  Peter King (king) at NeXT
  21.  *    Add SUN_VFS support.  Also, added NFS mount structures.
  22.  */
  23.  
  24. /*
  25.  * Copyright (c) 1982, 1986 Regents of the University of California.
  26.  * All rights reserved.  The Berkeley software License Agreement
  27.  * specifies the terms and conditions for redistribution.
  28.  *
  29.  *    @(#)mount.h    7.1 (Berkeley) 6/4/86
  30.  */
  31.  
  32. /*    @(#)mount.h    1.3 88/05/18 4.0NFSSRC SMI    */
  33.  
  34. /*
  35.  * mount options
  36.  */
  37. #define M_RDONLY    0x01    /* mount fs read only */
  38. #define M_NOSUID    0x02    /* mount fs with setuid not allowed */
  39. #define    M_NEWTYPE    0x04    /* use type string instead of int */
  40. #define    M_GRPID        0x08    /* Old BSD group-id on create */
  41. #define M_REMOUNT    0x10    /* change options on an existing mount */
  42. #define M_NOSUB        0x20    /* Disallow mounts beneath this mount */
  43. #define M_MULTI        0x40    /* Do multi-component lookup on files */
  44.  
  45. #if    NeXT
  46. #define    M_VIRTUAL    0x8000    /* Internal kernel flag for virtual mount */
  47. #endif    NeXT
  48.  
  49. /*
  50.  * File system types, these corespond to entries in fsconf
  51.  */
  52. #ifdef NeXT
  53. #define    MOUNT_UFS    0
  54. #define    MOUNT_NFS    1
  55. #define    MOUNT_PC    2
  56. #define    MOUNT_LO    3
  57. #define MOUNT_SPECFS    4
  58. #define MOUNT_CFS    5        /* CD-ROM File system          */
  59. #define    MOUNT_MAXTYPE    6        /* allow for runtime expansion */
  60. #else NeXT
  61. #define    MOUNT_UFS    1
  62. #define    MOUNT_NFS    2
  63. #define    MOUNT_PC    3
  64. #define    MOUNT_LO    4
  65. #define    MOUNT_MAXTYPE    5        /* allow for runtime expansion */
  66. #endif NeXT
  67.  
  68. struct ufs_args {
  69.     char    *fspec;
  70. };
  71.  
  72. #ifdef NeXT
  73. struct pc_args {
  74.     char    *fspec;
  75. };
  76.  
  77. struct cfs_args {
  78.     char     *fspec;
  79. };
  80.  
  81. struct mac_args {
  82.     char     *fspec;
  83. };
  84.  
  85. struct cdaudio_args {
  86.     char     *fspec;
  87. };
  88. #endif NeXT
  89.  
  90. #ifdef LOFS
  91. struct lo_args {
  92.     char    *fsdir;
  93. };
  94. #endif LOFS
  95.  
  96. #ifdef RFS
  97. struct token {
  98.     int    t_id;     /* token id for differentiating multiple ckts    */
  99.     char    t_uname[64]; /* full domain name of machine, 64 = MAXDNAME */
  100. };
  101.  
  102. struct rfs_args {
  103.     char    *rmtfs;        /* name of service (fs) */
  104.     struct token *token;    /* identifier of remote mach */
  105. };
  106.  
  107. /*
  108.  * RFS mount option flags
  109.  */
  110. #define RFS_RDONLY    0x001    /* read-only: passed with remote mount request */
  111. #endif    RFS
  112.  
  113.