For the second discussion (004740.html), it wasn't discussed, but the user could have followed the Second Life approach to gauging/pausing/resuming execution [1]. From the Second Life blog [2]: "The other difficulty with Second Life scripts is that they can migrate between simulators while they are running. You are perfectly entitled to write a script which never stops running and then to tie it to a rocket that you fire in to another region. This is relatively easy to do when all of your script state is in a single 16K block, but much harder when your script has been Just In Time compiled to machine code and its state is scattered throughout memory, registers and an operating system thread. The solution we implemented for Second Life was to use RAIL on top of .NETs Reflection and Reflection.Emit facilities to inject microthreading in to the script assemblies, an approach used by the JavaGoX and Brakes projects to implement mobile agents in Java. Our microthread injector searches through the script assembly finding points where the script should yield and inducing the types on the stack at those points. It can then inject extra opcodes in to the assembly which copy the stack in to a heap object and cause the script to yield. Whenever a script yields we can restore another script from its previously saved heap object and start it running again, allowing us to schedule many microthreaded scripts on a single operating system thread. By marking the heap objects as serializable we can then just use the standard .NET communication facilities to migrate scripts to remote simulators where they can continue running." [1] http://download.microsoft.com/download/9/4/1/94138e2a-d9dc-435a-9240-bcd985bf5bd7/Jim-Cory-SecondLife.wmv [2] http://blog.secondlife.com/2006/05/05/microthreading-mono/
_____ From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Michael Foord Sent: Saturday, August 23, 2008 2:45 PM To: Discussion of IronPython Subject: Re: [IronPython] Re strict imports 2008/8/23 Dody Gunawinata <[EMAIL PROTECTED]> http://lists.ironpython.com/htdig.cgi/users-ironpython.com/2008-April/006765.html Points to a bug in IronPython that is now fixed: http://www.codeplex.com/IronPython/WorkItem/View.aspx?WorkItemId=15928 <http://lists.ironpython.com/htdig.cgi/users-ironpython.com/2008-April/006765.html> http://lists.ironpython.com/htdig.cgi/users-ironpython.com/2007-April/004740.html A discussion by someone who wants to do a lot more than just restrict imports and file access. Michael On Sat, Aug 23, 2008 at 3:32 PM, Michael Foord <[EMAIL PROTECTED]> wrote: > Search the mailing list archive on this issue. The bottom line is, you > can't > - but there are tricks to make it more difficult. > Is that true? You can create an IronPython Engine in an AppDomain (IronPython 2 has lots of explicit support for this) and restrict the privileges of the AppDomain. Why would that not work? Michael > Dody G. > > On Fri, Aug 22, 2008 at 10:03 PM, Huzaifa <[EMAIL PROTECTED]> wrote: > >> >> how can i restrict my user that he can not perform any imports or I/O >> operations in the script. >> -- >> View this message in context: >> http://www.nabble.com/Restrict-imports-tp19113682p19113682.html >> Sent from the IronPython mailing list archive at Nabble.com. >> >> _______________________________________________ >> Users mailing list >> Users@lists.ironpython.com >> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com >> > > > > -- > nomadlife.org > _______________________________________________ > Users mailing list > Users@lists.ironpython.com > http://lists.ironpython.com/listinfo.cgi/users-ironpython.com > -- http://www.ironpythoninaction.com _______________________________________________ Users mailing list Users@lists.ironpython.com http://lists.ironpython.com/listinfo.cgi/users-ironpython.com -- nomadlife.org _______________________________________________ Users mailing list Users@lists.ironpython.com http://lists.ironpython.com/listinfo.cgi/users-ironpython.com -- http://www.ironpythoninaction.com/ http://www.voidspace.org.uk/ http://www.ironpython.info/ http://www.resolverhacks.net/
_______________________________________________ Users mailing list Users@lists.ironpython.com http://lists.ironpython.com/listinfo.cgi/users-ironpython.com