]> git.ipfire.org Git - thirdparty/glibc.git/blame - sysdeps/unix/sysv/linux/sys/mount.h
Update.
[thirdparty/glibc.git] / sysdeps / unix / sysv / linux / sys / mount.h
CommitLineData
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
34enum
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
88extern 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 93extern int umount __P ((__const char *__special_file));
93995795
RM
94
95__END_DECLS
96
97#endif /* _SYS_MOUNT_H */