aboutsummaryrefslogtreecommitdiff
path: root/www/chromium/files/patch-sandbox_policy_sandbox.cc
diff options
context:
space:
mode:
Diffstat (limited to 'www/chromium/files/patch-sandbox_policy_sandbox.cc')
-rw-r--r--www/chromium/files/patch-sandbox_policy_sandbox.cc35
1 files changed, 35 insertions, 0 deletions
diff --git a/www/chromium/files/patch-sandbox_policy_sandbox.cc b/www/chromium/files/patch-sandbox_policy_sandbox.cc
new file mode 100644
index 000000000000..855f4344dff6
--- /dev/null
+++ b/www/chromium/files/patch-sandbox_policy_sandbox.cc
@@ -0,0 +1,35 @@
+--- sandbox/policy/sandbox.cc.orig 2021-06-11 14:21:39 UTC
++++ sandbox/policy/sandbox.cc
+@@ -12,6 +12,10 @@
+ #include "base/android/jni_android.h"
+ #endif // defined(OS_ANDROID)
+
++#if defined(OS_FREEBSD)
++#include "sandbox/policy/freebsd/sandbox_freebsd.h"
++#endif // defined(OS_FREEBSD)
++
+ #if defined(OS_LINUX) || defined(OS_CHROMEOS)
+ #include "sandbox/policy/linux/sandbox_linux.h"
+ #endif // defined(OS_LINUX) || defined(OS_CHROMEOS)
+@@ -29,6 +33,12 @@
+ namespace sandbox {
+ namespace policy {
+
++#if defined(OS_FREEBSD)
++bool Sandbox::Initialize(SandboxType sandbox_type) {
++ return SandboxFreeBSD::GetInstance()->InitializeSandbox(sandbox_type);
++}
++#endif // defined(OS_FREEBSD)
++
+ #if defined(OS_LINUX) || defined(OS_CHROMEOS)
+ bool Sandbox::Initialize(SandboxType sandbox_type,
+ SandboxLinux::PreSandboxHook hook,
+@@ -89,6 +99,8 @@ bool Sandbox::IsProcessSandboxed() {
+ base::android::MethodID::Get<base::android::MethodID::TYPE_STATIC>(
+ env, process_class.obj(), "isIsolated", "()Z");
+ return env->CallStaticBooleanMethod(process_class.obj(), is_isolated);
++#elif defined(OS_FREEBSD)
++ return SandboxFreeBSD::GetInstance()->IsSandboxed();
+ #elif defined(OS_FUCHSIA)
+ // TODO(https://crbug.com/1071420): Figure out what to do here. Process
+ // launching controls the sandbox and there are no ambient capabilities, so