Login  |  Packages  |  Support  |  Bugs
Top Level :: PHP :: sandbox


Package Information
Summary Isolated environment
Maintainers Remi Collet (lead) [details]
Joe Watkins (lead) [details]
License PHP License
Description A sandbox is an isolated environment (a thread in our case); Things may go very
badly wrong in the sandbox environment and not effect the environment that
created it. This means that we must try very hard to limit the influence each
environment has on the other. So the prototype and instructions of entry point
"Closures" are verified to ensure they will not reduce or break isolation.

In practice this means entry point closures must not:

* accept or return by reference
* accept or return objects
* execute a limited set of instructions

Instructions prohibited directly in the sandbox are:

* declare (anonymous) function
* declare (anonymous) class
* lexical scope access
* yield

No instructions are prohibited in the files which the sandbox may include,
but allowing these instructions directly in the code which the sandbox
executes at entry would break the isolation of the sandbox such that we
couldn't be sure the system would remain stable.

With these restrictions in place, we can be sure that a sandbox may do anything
up to but excluding making PHP segfault, and not effect the environment that
created it.

[ Latest Tarball ] [ Changelog ] [ View Statistics ]
[ Browse Source ] [ Package Bugs ]
[ Report new bug ]

Available Releases
Version State Release Date Downloads  
0.1.1 beta 2019-01-16 sandbox-0.1.1.tgz (16.4kB) [ Changelog ]

Release 0.1.1: PHP Version: PHP 7.1.0 or newer
PEAR Package: PEAR 1.10 or newer
Copyright © 2001-2019 The PHP Group
All rights reserved.
Last updated: Sun Jan 27 13:05:01 2019 UTC
Bandwidth and hardware provided by: pair Networks