Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(283)

Side by Side Diff: mojo/nacl/sfi/README.md

Issue 1398213003: Refactored Non-SFI and SFI NaCl into separate directories. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 About
2 =====
3
4 This is a prototype for plumbing Mojo into the NaCl sandbox. It is
5 currently insecure (see below), does not provide a stable ABI (IRT
Mark Seaborn 2015/10/12 17:18:50 IRT support was added. I'm picking on this becaus
Sean Klein 2015/10/12 19:10:44 Done.
6 support must be added), and does not support Mojo functions that
7 return pointers (for example, `MojoMapBuffer`).
8
9 Currently, SFI NaCl support is not being actively developed, in favor of
10 non-SFI NaCl support.
11
12 Using
13 =====
14
15 The SFI NaCl and accompanying tests should be built by default for Linux.
16 The boolean indicating if they are built is "mojo_use_nacl", defined inside
17 the BUILD files.
18
19 This should create a "monacl_shell" executable, capable of running standalone
20 SFI nexes.
21
22 Additionally, it will create a content handler for SFI nexes -- any Nexe
23 with the line "#!mojo mojo:nacl_content_handler" prepended to it will be
24 redirected to the SFI content handler when run with the "mojo_shell".
25
26
27 Notes
28 =====
29
30 `nacl_bindings_generator/interface.py` contains a programmatic description of
31 the stable Mojo interface. This will need to be updated as the interface
32 changes. Run `nacl_bindings_generator/generate_nacl_bindings.py` to generate
33 the bindings that plumb this interface into the NaCl sandbox.
34
35 Security TODO
36 =============
37
38 * Separate trusted and untrusted Mojo handles.
Mark Seaborn 2015/10/12 17:18:50 Nick did implement this.
Sean Klein 2015/10/12 19:10:44 Removed.
39 * Validate and copy option structures.
40 * Protect untrusted buffers passed into Mojo:
41 * `NaClVmIoWillStart/HasEnded`.
42 * volatile accesses to untrusted memory (untrusted code could race).
43 * Overflow checking in array bounds validation.
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698