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