Source file config.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
let pollin = 0x1
let pollout = 0x4
let pollerr = 0x8
let pollhup = 0x10
let o_rdonly = 0x0
let o_wronly = 0x1
let o_rdwr = 0x2
let o_creat = 0x40
let o_excl = 0x80
let o_noctty = 0x100
let o_trunc = 0x200
let o_append = 0x400
let o_nonblock = 0x800
let o_dsync = 0x1000
let o_direct = 0x4000
let o_largefile = 0x0
let o_directory = 0x10000
let o_nofollow = 0x20000
let o_noatime = 0x40000
let o_cloexec = 0x80000
let o_sync = 0x101000
let o_path = 0x200000
let o_tmpfile = 0x410000
let at_fdcwd = 0x7fffffffffffff9c
let iov_max = 0x400
let sizeof_iovec = 0x10
let sizeof_kernel_timespec = 0x10
module Op : sig
  type t
  val nop : t
  val readv : t
  val writev : t
  val fsync : t
  val read_fixed : t
  val write_fixed : t
  val poll_add : t
  val poll_remove : t
  val sync_file_range : t
  val sendmsg : t
  val recvmsg : t
  val timeout : t
  val timeout_remove : t
  val accept : t
  val async_cancel : t
  val link_timeout : t
  val connect : t
  val fallocate : t
  val openat : t
  val close : t
  val files_update : t
  val statx : t
  val read : t
  val write : t
  val fadvise : t
  val madvise : t
  val send : t
  val recv : t
  val openat2 : t
  val epoll_ctl : t
  val splice : t
  val provide_buffers : t
  val remove_buffers : t
  val tee : t
  val shutdown : t
  val renameat : t
  val unlinkat : t
  val mkdirat : t
  val symlinkat : t
  val linkat : t
  val msg_ring : t
  val fsetxattr : t
  val setxattr : t
  val fgetxattr : t
  val getxattr : t
  val socket : t
  val uring_cmd : t
end = struct
  type t = int
  let nop = 0x0
  let readv = 0x1
  let writev = 0x2
  let fsync = 0x3
  let read_fixed = 0x4
  let write_fixed = 0x5
  let poll_add = 0x6
  let poll_remove = 0x7
  let sync_file_range = 0x8
  let sendmsg = 0x9
  let recvmsg = 0xa
  let timeout = 0xb
  let timeout_remove = 0xc
  let accept = 0xd
  let async_cancel = 0xe
  let link_timeout = 0xf
  let connect = 0x10
  let fallocate = 0x11
  let openat = 0x12
  let close = 0x13
  let files_update = 0x14
  let statx = 0x15
  let read = 0x16
  let write = 0x17
  let fadvise = 0x18
  let madvise = 0x19
  let send = 0x1a
  let recv = 0x1b
  let openat2 = 0x1c
  let epoll_ctl = 0x1d
  let splice = 0x1e
  let provide_buffers = 0x1f
  let remove_buffers = 0x20
  let tee = 0x21
  let shutdown = 0x22
  let renameat = 0x23
  let unlinkat = 0x24
  let mkdirat = 0x25
  let symlinkat = 0x26
  let linkat = 0x27
  let msg_ring = 0x28
  let fsetxattr = 0x29
  let setxattr = 0x2a
  let fgetxattr = 0x2b
  let getxattr = 0x2c
  let socket = 0x2d
  let uring_cmd = 0x2e
end
module At = struct
  let statx_dont_sync = 0x4000
  let statx_force_sync = 0x2000
  let statx_sync_as_stat = 0x0
  let symlink_follow = 0x400
  let symlink_nofollow = 0x100
  let no_automount = 0x800
  let empty_path = 0x1000
end
module Statx = struct
  module Mask = struct
    let dioalign = 0x2000
    let mnt_id = 0x1000
    let btime = 0x800
    let basic_stats = 0x7ff
    let blocks = 0x400
    let size = 0x200
    let ino = 0x100
    let ctime = 0x80
    let mtime = 0x40
    let atime = 0x20
    let gid = 0x10
    let uid = 0x8
    let nlink = 0x4
    let mode = 0x2
    let type' = 0x1
  end
  module Attr = struct
    let dax = 0x200000
    let verity = 0x100000
    let encrypted = 0x800
    let nodump = 0x40
    let append = 0x20
    let immutable = 0x10
    let compressed = 0x4
  end
end