jaulib v1.3.6
Jau Support Library (C++, Java, ..)
Loading...
Searching...
No Matches
MountFlags.java
Go to the documentation of this file.
1/**
2 * Author: Sven Gothel <sgothel@jausoft.com>
3 * Copyright (c) 2022 Gothel Software e.K.
4 *
5 * Permission is hereby granted, free of charge, to any person obtaining
6 * a copy of this software and associated documentation files (the
7 * "Software"), to deal in the Software without restriction, including
8 * without limitation the rights to use, copy, modify, merge, publish,
9 * distribute, sublicense, and/or sell copies of the Software, and to
10 * permit persons to whom the Software is furnished to do so, subject to
11 * the following conditions:
12 *
13 * The above copyright notice and this permission notice shall be
14 * included in all copies or substantial portions of the Software.
15 *
16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20 * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21 * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22 * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23 */
24package org.jau.fs.linux;
25
26import org.jau.fs.FileUtil;
27
28/**
29 * Flag bit values for mount() `flags` under GNU/Linux.
30 *
31 * See mount(2) for a detailed description.
32 *
33 * @see FileUtil#mount_image(String, String, String, long, String)
34 * @see FileUtil#mount(String, String, String, long, String)
35 */
36public class MountFlags extends org.jau.fs.MountFlags {
37
38 public static enum Bit implements org.jau.fs.MountFlags.Bit {
39 none ( 0 ),
40 rdonly ( 1 ),
41 nosuid ( 2 ),
42 nodev ( 4 ),
43 noexec ( 8 ),
45 remount ( 32 ),
46 mandlock ( 64 ),
47 dirsync ( 128 ),
48 noatime ( 1024 ),
49 nodiratime ( 2048 ),
50 bind ( 4096 ),
51 move ( 8192 ),
52 rec ( 16384 ),
53 silent ( 32768 ),
54 posixacl ( 1 << 16 ),
55 unbindable ( 1 << 17 ),
56 private_ ( 1 << 18 ),
57 slave ( 1 << 19 ),
58 shared ( 1 << 20 ),
59 relatime ( 1 << 21 ),
60 kernmount ( 1 << 22 ),
61 i_version ( 1 << 23 ),
62 strictatime ( 1 << 24 ),
63 lazytime ( 1 << 25 ),
64 active ( 1 << 30 ),
65 nouser ( 1 << 31 );
66
67 Bit(final long v) { _value = v; }
68 private final long _value;
69
70 @Override
71 public long value() { return _value; }
72 }
73
74 @Override
75 protected Bit[] bit_values() {
76 return Bit.values();
77 }
78
79 public MountFlags(final long v) {
80 super(v);
81 }
82
83 public MountFlags() {
84 super(0);
85 }
86}
Author: Sven Gothel sgothel@jausoft.com Copyright (c) 2022 Gothel Software e.K.