0
Files
src/sandbox
Kevin McNee 5e754b1b6a Reland "Reland "Don't include hang_watcher.h from thread_restrictions.h""
This is a reland of 087f254cc6
This reland fixes more IWYU issues. Additionally, we reintroduce some
includes that would have been brought in from hang_watcher.h back into
thread_restrictions.h. These extra includes are those that are
frequently implicitly depended on by code outside of base/.
The intent is to have an overall reduction in included headers by
getting rid of hang_watcher.h in favour of more targeted, smaller
includes, while still having a CL that has a better chance of landing
when it has to race other CLs in the commit queue.

Original change's description:
> Reland "Don't include hang_watcher.h from thread_restrictions.h"
>
> This is a reland of 0e6733427f
> This reland fixes more IWYU issues.
>
> Original change's description:
> > Don't include hang_watcher.h from thread_restrictions.h
> >
> > This is only needed in thread_restrictions.cc.
> > We also fix IWYU issues that this removal revealed.
> >
> > Bug: 1227131
> > Change-Id: I68e19fc27b3ab32f3b423b44c6b4a431a9927732
> > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3060580
> > Auto-Submit: Kevin McNee <mcnee@chromium.org>
> > Reviewed-by: Lei Zhang <thestig@chromium.org>
> > Reviewed-by: Albert J. Wong <ajwong@chromium.org>
> > Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
> > Owners-Override: Lei Zhang <thestig@chromium.org>
> > Commit-Queue: Kevin McNee <mcnee@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#912313}
>
> Bug: 1227131
> Cq-Include-Trybots: luci.chromium.try:win-official;luci.chrome.try:win-chrome,mac-chrome,linux-chrome
> Change-Id: I436be161287647e132c49ec9a31ad0eeda202564
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3098329
> Reviewed-by: Lei Zhang <thestig@chromium.org>
> Owners-Override: Lei Zhang <thestig@chromium.org>
> Commit-Queue: Kevin McNee <mcnee@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#912712}

Bug: 1227131
Change-Id: I020d7cf646e481a99c85c7b5226d211f2c838eaa
Cq-Include-Trybots: luci.chromium.try:win-official,ios-device,linux_chromium_asan_rel_ng,mac_chromium_archive_rel_ng,win_archive;luci.chrome.try:win-chrome,mac-chrome,linux-chrome
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3101285
Reviewed-by: Lei Zhang <thestig@chromium.org>
Owners-Override: Lei Zhang <thestig@chromium.org>
Commit-Queue: Kevin McNee <mcnee@chromium.org>
Cr-Commit-Position: refs/heads/main@{#913170}
2021-08-18 21:59:30 +00:00
..

Sandbox Library

This directory contains platform-specific sandboxing libraries. Sandboxing is a technique that can improve the security of an application by separating untrustworthy code (or code that handles untrustworthy data) and restricting its privileges and capabilities.

Each platform relies on the operating system's process primitive to isolate code into distinct security principals, and platform-specific technologies are used to implement the privilege reduction. At a high-level:

  • mac/ uses the Seatbelt sandbox. See the detailed design for more.
  • linux/ uses namespaces and Seccomp-BPF. See the detailed design for more.
  • win/ uses a combination of restricted tokens, distinct job objects, alternate desktops, and integrity levels. See the detailed design for more.

Built on top of the low-level sandboxing library is the //sandbox/policy component, which provides concrete policies and helper utilities for sandboxing specific Chromium processes and services. The core sandbox library cannot depend on the policy component.