Non-secure execution environment
ken at seehart.com
Fri Apr 17 09:16:10 CEST 2009
rogeeff at gmail.com wrote:
> I am C++ guy for the most part and don't know much of Python, so,
> please, bear with me if I am asking errrm..idiotic question.
> Old rexec module provided kinda 'secure' execution environment. I am
> not looking for security at this point. What I need an execution
> environment which almost like rexec, but is non-secure.
> What I want is:
> separate global dictionary,
> separate list of imported modules,
> separate sys.path
> (optionaly) separate __builtins__
> I might be able to get away without my own builtins, but the rest I
> If it's any help, I plan to use it to execute embedded Python scripts
> from C++.
As far as I know, you can't make multiple instances of the python
environment from within python, but there is an easier way to get what
you want, given that this is an embedding situation.
You can use Py_NewInterpreter() to create multiple instances of python,
which should give you the desired effect (though I have not tried this).
More information about the Python-list