PROPFIND hrefs and CyberTeams mod_webdav

One problem I'm having with testing the CyberTeams server is that it
the hrefs that its PROPFIND responses contain are on a different 
server and port than the actual WebDAV server.

When I use PROPFIND to discover the contents of a collection, I need 
some way to figure out how they relate to the request I made.
This is not a problem on most servers:  if I telnet to sandbox.xerox.com:8080
and PROPFIND / with Depth: 0, I get the href "/", which clearly refers
to http://sandbox.xerox.com:8080/.  The server at dav.ics.uci.edu gives me 
hrefs that have http://dav.ics.uci.edu/ on the front.  These are all
internally consistent.

When I connect to www.fwi.com:8080, I get hrefs that may be valid
hrefs for the documents that are served up when you connect to the
href given, but they are *not* valid hrefs for performing a PROPFIND on.  
http://www.fwi.com:8080/ gives me the href "http://serv1-r.fwi.com/" 
when I ask about it with PROPFIND.  serv1-r.fwi.com:80 does not respond 
to WebDAV requests; it requires using port 8080, and still makes
reference to port 80 for the objects on which the properties are
defined.

Is this in accordance with the WebDAV standard?

RFC2518 only says:
                                                           Each response
   XML element MUST contain an href XML element that gives the URI of
   the resource on which the properties in the prop XML element are
   defined.

Now, technically, properties can be defined on an object accessed through
a URI that is not the one used to perform the PROPFIND.  However,
this could be extremely confusing for developers to implement.  If 
it is acceptable for PROPFIND to return hrefs that have no apparent
connection to the URI requested, that should be called out for the 
people developing WebDAV clients and servers; if not, that should also
be made more explicit.

Currently, I treat UNIX-style paths as belonging to the server/port
combination of the web server I'm talking to, and full URLs are checked
against the server/port combination as a consistency check.  Should
I just assume that any server in an href returned by PROPFIND is
equivalent to the one I'm talking to?  What should the significance
of an href pointing to a different server be-- a hint that GET requests
should be made of the referenced server, perhaps?

% telnet www.fwi.com 8080
Trying 209.84.160.61...
Connected to serv1-r.fwi.com.
Escape character is '^]'.
PROPFIND / HTTP/1.1
Host: www.fwi.com:8080
Connection: close
Authorization: Basic xxxxxxxxxxxx
Depth: 0

HTTP/1.1 207 Multi-Status
Date: Tue, 16 Feb 1999 19:38:00 GMT
Server: Apache/1.3.3 (Unix) WSD/DAV 0.5.15
Content-Length: 398
Content-Type: text/xml
Connection: close

<?xml version="1.0" ?>
<D:multistatus xmlns:D="DAV:" xmlns:W="http://www.cyberteams.com/">
<D:response>
<D:href>http://serv1-r.fwi.com/</href>
<D:propstat>
<D:prop>
<D:creationdate>Tue Feb 16 14:38:11 1999</D:creationdate>
<D:displayname>/</D:displayname>
<D:resourcetype><D:collection/>
</D:resourcetype>
</D:prop>
 <D:status>HTTP/1.1 200 OK</D:status></D:propstat>
</D:response>
</D:multistatus>

-- 
%% Max Rible %% max@glyphica.com %% http://www.amurgsval.org/~slothman/ %%
%% "Before enlightenment:  sharpen claws, catch mice.                   %%
%%  After enlightenment:  sharpen claws, catch mice."            - me   %%

Received on Tuesday, 16 February 1999 15:11:55 UTC