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 SANDBOX_LINUX_SUID_SANDBOX_H_
6 #define SANDBOX_LINUX_SUID_SANDBOX_H_
8 #if defined(__cplusplus)
12 // These are command line switches that may be used by other programs
13 // (e.g. Chrome) to construct a command line for the sandbox.
14 static const char kAdjustOOMScoreSwitch
[] = "--adjust-oom-score";
16 static const char kSandboxDescriptorEnvironmentVarName
[] = "SBX_D";
17 static const char kSandboxHelperPidEnvironmentVarName
[] = "SBX_HELPER_PID";
19 static const long kSUIDSandboxApiNumber
= 1;
20 static const char kSandboxEnvironmentApiRequest
[] = "SBX_CHROME_API_RQ";
21 static const char kSandboxEnvironmentApiProvides
[] = "SBX_CHROME_API_PRV";
23 // This number must be kept in sync with common/zygote_commands_linux.h
24 static const int kZygoteIdFd
= 7;
26 // These are the magic byte values which the sandboxed process uses to request
27 // that it be chrooted.
28 static const char kMsgChrootMe
= 'C';
29 static const char kMsgChrootSuccessful
= 'O';
31 // These are set if we have respectively switched to a new PID or NET namespace
32 // by going through the setuid binary helper.
33 static const char kSandboxPIDNSEnvironmentVarName
[] = "SBX_PID_NS";
34 static const char kSandboxNETNSEnvironmentVarName
[] = "SBX_NET_NS";
36 #if defined(__cplusplus)
37 } // namespace sandbox
40 #endif // SANDBOX_LINUX_SUID_SANDBOX_H_