diff options
author | Moonchild <mcwerewolf@gmail.com> | 2018-05-04 09:09:10 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-05-04 09:09:10 +0200 |
commit | 4a2aeb152e48c44efa57c140660e99792f4dd350 (patch) | |
tree | 7b786de2b175122814a53232268b1147a8bd0bfb /security/sandbox/win/SandboxInitialization.cpp | |
parent | 20532e13937ab5fc8efcb2bfc4c0070dace40cd1 (diff) | |
parent | f265784e8cabaff17f4554cf2bd2c30217b6ec0f (diff) | |
download | UXP-4a2aeb152e48c44efa57c140660e99792f4dd350.tar UXP-4a2aeb152e48c44efa57c140660e99792f4dd350.tar.gz UXP-4a2aeb152e48c44efa57c140660e99792f4dd350.tar.lz UXP-4a2aeb152e48c44efa57c140660e99792f4dd350.tar.xz UXP-4a2aeb152e48c44efa57c140660e99792f4dd350.zip |
Merge pull request #323 from MoonchildProductions/nuke-sandbox
Nuke sandbox
Diffstat (limited to 'security/sandbox/win/SandboxInitialization.cpp')
-rw-r--r-- | security/sandbox/win/SandboxInitialization.cpp | 81 |
1 files changed, 0 insertions, 81 deletions
diff --git a/security/sandbox/win/SandboxInitialization.cpp b/security/sandbox/win/SandboxInitialization.cpp deleted file mode 100644 index e587c2598..000000000 --- a/security/sandbox/win/SandboxInitialization.cpp +++ /dev/null @@ -1,81 +0,0 @@ -/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* vim: set ts=2 et sw=2 tw=80: */ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ - -#include "SandboxInitialization.h" - -#include "sandbox/win/src/sandbox_factory.h" - -namespace mozilla { -namespace sandboxing { - -static sandbox::TargetServices* -InitializeTargetServices() -{ - sandbox::TargetServices* targetServices = - sandbox::SandboxFactory::GetTargetServices(); - if (!targetServices) { - return nullptr; - } - - if (targetServices->Init() != sandbox::SBOX_ALL_OK) { - return nullptr; - } - - return targetServices; -} - -sandbox::TargetServices* -GetInitializedTargetServices() -{ - static sandbox::TargetServices* sInitializedTargetServices = - InitializeTargetServices(); - - return sInitializedTargetServices; -} - -void -LowerSandbox() -{ - GetInitializedTargetServices()->LowerToken(); -} - -static sandbox::BrokerServices* -InitializeBrokerServices() -{ - sandbox::BrokerServices* brokerServices = - sandbox::SandboxFactory::GetBrokerServices(); - if (!brokerServices) { - return nullptr; - } - - if (brokerServices->Init() != sandbox::SBOX_ALL_OK) { - return nullptr; - } - - // Comment below copied from Chromium code. - // Precreate the desktop and window station used by the renderers. - // IMPORTANT: This piece of code needs to run as early as possible in the - // process because it will initialize the sandbox broker, which requires - // the process to swap its window station. During this time all the UI - // will be broken. This has to run before threads and windows are created. - sandbox::TargetPolicy* policy = brokerServices->CreatePolicy(); - sandbox::ResultCode result = policy->CreateAlternateDesktop(true); - policy->Release(); - - return brokerServices; -} - -sandbox::BrokerServices* -GetInitializedBrokerServices() -{ - static sandbox::BrokerServices* sInitializedBrokerServices = - InitializeBrokerServices(); - - return sInitializedBrokerServices; -} - -} // sandboxing -} // mozilla |