Re: anyone working on WebDAV support for libwww?

>>>>> "Josh Watts" <jwatts@pretorynet.com>:

> I just subscribed to the mailing list and saw this in an archive so
> I thought I would respond. I am working on WebDAV support in
> libwww. I would be more than happy to contribute the code to the
> project.

Kewl.

What do you do with the HTMethod enum in HTMethod.h?  Are you just
adding bits to the enum for the new methods in WebDAV?

I worry that we'll run out of bits with this scheme.  The basic HTTP
requires 10 bits.  The basic WebDAV protocol will add 7 more.

The extension DeltaV will add 11 more methods on top of that in turn.

That's 28 bits so far, out of 32 possible.
	<http://www.webdav.org/deltav/WWW10/deltav-intro.htm>

...and what if we want DACL support, and what if... etc. etc.

Maybe we would want to replace the integer in question with some
bigger bitset mechanism?

> Anyways, I've successfully added most WebDAV methods save for a couple
> and now I'm running into a minor problem. Some of the WebDAV methods,
> i.e. PROPPATCH, require that a message body be sent with the HTTP
> request. It might look something like this:

[snip!]

> At first, I thought that creating a new function based on the POST
> functions might work. However, since the server never sends back a 100
> Continue status the POST callback functions are not being called and
> the message body isn't being sent. My question is this: how do I
> attach a message body to a HTTP request? It seems like it should be
> simple to do but I can't find an appropriate HTRequest_* function.

What happens if you call HTRequest_deleteExpect() just following
HTRequest_new() (which puts in an Expect header at the end)?  Does it
still wait for a 100 continue?

There is a time-out waiting for "100 Continue", which is default set
to 2 secs, so it shouldn't hang there.

In <http://www.w3.org/Library/src/HTTP.html> it shows where the
timeout can be adjusted, but it can't be adjusted below 20ms.  However
the same document talks about this being "the default write
mechanism".  Maybe there's some other write mechanism that can be
used? 

Received on Sunday, 8 July 2001 03:47:24 UTC