xref: /aosp_15_r20/prebuilts/build-tools/sysroots/arm-unknown-linux-musleabihf/include/linux/landlock.h (revision cda5da8d549138a6648c5ee6d7a49cf8f4a657be)
1*cda5da8dSAndroid Build Coastguard Worker /*
2*cda5da8dSAndroid Build Coastguard Worker  * This file is auto-generated. Modifications will be lost.
3*cda5da8dSAndroid Build Coastguard Worker  *
4*cda5da8dSAndroid Build Coastguard Worker  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5*cda5da8dSAndroid Build Coastguard Worker  * for more information.
6*cda5da8dSAndroid Build Coastguard Worker  */
7*cda5da8dSAndroid Build Coastguard Worker #ifndef _UAPI_LINUX_LANDLOCK_H
8*cda5da8dSAndroid Build Coastguard Worker #define _UAPI_LINUX_LANDLOCK_H
9*cda5da8dSAndroid Build Coastguard Worker #include <linux/types.h>
10*cda5da8dSAndroid Build Coastguard Worker struct landlock_ruleset_attr {
11*cda5da8dSAndroid Build Coastguard Worker   __u64 handled_access_fs;
12*cda5da8dSAndroid Build Coastguard Worker   __u64 handled_access_net;
13*cda5da8dSAndroid Build Coastguard Worker };
14*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_CREATE_RULESET_VERSION (1U << 0)
15*cda5da8dSAndroid Build Coastguard Worker enum landlock_rule_type {
16*cda5da8dSAndroid Build Coastguard Worker   LANDLOCK_RULE_PATH_BENEATH = 1,
17*cda5da8dSAndroid Build Coastguard Worker   LANDLOCK_RULE_NET_PORT,
18*cda5da8dSAndroid Build Coastguard Worker };
19*cda5da8dSAndroid Build Coastguard Worker struct landlock_path_beneath_attr {
20*cda5da8dSAndroid Build Coastguard Worker   __u64 allowed_access;
21*cda5da8dSAndroid Build Coastguard Worker   __s32 parent_fd;
22*cda5da8dSAndroid Build Coastguard Worker } __attribute__((packed));
23*cda5da8dSAndroid Build Coastguard Worker struct landlock_net_port_attr {
24*cda5da8dSAndroid Build Coastguard Worker   __u64 allowed_access;
25*cda5da8dSAndroid Build Coastguard Worker   __u64 port;
26*cda5da8dSAndroid Build Coastguard Worker };
27*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_ACCESS_FS_EXECUTE (1ULL << 0)
28*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_ACCESS_FS_WRITE_FILE (1ULL << 1)
29*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_ACCESS_FS_READ_FILE (1ULL << 2)
30*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_ACCESS_FS_READ_DIR (1ULL << 3)
31*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_ACCESS_FS_REMOVE_DIR (1ULL << 4)
32*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_ACCESS_FS_REMOVE_FILE (1ULL << 5)
33*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_ACCESS_FS_MAKE_CHAR (1ULL << 6)
34*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_ACCESS_FS_MAKE_DIR (1ULL << 7)
35*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_ACCESS_FS_MAKE_REG (1ULL << 8)
36*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_ACCESS_FS_MAKE_SOCK (1ULL << 9)
37*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_ACCESS_FS_MAKE_FIFO (1ULL << 10)
38*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_ACCESS_FS_MAKE_BLOCK (1ULL << 11)
39*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_ACCESS_FS_MAKE_SYM (1ULL << 12)
40*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_ACCESS_FS_REFER (1ULL << 13)
41*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_ACCESS_FS_TRUNCATE (1ULL << 14)
42*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_ACCESS_FS_IOCTL_DEV (1ULL << 15)
43*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_ACCESS_NET_BIND_TCP (1ULL << 0)
44*cda5da8dSAndroid Build Coastguard Worker #define LANDLOCK_ACCESS_NET_CONNECT_TCP (1ULL << 1)
45*cda5da8dSAndroid Build Coastguard Worker #endif
46