mount.h
001: 
002: 
003: 
004: 
005: 
006: 
007: 
008: 
009: 
010: 
011: 
012: 
013: 
014: 
015: 
016: 
017: 
018: 
019: 
020: 
021: 
022: #ifndef _SYS_MOUNT_H
023: #define _SYS_MOUNT_H    1
024: 
025: #include <features.h>
026: #include <sys/ioctl.h>
027: 
028: #define BLOCK_SIZE      1024
029: #define BLOCK_SIZE_BITS 10
030: 
031: 
032: 
033: 
034: enum
035: {
036:   MS_RDONLY = 1,                
037: #define MS_RDONLY       MS_RDONLY
038:   MS_NOSUID = 2,                
039: #define MS_NOSUID       MS_NOSUID
040:   MS_NODEV = 4,                 
041: #define MS_NODEV        MS_NODEV
042:   MS_NOEXEC = 8,                
043: #define MS_NOEXEC       MS_NOEXEC
044:   MS_SYNCHRONOUS = 16,          
045: #define MS_SYNCHRONOUS  MS_SYNCHRONOUS
046:   MS_REMOUNT = 32,              
047: #define MS_REMOUNT      MS_REMOUNT
048:   MS_MANDLOCK = 64,             
049: #define MS_MANDLOCK     MS_MANDLOCK
050:   MS_DIRSYNC = 128,             
051: #define MS_DIRSYNC      MS_DIRSYNC
052:   MS_NOATIME = 1024,            
053: #define MS_NOATIME      MS_NOATIME
054:   MS_NODIRATIME = 2048,         
055: #define MS_NODIRATIME   MS_NODIRATIME
056:   MS_BIND = 4096,               
057: #define MS_BIND         MS_BIND
058:   MS_MOVE = 8192,
059: #define MS_MOVE         MS_MOVE
060:   MS_REC = 16384,
061: #define MS_REC          MS_REC
062:   MS_SILENT = 32768,
063: #define MS_SILENT       MS_SILENT
064:   MS_POSIXACL = 1 << 16,        
065: #define MS_POSIXACL     MS_POSIXACL
066:   MS_UNBINDABLE = 1 << 17,      
067: #define MS_UNBINDABLE   MS_UNBINDABLE
068:   MS_PRIVATE = 1 << 18,         
069: #define MS_PRIVATE      MS_PRIVATE
070:   MS_SLAVE = 1 << 19,           
071: #define MS_SLAVE        MS_SLAVE
072:   MS_SHARED = 1 << 20,          
073: #define MS_SHARED       MS_SHARED
074:   MS_RELATIME = 1 << 21,        
075: #define MS_RELATIME     MS_RELATIME
076:   MS_KERNMOUNT = 1 << 22,       
077: #define MS_KERNMOUNT    MS_KERNMOUNT
078:   MS_I_VERSION =  1 << 23,      
079: #define MS_I_VERSION    MS_I_VERSION
080:   MS_STRICTATIME = 1 << 24,     
081: #define MS_STRICTATIME  MS_STRICTATIME
082:   MS_ACTIVE = 1 << 30,
083: #define MS_ACTIVE       MS_ACTIVE
084:   MS_NOUSER = 1 << 31
085: #define MS_NOUSER       MS_NOUSER
086: };
087: 
088: 
089: #define MS_RMT_MASK (MS_RDONLY|MS_SYNCHRONOUS|MS_MANDLOCK|MS_I_VERSION)
090: 
091: 
092: 
093: 
094: #define MS_MGC_VAL 0xc0ed0000   
095: #define MS_MGC_MSK 0xffff0000   
096: 
097: 
098: 
099: 
100: 
101: 
102: #define BLKROSET   _IO(0x12, 93) 
103: #define BLKROGET   _IO(0x12, 94) 
104: #define BLKRRPART  _IO(0x12, 95) 
105: #define BLKGETSIZE _IO(0x12, 96) 
106: #define BLKFLSBUF  _IO(0x12, 97) 
107: #define BLKRASET   _IO(0x12, 98) 
108: #define BLKRAGET   _IO(0x12, 99) 
109: #define BLKFRASET  _IO(0x12,100) 
110: #define BLKFRAGET  _IO(0x12,101) 
111: #define BLKSECTSET _IO(0x12,102) 
112: #define BLKSECTGET _IO(0x12,103) 
113: #define BLKSSZGET  _IO(0x12,104) 
114: #define BLKBSZGET  _IOR(0x12,112,size_t)
115: #define BLKBSZSET  _IOW(0x12,113,size_t)
116: #define BLKGETSIZE64 _IOR(0x12,114,size_t) 
117: 
118: 
119: 
120: enum
121: {
122:   MNT_FORCE = 1,                
123: #define MNT_FORCE MNT_FORCE
124:   MNT_DETACH = 2,               
125: #define MNT_DETACH MNT_DETACH
126:   MNT_EXPIRE = 4,               
127: #define MNT_EXPIRE MNT_EXPIRE
128:   UMOUNT_NOFOLLOW = 8           
129: #define UMOUNT_NOFOLLOW UMOUNT_NOFOLLOW
130: };
131: 
132: 
133: __BEGIN_DECLS
134: 
135: 
136: extern int mount (__const char *__special_file, __const char *__dir,
137:                   __const char *__fstype, unsigned long int __rwflag,
138:                   __const void *__data) __THROW;
139: 
140: 
141: extern int umount (__const char *__special_file) __THROW;
142: 
143: 
144: extern int umount2 (__const char *__special_file, int __flags) __THROW;
145: 
146: __END_DECLS
147: 
148: #endif 
149: 
      
      
      
      
   
      
      
         
            
            © Andrew Scott 2006 -
            2025, 
            All Rights Reserved