sandboxed-api/sandboxed_api/sandbox2
Christian Blichmann c99076bf94 Replace std::unique_ptr<uint8_t[]> with vector
No need for the smart pointer indirection when an `std::vector` can also hold
the BPF policy.

PiperOrigin-RevId: 340809220
Change-Id: I8a63567e8042d9ff875cba739e8552db87b6901a
2020-11-05 02:03:46 -08:00
..
examples Initial changes to support AArch64 2020-09-11 06:34:27 -07:00
network_proxy Initial changes to support AArch64 2020-09-11 06:34:27 -07:00
testcases Introduce config header to centralize CPU architecture checks 2020-09-10 05:48:00 -07:00
unwind Refactor stack trace handling 2020-07-20 00:24:40 -07:00
util Cleans up statusor.h includes. 2020-10-15 13:25:30 -07:00
bpfdisassembler.cc Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
bpfdisassembler.h Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
buffer_test.cc Initial changes to support AArch64 2020-09-11 06:34:27 -07:00
buffer.cc Change int64 to size_t in Buffer 2020-10-01 06:45:38 -07:00
buffer.h Change int64 to size_t in Buffer 2020-10-01 06:45:38 -07:00
BUILD.bazel Use Abseil hash maps instead of std::map<T> 2020-11-05 01:49:14 -08:00
client.cc Replace std::unique_ptr<uint8_t[]> with vector 2020-11-05 02:03:46 -08:00
client.h Replace std::unique_ptr<uint8_t[]> with vector 2020-11-05 02:03:46 -08:00
CMakeLists.txt Use Abseil hash maps instead of std::map<T> 2020-11-05 01:49:14 -08:00
comms_test.cc Change int64 to size_t in Buffer 2020-10-01 06:45:38 -07:00
comms_test.proto Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
comms.cc Use size_t/uintptr_t instead of uintptr_t or uint64_t where appropriate 2020-09-18 07:45:03 -07:00
comms.h Change int64 to size_t in Buffer 2020-10-01 06:45:38 -07:00
config.h Initial changes to support AArch64 2020-09-11 06:34:27 -07:00
executor.cc Log details when executor fails to open the sandboxee binary 2020-09-09 02:12:29 -07:00
executor.h Extract ForkClient to a separate target 2020-07-17 04:54:54 -07:00
fork_client.cc Minor ForkClient improvements 2020-10-05 05:10:16 -07:00
fork_client.h Minor ForkClient improvements 2020-10-05 05:10:16 -07:00
forkingclient.cc Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
forkingclient.h Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
forkserver_bin.cc Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
forkserver_test.cc Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
forkserver.cc Internal BUILD refactoring 2020-09-03 07:40:33 -07:00
forkserver.h Extract ForkClient to a separate target 2020-07-17 04:54:54 -07:00
forkserver.proto Internal change 2020-01-31 05:39:25 -08:00
global_forkclient.cc Extract ForkClient to a separate target 2020-07-17 04:54:54 -07:00
global_forkclient.h Extract ForkClient to a separate target 2020-07-17 04:54:54 -07:00
ipc_test.cc Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
ipc.cc Now network proxy server supports IP filtering. API to policybuilder is added to make a list of allowed pairs of allowed IP, mask and port where mask and port are optional. 2020-02-20 07:45:44 -08:00
ipc.h Now network proxy server supports IP filtering. API to policybuilder is added to make a list of allowed pairs of allowed IP, mask and port where mask and port are optional. 2020-02-20 07:45:44 -08:00
limits_test.cc Introduce config header to centralize CPU architecture checks 2020-09-10 05:48:00 -07:00
limits.h Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
logserver.cc Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
logserver.h Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
logserver.proto Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
logsink.cc Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
logsink.h Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
monitor.cc Introduce config header to centralize CPU architecture checks 2020-09-10 05:48:00 -07:00
monitor.h Now network proxy server supports IP filtering. API to policybuilder is added to make a list of allowed pairs of allowed IP, mask and port where mask and port are optional. 2020-02-20 07:45:44 -08:00
mounts_test.cc Cleanup calls to sapi::StatusOr<>::ValueOrDie() 2020-04-02 07:42:45 -07:00
mounts.cc Initial changes to support AArch64 2020-09-11 06:34:27 -07:00
mounts.h Replace sapi::Status with absl::Status 2020-02-27 09:24:12 -08:00
mounttree.proto Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
namespace_test.cc Introduce config header to centralize CPU architecture checks 2020-09-10 05:48:00 -07:00
namespace.cc Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
namespace.h Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
notify_test.cc Initial changes to support AArch64 2020-09-11 06:34:27 -07:00
notify.h Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
policy_test.cc Initial changes to support AArch64 2020-09-11 06:34:27 -07:00
policy.cc Initial changes to support AArch64 2020-09-11 06:34:27 -07:00
policy.h Reduce dependencies on libcap 2020-07-01 08:23:46 -07:00
policybuilder_test.cc Initial changes to support AArch64 2020-09-11 06:34:27 -07:00
policybuilder.cc Add an AllowAccess() convenience function to PolicyBuilder 2020-11-03 02:21:21 -08:00
policybuilder.h Add an AllowAccess() convenience function to PolicyBuilder 2020-11-03 02:21:21 -08:00
README.md Corrects typo in link 2019-10-07 02:36:35 -07:00
regs.cc Initial changes to support AArch64 2020-09-11 06:34:27 -07:00
regs.h Initial changes to support AArch64 2020-09-11 06:34:27 -07:00
result.cc Refactor stack trace handling 2020-07-20 00:24:40 -07:00
result.h Introduce config header to centralize CPU architecture checks 2020-09-10 05:48:00 -07:00
sandbox2_test.cc Introduce config header to centralize CPU architecture checks 2020-09-10 05:48:00 -07:00
sandbox2.cc Internal BUILD refactoring 2020-09-03 07:40:33 -07:00
sandbox2.h Internal BUILD refactoring 2020-09-03 07:40:33 -07:00
sanitizer_test.cc Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
sanitizer.cc Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
sanitizer.h Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
stack_trace_test.cc Refactor stack trace handling 2020-07-20 00:24:40 -07:00
stack_trace.cc Fix dynamic binary startup on PPC and newer glibc (> 2.19) 2020-09-14 01:18:33 -07:00
stack_trace.h Refactor stack trace handling 2020-07-20 00:24:40 -07:00
syscall_defs.cc Initial changes to support AArch64 2020-09-11 06:34:27 -07:00
syscall_defs.h Introduce config header to centralize CPU architecture checks 2020-09-10 05:48:00 -07:00
syscall_test.cc Introduce config header to centralize CPU architecture checks 2020-09-10 05:48:00 -07:00
syscall.cc Initial changes to support AArch64 2020-09-11 06:34:27 -07:00
syscall.h Introduce config header to centralize CPU architecture checks 2020-09-10 05:48:00 -07:00
testing.cc Move filewrapper to tools directory 2020-05-29 05:40:52 -07:00
testing.h Update license header with recommended best practices 2020-01-17 05:05:29 -08:00
util_test.cc Migrate to open-source absl::StatusOr<> 2020-09-03 07:40:48 -07:00
util.cc Cleans up statusor.h includes. 2020-10-15 13:25:30 -07:00
util.h Internal BUILD refactoring 2020-09-03 07:40:33 -07:00
violation.proto Initial changes to support AArch64 2020-09-11 06:34:27 -07:00

Sandbox2

Sandbox2 is a C++ security sandbox for Linux which can be used to run untrusted programs or portions of programs in confined environments. The idea is that the runtime environment is so restricted that security bugs such as buffer overflows in the protected region cause no harm.

Documentation

Detailed developer documentation is available on the Google Developers site for Sandboxed API under Sandbox2.

There is also a Getting Started guide for Sandbox2.