1 #ifndef _SYS_MOUNT_H 2 #define _SYS_MOUNT_H 3 4 #ifdef __cplusplus 5 extern "C" { 6 #endif 7 8 #include <sys/ioctl.h> 9 10 #define BLKROSET _IO(0x12, 93) 11 #define BLKROGET _IO(0x12, 94) 12 #define BLKRRPART _IO(0x12, 95) 13 #define BLKGETSIZE _IO(0x12, 96) 14 #define BLKFLSBUF _IO(0x12, 97) 15 #define BLKRASET _IO(0x12, 98) 16 #define BLKRAGET _IO(0x12, 99) 17 #define BLKFRASET _IO(0x12,100) 18 #define BLKFRAGET _IO(0x12,101) 19 #define BLKSECTSET _IO(0x12,102) 20 #define BLKSECTGET _IO(0x12,103) 21 #define BLKSSZGET _IO(0x12,104) 22 #define BLKBSZGET _IOR(0x12,112,size_t) 23 #define BLKBSZSET _IOW(0x12,113,size_t) 24 #define BLKGETSIZE64 _IOR(0x12,114,size_t) 25 26 #define MS_RDONLY 1 27 #define MS_NOSUID 2 28 #define MS_NODEV 4 29 #define MS_NOEXEC 8 30 #define MS_SYNCHRONOUS 16 31 #define MS_REMOUNT 32 32 #define MS_MANDLOCK 64 33 #define MS_DIRSYNC 128 34 #define MS_NOATIME 1024 35 #define MS_NODIRATIME 2048 36 #define MS_BIND 4096 37 #define MS_MOVE 8192 38 #define MS_REC 16384 39 #define MS_SILENT 32768 40 #define MS_POSIXACL (1<<16) 41 #define MS_UNBINDABLE (1<<17) 42 #define MS_PRIVATE (1<<18) 43 #define MS_SLAVE (1<<19) 44 #define MS_SHARED (1<<20) 45 #define MS_RELATIME (1<<21) 46 #define MS_KERNMOUNT (1<<22) 47 #define MS_I_VERSION (1<<23) 48 #define MS_STRICTATIME (1<<24) 49 #define MS_LAZYTIME (1<<25) 50 #define MS_NOREMOTELOCK (1<<27) 51 #define MS_NOSEC (1<<28) 52 #define MS_BORN (1<<29) 53 #define MS_ACTIVE (1<<30) 54 #define MS_NOUSER (1U<<31) 55 56 #define MS_RMT_MASK (MS_RDONLY|MS_SYNCHRONOUS|MS_MANDLOCK|MS_I_VERSION|MS_LAZYTIME) 57 58 #define MS_MGC_VAL 0xc0ed0000 59 #define MS_MGC_MSK 0xffff0000 60 61 #define MNT_FORCE 1 62 #define MNT_DETACH 2 63 #define MNT_EXPIRE 4 64 #define UMOUNT_NOFOLLOW 8 65 66 int mount(const char *, const char *, const char *, unsigned long, const void *); 67 int umount(const char *); 68 int umount2(const char *, int); 69 70 #ifdef __cplusplus 71 } 72 #endif 73 74 #endif 75