| Index: experimental/webtry/DESIGN.md
|
| diff --git a/experimental/webtry/DESIGN.md b/experimental/webtry/DESIGN.md
|
| index ddc26f538cba6e18cbb71d13642d0d421f1b2f1f..66c7f1f7986537a33f4d099e8e1aab257756a6c6 100644
|
| --- a/experimental/webtry/DESIGN.md
|
| +++ b/experimental/webtry/DESIGN.md
|
| @@ -25,7 +25,7 @@ for example runtime is limited to 5s of CPU.
|
|
|
| User submitted code is also restricted in the following ways:
|
| * Limited to 10K of code total.
|
| - * No preprocessor use is allowed (no lines can begin with \s*#).
|
| + * No preprocessor use is allowed (no lines can begin with #includes).
|
|
|
|
|
| Architecture
|
| @@ -34,36 +34,36 @@ Architecture
|
| The server runs on GCE, and consists of a Go Web Server that calls out to the
|
| c++ compiler and executes code in a chroot jail. See the diagram below:
|
|
|
| -
|
| - +–––––––––––––+
|
| - | |
|
| - | Browser |
|
| - | |
|
| - +––––––+––––––+
|
| - |
|
| - +––––––+––––––+
|
| - | |
|
| - | |
|
| - | Web Server |
|
| - | |
|
| - | (Go) |
|
| - | |
|
| - | |
|
| - +–––––––+–––––+
|
| - |
|
| - +–––––––+––––––––––+
|
| - | chroot jail |
|
| - | +––––––––––––––+|
|
| - | | seccomp ||
|
| - | | +––––––––––+||
|
| - | | |User code |||
|
| - | | | |||
|
| - | | +----------+||
|
| - | +––------------+|
|
| - | |
|
| - +––––––––––––––––––+
|
| -
|
| -
|
| +
|
| + +–––––––––––––+
|
| + | |
|
| + | Browser |
|
| + | |
|
| + +––––––+––––––+
|
| + |
|
| + +––––––+––––––+
|
| + | |
|
| + | |
|
| + | Web Server |
|
| + | |
|
| + | (Go) |
|
| + | |
|
| + | |
|
| + +–––––––+–––––+
|
| + |
|
| + +–––––––+––––––––––+
|
| + | chroot jail |
|
| + | +––––––––––––––+|
|
| + | | seccomp ||
|
| + | | +––––––––––+||
|
| + | | |User code |||
|
| + | | | |||
|
| + | | +––––––––––+||
|
| + | +––––––––––––––+|
|
| + | |
|
| + +––––––––––––––––––+
|
| +
|
| +
|
| The user code is expanded into a simple template and linked against libskia
|
| and a couple other .o files that contain main() and the code that sets up the
|
| seccomp and rlimit restrictions. This code also sets up the SkCanvas that is
|
|
|