On Wed, Jun 11, 2008 at 4:03 PM, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote: > > > > On 11 lip, 19:34, "William Stein" <[EMAIL PROTECTED]> wrote: >> On Wed, Jun 11, 2008 at 10:24 AM, [EMAIL PROTECTED] <[EMAIL PROTECTED]> >> wrote: >> >> > I've started to study the code and play with it, and then of course, >> > other >> > obligations took the priority. But I'll have more time during the >> > summer. >> > It seems like that the extending of the web interface would be pretty >> > easy, >> > but the real problem is that the current notebook infrastructure >> > doesn't >> > suit our needs. The first change would be to enable the possibility >> > that (sage) users have their own sage_notebook directory. This is not >> > a big problem, and I already made a (more or less) working code for >> > that. But in order to do that I had to change the behavior of some >> > core >> > classes in notebook. >> >> It would be really really good if this were something that could >> be merged back into the existing notebook, so we can benefit >> from each other's work longterm. > > Sure. That's what I had in mind. > >> >> > The tricky part is security. If I understood correctly, the code from >> > the >> > worksheets is executed via yet another sage instance by the use of >> > pseudo-terminal. >> >> Yep. And for a public service such as sagenb.org, that is all done >> over an ssh connection to another account! >> >> > I wasn't able to pin-point the exact spot in the code where this is >> > happening. It >> >> It happens when the interface Sage object is created in worksheet.py, >> near the top of the file. That creates a pseudotty interface to an ssh >> session when you use the server_pool option to the notebook command. >> >> > > OK. I think I got it. It doesn't help that are several classes/ > functions with name sage. > So sage function from the class Worksheet is using class sage from > interfaces/sage0 which > creates new sage instance, and _send is probably a function inherited > from the Expect class.
Definitely too many things are named Sage. My wife won't let me name our first child Sage. :-) > I can see why you want to execute code from the worksheet in separate > sage instance, > but what is the reason for the creation of new sage instance in > notebook_twisted()? Twisted applications run under twistd, the twisted daemon. This new process is just an invocation of twistd. > If it's ok with you my first step would be to refactor the code to > make notebook a real multisuer environment, > with zero security for a start. This looks like a doable project. I don't understand at all what you mean by that. Can you please clarify? Do you mean having a 1-1 mapping between sage users and logins on a particular machine? William --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---