[Twisted-Python] WebDAV support

Daniel Stone dstone at kde.org
Thu Oct 3 21:31:40 EDT 2002


On Thu, Oct 03, 2002 at 08:35:26PM +1000, Brother Andrew Bennetts preached da werd, yo:
> On Thu, Oct 03, 2002 at 12:21:38PM +0200, Christopher Armstrong wrote:
> > On Thu, Oct 03, 2002 at 11:38:14AM +1000, Daniel Stone wrote:
> > > I originally started doing this with Twisted, but hit an obstacle. I
> > > can't remember what it was, and spiv wrote twisted.inetd seemingly out
> > > of spite (hi Andrew! :), so I'm going to start trying with Twisted
> > > again.
> > 
> > I'm pretty interested in WebDAV support for Twisted as well -- I'd like
> > to eventually support it in TamTam. Where can we discuss its design, &c?
> > 
> > Why did you need inetd support to facilitate a WebDAV server, though?
> 
> He's forking processes and chroot/setuid/setgid'ing them, I think.  Hence
> the example of inetd, which demonstrates passing a socket to a child
> process.

Right. MoulDAVia is actually a project of Trinity, who wanted WebDAV
home directories. Most solutions (e.g. Apache mod_dav) only support the
paradigm (sorry) of a single shared area - one that the web server's
user could write to. We had two options:
a) give www-data rw access to all home directories (BAD)
b) make Apache run as root

Both of these required silly tricks with .htaccess, so we decided to
write our own. MoulDAVia will eventually support configurable zones -
e.g. /homes/ is for homes, /shared/ is shared, etc, etc. Right now,
however, it requires you to authenticate against LDAP, and chroot()s,
setgid()s and setuid()s. Obviously, all of these, paired with the
necessary fork(), are rather expensive options, so configurability is
needed.

Cheers!
:) d

-- 
Daniel Stone 	     <daniel at raging.dropbear.id.au>             <dstone at kde.org>
Developer - http://kopete.kde.org, http://www.kde.org




More information about the Twisted-Python mailing list