| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "sandbox/win/src/sandbox_policy_base.h" | 5 #include "sandbox/win/src/sandbox_policy_base.h" |
| 6 | 6 |
| 7 #include "base/basictypes.h" | 7 #include "base/basictypes.h" |
| 8 #include "base/callback.h" | 8 #include "base/callback.h" |
| 9 #include "base/logging.h" | 9 #include "base/logging.h" |
| 10 #include "base/win/windows_version.h" | 10 #include "base/win/windows_version.h" |
| (...skipping 460 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 471 if (!appcontainer_list_.get() || !appcontainer_list_->HasAppContainer()) | 471 if (!appcontainer_list_.get() || !appcontainer_list_->HasAppContainer()) |
| 472 return NULL; | 472 return NULL; |
| 473 | 473 |
| 474 return appcontainer_list_.get(); | 474 return appcontainer_list_.get(); |
| 475 } | 475 } |
| 476 | 476 |
| 477 bool PolicyBase::AddTarget(TargetProcess* target) { | 477 bool PolicyBase::AddTarget(TargetProcess* target) { |
| 478 if (NULL != policy_) | 478 if (NULL != policy_) |
| 479 policy_maker_->Done(); | 479 policy_maker_->Done(); |
| 480 | 480 |
| 481 if (!ApplyProcessMitigationsToSuspendedProcess(target->Process(), | 481 if (!ApplyProcessMitigationsToSuspendedTarget(target, mitigations_)) |
| 482 mitigations_)) { | |
| 483 return false; | 482 return false; |
| 484 } | |
| 485 | 483 |
| 486 if (!SetupAllInterceptions(target)) | 484 if (!SetupAllInterceptions(target)) |
| 487 return false; | 485 return false; |
| 488 | 486 |
| 489 if (!SetupHandleCloser(target)) | 487 if (!SetupHandleCloser(target)) |
| 490 return false; | 488 return false; |
| 491 | 489 |
| 492 // Initialize the sandbox infrastructure for the target. | 490 // Initialize the sandbox infrastructure for the target. |
| 493 if (ERROR_SUCCESS != target->Init(this, policy_, kIPCMemSize, kPolMemSize)) | 491 if (ERROR_SUCCESS != target->Init(this, policy_, kIPCMemSize, kPolMemSize)) |
| 494 return false; | 492 return false; |
| (...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 624 | 622 |
| 625 // Finally, setup imports on the target so the interceptions can work. | 623 // Finally, setup imports on the target so the interceptions can work. |
| 626 return SetupNtdllImports(target); | 624 return SetupNtdllImports(target); |
| 627 } | 625 } |
| 628 | 626 |
| 629 bool PolicyBase::SetupHandleCloser(TargetProcess* target) { | 627 bool PolicyBase::SetupHandleCloser(TargetProcess* target) { |
| 630 return handle_closer_.InitializeTargetHandles(target); | 628 return handle_closer_.InitializeTargetHandles(target); |
| 631 } | 629 } |
| 632 | 630 |
| 633 } // namespace sandbox | 631 } // namespace sandbox |
| OLD | NEW |