On 12 lip, 01:20, "William Stein" <[EMAIL PROTECTED]> wrote:
> 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.
>

Does this mean that it's possible to have multiple sage instances
served by the
same twistd instance, mapping at different directories as:
http://localhost:8000/admin
http://localhost:8000/user/a
http://localhost:8000/user/b

Ivica

> > 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
-~----------~----~----~----~------~----~------~--~---

Reply via email to