Home | History | Annotate | Download | only in common
      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.
      4 
      5 #ifndef SANDBOX_LINUX_SUID_SANDBOX_H_
      6 #define SANDBOX_LINUX_SUID_SANDBOX_H_
      7 
      8 #if defined(__cplusplus)
      9 namespace sandbox {
     10 #endif
     11 
     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 kSuidSandboxGetApiSwitch[] = "--get-api";
     15 static const char kAdjustOOMScoreSwitch[] = "--adjust-oom-score";
     16 
     17 static const char kSandboxDescriptorEnvironmentVarName[] = "SBX_D";
     18 static const char kSandboxHelperPidEnvironmentVarName[] = "SBX_HELPER_PID";
     19 
     20 static const long kSUIDSandboxApiNumber = 1;
     21 static const char kSandboxEnvironmentApiRequest[] = "SBX_CHROME_API_RQ";
     22 static const char kSandboxEnvironmentApiProvides[] = "SBX_CHROME_API_PRV";
     23 
     24 // This number must be kept in sync with common/zygote_commands_linux.h
     25 static const int kZygoteIdFd = 7;
     26 
     27 // These are the magic byte values which the sandboxed process uses to request
     28 // that it be chrooted.
     29 static const char kMsgChrootMe = 'C';
     30 static const char kMsgChrootSuccessful = 'O';
     31 
     32 // These are set if we have respectively switched to a new PID or NET namespace
     33 // by going through the setuid binary helper.
     34 static const char kSandboxPIDNSEnvironmentVarName[] = "SBX_PID_NS";
     35 static const char kSandboxNETNSEnvironmentVarName[] = "SBX_NET_NS";
     36 
     37 #if defined(__cplusplus)
     38 }  // namespace sandbox
     39 #endif
     40 
     41 #endif  // SANDBOX_LINUX_SUID_SANDBOX_H_
     42