Re: RestrictedPython - inserting variables before doing exec(code)

Russ Ferriday <[email protected]>
Newsgroups gmane.comp.web.zope.devel
Message-ID <[email protected]>
Apologies for the noise.
Brain in gear....
--r.

Begin forwarded message:

> From: Russ Ferriday <[email protected]>
> Date: November 3, 2010 12:47:33 PM PDT
> To: zope-dev <[email protected]>
> Subject: RestrictedPython - inserting variables before doing exec(code)
> 
> Good day!
> 
> Refs:
>     http://pypi.python.org/pypi/RestrictedPython
> 
> I want to pass existing bound variables into the environment of some restricted code before running it.  
> 
> This is similar to when globals are passed to compile_restricted_function.
> 
> The idea... 
> 
>         x = 42
>         y = 'foo'
>         src="""print x*2; print y; return printed"""
>         code=compile_restricted(src, '<string>', 'exec')
>         code.global['x'] = x                         # <- just dreaming, here.
>         code.global['y'] = y                         # <- just dreaming, here.
>         ans = exec(code) in restricted_globals
>         print ans                                    # prints   "84\n'foo'\n"
> 
> It's clear that passing in arbitrary objects is not feasible. But what if I'm prepared to constrain input to built-in numeric and string types, possibly in or with nested dicts?
> 
> In many cases the input will be large integer or float arrays, and I want to avoid any nasty
> kludge such as printing those inputs into the top lines of the src ;).  The src in the demo is a constant,
> but in the application, it's provided by users via a list of pre-defined and user-created 'macros'.
> 
> If I'm missing something obvious, flames welcome!
> 
> --r.
> 
> Russ Ferriday -- 
> CEO Topia Systems Ltd.
> [email protected]  --  +1 (805) 910 7877  --  www.topia.com
> 
> 
> 
> 
> 
> 
> 
> 


Russ Ferriday -- Systems Architect & Entrepreneur
CEO Topia Systems Ltd.
[email protected]  --  +1 (805) 910 7877  --  www.topia.com

_______________________________________________
Zope-Dev maillist  -  [email protected]
https://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 https://mail.zope.org/mailman/listinfo/zope-announce
 https://mail.zope.org/mailman/listinfo/zope )
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.