]>
Commit | Line | Data |
---|---|---|
93995795 | 1 | /* Header file for mounting/unmount Linux filesystems. |
867506f3 | 2 | Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc. |
8a4b65b4 | 3 | This file is part of the GNU C Library. |
93995795 | 4 | |
8a4b65b4 UD |
5 | The GNU C Library is free software; you can redistribute it and/or |
6 | modify it under the terms of the GNU Library General Public License as | |
7 | published by the Free Software Foundation; either version 2 of the | |
8 | License, or (at your option) any later version. | |
93995795 | 9 | |
8a4b65b4 UD |
10 | The GNU C Library is distributed in the hope that it will be useful, |
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
13 | Library General Public License for more details. | |
93995795 | 14 | |
8a4b65b4 UD |
15 | You should have received a copy of the GNU Library General Public |
16 | License along with the GNU C Library; see the file COPYING.LIB. If not, | |
17 | write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
18 | Boston, MA 02111-1307, USA. */ | |
93995795 | 19 | |
51702635 UD |
20 | /* This is taken from /usr/include/linux/fs.h. */ |
21 | ||
93995795 | 22 | #ifndef _SYS_MOUNT_H |
8a4b65b4 | 23 | #define _SYS_MOUNT_H 1 |
93995795 | 24 | |
867506f3 | 25 | #include <features.h> |
51702635 UD |
26 | #include <sys/ioctl.h> |
27 | ||
51702635 UD |
28 | #define BLOCK_SIZE 1024 |
29 | #define BLOCK_SIZE_BITS 10 | |
30 | ||
31 | ||
32 | /* These are the fs-independent mount-flags: up to 16 flags are | |
33 | supported */ | |
867506f3 UD |
34 | enum |
35 | { | |
36 | MS_RDONLY = 1, /* Mount read-only. */ | |
37 | #define MS_RDONLY MS_RDONLY | |
38 | MS_NOSUID = 2, /* Ignore suid and sgid bits. */ | |
39 | #define MS_NOSUID MS_NOSUID | |
40 | MS_NODEV = 4, /* Disallow access to device special files. */ | |
41 | #define MS_NODEV MS_NODEV | |
42 | MS_NOEXEC = 8, /* Disallow program execution. */ | |
43 | #define MS_NOEXEC MS_NOEXEC | |
44 | MS_SYNCHRONOUS = 16, /* Writes are synced at once. */ | |
45 | #define MS_SYNCHRONOUS MS_SYNCHRONOUS | |
46 | MS_REMOUNT = 32, /* Alter flags of a mounted FS. */ | |
47 | #define MS_REMOUNT MS_REMOUNT | |
48 | MS_MANDLOCK = 64, /* Allow mandatory locks on an FS. */ | |
49 | #define MS_MANDLOCK MS_MANDLOCK | |
50 | S_WRITE = 128, /* Write on file/directory/symlink. */ | |
51 | #define S_WRITE S_WRITE | |
52 | S_APPEND = 256, /* Append-only file. */ | |
53 | #define S_APPEND S_APPEND | |
54 | S_IMMUTABLE = 512, /* Immutable file. */ | |
55 | #define S_IMMUTABLE S_IMMUTABLE | |
bf7997b6 | 56 | MS_NOATIME = 1024, /* Do not update access times. */ |
867506f3 | 57 | #define MS_NOATIME MS_NOATIME |
bf7997b6 UD |
58 | MS_NODIRATIME = 2048 /* Do not update directory access times. */ |
59 | #define MS_NODIRATIME MS_NODIRATIME | |
867506f3 | 60 | }; |
51702635 UD |
61 | |
62 | /* Flags that can be altered by MS_REMOUNT */ | |
63 | #define MS_RMT_MASK (MS_RDONLY | MS_MANDLOCK) | |
64 | ||
65 | ||
66 | /* Magic mount flag number. Has to be or-ed to the flag values. */ | |
67 | ||
68 | #define MS_MGC_VAL 0xc0ed0000 /* Magic flag number to indicate "new" flags */ | |
69 | #define MS_MGC_MSK 0xffff0000 /* Magic flag number mask */ | |
70 | ||
71 | ||
51702635 UD |
72 | /* The read-only stuff doesn't really belong here, but any other place |
73 | is probably as bad and I don't want to create yet another include | |
74 | file. */ | |
75 | ||
76 | #define BLKROSET _IO(0x12, 93) /* Set device read-only (0 = read-write). */ | |
77 | #define BLKROGET _IO(0x12, 94) /* Get read-only status (0 = read_write). */ | |
78 | #define BLKRRPART _IO(0x12, 95) /* Re-read partition table. */ | |
79 | #define BLKGETSIZE _IO(0x12, 96) /* Return device size. */ | |
80 | #define BLKFLSBUF _IO(0x12, 97) /* Flush buffer cache. */ | |
81 | #define BLKRASET _IO(0x12, 98) /* Set read ahead for block device. */ | |
82 | #define BLKRAGET _IO(0x12, 99) /* Get current read ahead setting. */ | |
83 | ||
84 | ||
867506f3 UD |
85 | __BEGIN_DECLS |
86 | ||
93995795 | 87 | /* Mount a filesystem. */ |
8a4b65b4 UD |
88 | extern int mount __P ((__const char *__special_file, __const char *__dir, |
89 | __const char *__fstype, unsigned long int __rwflag, | |
90 | __const void *__data)); | |
93995795 RM |
91 | |
92 | /* Unmount a filesystem. */ | |
8a4b65b4 | 93 | extern int umount __P ((__const char *__special_file)); |
93995795 RM |
94 | |
95 | __END_DECLS | |
96 | ||
97 | #endif /* _SYS_MOUNT_H */ |