commit | 96dd14e0abd27f2aaac1dc5b8ff40f17e79605f0 | [log] [tgz] |
---|---|---|
author | Allen Webb <allenwebb@google.com> | Wed Jun 17 08:33:50 2020 -0700 |
committer | Allen Webb <allenwebb@google.com> | Thu Jun 18 09:38:43 2020 -0700 |
tree | c12462bccb06babed5abc2a8e153f3ff5b04d259 | |
parent | 83276a060dfc0788c8a5bb25c6c9a8eab81fd932 [diff] |
Migrate "io_jail" crate from crosvm and rename to "minijail". As part of this change minijail-sys was relocated to rust/minijail-sys. This adds minijail crate which provides an interface to libminijail through minijail-sys that conforms to idomatic Rust. It was originally a part of crosvm. Bug: crbug.com/1096175 Test: cargo test Change-Id: I048b81e7f5f92791aa7453b063d45534891707fe
The Minijail homepage and main repo is https://android.googlesource.com/platform/external/minijail/.
There might be other copies floating around, but this is the official one!
Minijail is a sandboxing and containment tool used in Chrome OS and Android. It provides an executable that can be used to launch and sandbox other programs, and a library that can be used by code to sandbox itself.
You're one git clone
away from happiness.
$ git clone https://android.googlesource.com/platform/external/minijail $ cd minijail
Releases are tagged as linux-vXX
: https://android.googlesource.com/platform/external/minijail/+refs
See the HACKING.md document for more details.
See the RELEASE.md document for more details.
See the tools/README.md document for more details.
We've got a couple of contact points.
The following talk serves as a good introduction to Minijail and how it can be used.
The Chromium OS project has a comprehensive sandboxing document that is largely based on Minijail.
After you play with the simple examples below, you should check that out.
# id uid=0(root) gid=0(root) groups=0(root),128(pkcs11) # minijail0 -u jorgelo -g 5000 /usr/bin/id uid=72178(jorgelo) gid=5000(eng) groups=5000(eng)
# minijail0 -u jorgelo -c 3000 -- /bin/cat /proc/self/status Name: cat ... CapInh: 0000000000003000 CapPrm: 0000000000003000 CapEff: 0000000000003000 CapBnd: 0000000000003000