<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" data-hsystem="true"></head>
<body><style>p{margin: 0;padding: 0;}
</style>
<p>Armin,</p>
<p> </p>
<p>A good thought. Sandboxing may actually be an advantage from a security
standpoint. We'll be developing all of the scripts to be run, but there's
always the chance of hacking.</p>
<p> </p>
<p>We can't hard-code the scripts into the binary becuase their purpose is to
adapt behavior to new configurations. Because of this the scripts will be read
from an external source and then executed. This is what makes the the
stdin/stdout streaming version attractive.</p>
<p> </p>
<p>Thanks,</p>
<p>Tom<br><br>On Sat, 25 Apr 2015 09:33:58 +0200, Armin Rigo
<arigo@tunes.org> wrote:</p>
<blockquote style="border-left: 2px solid #000000; padding-right: 0px;
padding-left: 5px; margin-left: 5px; margin-right: 0px;">Hi Tom,<br><br> On 25
April 2015 at 01:32, Maciej Fijalkowski <fijall@gmail.com> wrote:<br> >
On Sat, Apr 25, 2015 at 1:13 AM, <tom@twhanson.com> wrote:<br> >>
Thanks for the idea. I played with the sandboxed version and it looks like<br>
>> it has potential.<br><br> It's not necessarily the only option. A
sandboxed process comes with<br> a lot of other constrains apart from "no
filesystem access". There<br> are alternatives: you could play in ways similar
to how you would<br> solve this with CPython, namely trying to embed the parts
of the<br> standard library and main program that you need. Just like<br>
sandboxing, we don't have much experience and tools to do that<br> ourselves, so
you still need to come up with all the details (and we<br> can help, of
course).<br><br> Maybe something like: we can tweak pypy_setup_home() to accept
NULL as<br> a path. Then it would not try to automatically set up "sys.path"
or<br> import "site". You're left with what is a broken PyPy, in the sense<br>
that you cannot import anything, but then you can do calls like<br>
pypy_execute_source() to run 5-line scripts --- or even, as a hack, to<br>
declare and install complete modules whose source code you have<br> previously
copied into static strings in your binary.<br><br><br> A bientôt,<br><br>
Armin.<br>
</blockquote>
<p><br><br></p>
</body>
</html>