| Index: sandbox_impl.h
|
| ===================================================================
|
| --- sandbox_impl.h (revision 179)
|
| +++ sandbox_impl.h (working copy)
|
| @@ -72,18 +72,19 @@
|
| // This could be because the kernel does not support Seccomp mode, or it
|
| // could be because we fail to successfully rewrite all system call entry
|
| // points.
|
| - // "proc_fd" should be a file descriptor for "/proc", or -1 if not provided
|
| - // by the caller.
|
| - static int supportsSeccompSandbox(int proc_fd)
|
| + // "proc_self" should be a file descriptor for "/proc/self", or -1 if not
|
| + // provided by the caller.
|
| + static int supportsSeccompSandbox(int proc_self)
|
| asm("SupportsSeccompSandbox");
|
|
|
| // The sandbox needs to be able to access "/proc/self/maps". If this file
|
| // is not accessible when "startSandbox()" gets called, the caller can
|
| - // provide an already opened file descriptor by calling "setProcSelfMaps()".
|
| + // provide an already opened file descriptor by calling "setProcSelf()".
|
| // The sandbox becomes the newer owner of this file descriptor and will
|
| - // eventually close it when "startSandbox()" executes.
|
| - static void setProcSelfMaps(int proc_self_maps)
|
| - asm("SeccompSandboxSetProcSelfMaps");
|
| + // eventually close it when "startSandbox()" executes. But if the caller
|
| + // never ends up calling startSandbox(), then the caller must close the
|
| + // file descriptor.
|
| + static void setProcSelf(int proc_self) asm("SeccompSandboxSetProcSelf");
|
|
|
| // This is the main public entry point. It finds all system calls that
|
| // need rewriting, sets up the resources needed by the sandbox, and
|
| @@ -642,6 +643,7 @@
|
| // Seccomp mode.
|
| static void createTrustedThread(SecureMem::Args* secureMem);
|
|
|
| + static int proc_self_;
|
| static int proc_self_maps_;
|
| static enum SandboxStatus {
|
| STATUS_UNKNOWN, STATUS_UNSUPPORTED, STATUS_AVAILABLE, STATUS_ENABLED
|
|
|