3#ifndef __LXC_ATTACH_OPTIONS_H
4#define __LXC_ATTACH_OPTIONS_H
15typedef enum lxc_attach_env_policy_t {
16 LXC_ATTACH_KEEP_ENV = 0,
17#define LXC_ATTACH_KEEP_ENV LXC_ATTACH_KEEP_ENV
19 LXC_ATTACH_CLEAR_ENV = 1,
20#define LXC_ATTACH_CLEAR_ENV LXC_ATTACH_CLEAR_ENV
21} lxc_attach_env_policy_t;
25 LXC_ATTACH_MOVE_TO_CGROUP = 0x00000001,
26#define LXC_ATTACH_MOVE_TO_CGROUP LXC_ATTACH_MOVE_TO_CGROUP
28 LXC_ATTACH_DROP_CAPABILITIES = 0x00000002,
29#define LXC_ATTACH_DROP_CAPABILITIES LXC_ATTACH_DROP_CAPABILITIES
31 LXC_ATTACH_SET_PERSONALITY = 0x00000004,
32#define LXC_ATTACH_SET_PERSONALITY LXC_ATTACH_SET_PERSONALITY
34 LXC_ATTACH_LSM_EXEC = 0x00000008,
35#define LXC_ATTACH_LSM_EXEC LXC_ATTACH_LSM_EXEC
39 LXC_ATTACH_REMOUNT_PROC_SYS = 0x00010000,
40#define LXC_ATTACH_REMOUNT_PROC_SYS LXC_ATTACH_REMOUNT_PROC_SYS
42 LXC_ATTACH_LSM_NOW = 0x00020000,
43#define LXC_ATTACH_LSM_NOW LXC_ATTACH_LSM_NOW
46 LXC_ATTACH_NO_NEW_PRIVS = 0x00040000,
47#define LXC_ATTACH_NO_NEW_PRIVS LXC_ATTACH_NO_NEW_PRIVS
49 LXC_ATTACH_TERMINAL = 0x00080000,
50#define LXC_ATTACH_TERMINAL LXC_ATTACH_TERMINAL
52 LXC_ATTACH_LSM_LABEL = 0x00100000,
53#define LXC_ATTACH_LSM_LABEL LXC_ATTACH_LSM_LABEL
55 LXC_ATTACH_SETGROUPS = 0x00200000,
56#define LXC_ATTACH_SETGROUPS LXC_ATTACH_SETGROUPS
63 LXC_ATTACH_DEFAULT = 0x0000FFFF
64#define LXC_ATTACH_DEFAULT LXC_ATTACH_DEFAULT
68#define LXC_ATTACH_LSM (LXC_ATTACH_LSM_EXEC | LXC_ATTACH_LSM_NOW | LXC_ATTACH_LSM_LABEL)
78typedef int (*lxc_attach_exec_t)(
void* payload);