1#ifndef _SYS_MOUNT_H 2#define _SYS_MOUNT_H 3 4#ifdef __cplusplus 5extern "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 66int mount(const char *, const char *, const char *, unsigned long, const void *); 67int umount(const char *); 68int umount2(const char *, int); 69 70#ifdef __cplusplus 71} 72#endif 73 74#endif 75