Re-subimission of https://codereview.chromium.org/1041213003/
[chromium-blink-merge.git] / content / public / common / sandbox_linux.h
blobacee4037e74a9a31cdb9c3f17f90a08f295c790f
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CONTENT_PUBLIC_COMMON_SANDBOX_LINUX_H_
6 #define CONTENT_PUBLIC_COMMON_SANDBOX_LINUX_H_
8 namespace content {
10 // These form a bitmask which describes the conditions of the Linux sandbox.
11 // Note: this doesn't strictly give you the current status, it states
12 // what will be enabled when the relevant processes are initialized.
13 enum LinuxSandboxStatus {
14 // SUID sandbox active.
15 kSandboxLinuxSUID = 1 << 0,
17 // Sandbox is using a new PID namespace.
18 kSandboxLinuxPIDNS = 1 << 1,
20 // Sandbox is using a new network namespace.
21 kSandboxLinuxNetNS = 1 << 2,
23 // seccomp-bpf sandbox active.
24 kSandboxLinuxSeccompBPF = 1 << 3,
26 // The Yama LSM module is present and enforcing.
27 kSandboxLinuxYama = 1 << 4,
29 // seccomp-bpf sandbox is active and the kernel supports TSYNC.
30 kSandboxLinuxSeccompTSYNC = 1 << 5,
32 // User namespace sandbox active.
33 kSandboxLinuxUserNS = 1 << 6,
35 // A flag that denotes an invalid sandbox status.
36 kSandboxLinuxInvalid = 1 << 31,
39 } // namespace content
41 #endif // CONTENT_PUBLIC_COMMON_SANDBOX_LINUX_H_