| Index: mojo/nacl/README
 | 
| diff --git a/mojo/nacl/README b/mojo/nacl/README
 | 
| new file mode 100644
 | 
| index 0000000000000000000000000000000000000000..36913ac854728d974c541b3fcb20db443833f121
 | 
| --- /dev/null
 | 
| +++ b/mojo/nacl/README
 | 
| @@ -0,0 +1,24 @@
 | 
| +This is a prototype for plumbing Mojo into the NaCl sandbox.  It is
 | 
| +currently insecure (see below), does not provide a stable ABI (IRT
 | 
| +support must be added), and does not support Mojo functions that
 | 
| +return pointers (for example, MojoMapBuffer).
 | 
| +
 | 
| +generator/interface.py contains a programmatic description of the
 | 
| +stable Mojo interface.  This will need to be updated as the interface
 | 
| +changes.  Run generator/generate_nacl_bindings.py to generate the
 | 
| +bindings that plumb this interface into the NaCl sandbox.
 | 
| +
 | 
| +To test: Build "monacl_shell" and "monacl_test".  Run monacl_shell
 | 
| +with the IRT as the first argument and the monacl_test as the second
 | 
| +argument.  For example, to run a Debug 32-bit Intel build:
 | 
| +
 | 
| +  cd out/Debug
 | 
| +  ./monacl_shell irt_core_newlib_x32.nexe monacl_test_newlib_x32.nexe
 | 
| +
 | 
| +Security TODO list:
 | 
| +  Separate trusted and untrusted Mojo handles.
 | 
| +  Validate and copy option structures.
 | 
| +  Protect untrusted buffers passed into Mojo:
 | 
| +    NaClVmIoWillStart/HasEnded.
 | 
| +    volatile accesses to untrusted memory (untrusted code could race).
 | 
| +  Overflow checking in array bounds validation.
 | 
| 
 |