You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by kf...@collab.net on 2005/04/22 22:09:59 UTC

Subversion Autoversioning, WebDAV, and Windows XP

I'm casting a wide net here, looking for a solution to a problem many
users are going to have with Subversion's autoversioning features,
when 1.2 comes out.

Autoversioning is the feature whereby generic DAV clients (say,
Windows WebFolders) can drag files to and from a DAV share that is
backed by a Subversion repository.  Dragging to the share results in a
commit, dragging from it works like a checkout.

Autoversioning is a Great Thing.  It will expose many new users to
Subversion, in a simple and painless way, and make Subversion servers
that much more attractive to admins.

However, there is a fly in the ointment, a dragon in the meadow, a
shrubbery in the suitcase:

Transparent DAV filesharing doesn't work smoothly in Windows XP.

A detailed description of the problem is below.  Anyone who knows
reliable workarounds, or has more information, please follow up to
this post.  And let's please not get into "It's Microsoft's fault for
breaking an access syntax".  That may be so, but the point here is to
find a solution.  Recalling all copies of XP is not realistic :-).

The Problem:
============

Under Windows 98 and Windows 2000, accessing a DAV server via
WebFolders was simple: you typed in the URL, and everything worked.

Under XP, the situation changed.  Microsoft decided that when the user
types a URL, what they really meant was a UNC path (something like
"\\server\share\path\...").

So WebFolders converts the URL to some analogous UNC path, then goes
off looking for that resource on the LAN.  Of course, if the user
really meant a URL -- i.e, a true DAV server -- they're out of luck.
It doesn't matter whether the server is IIS or mod_dav under Apache,
because the server never even sees the request!

(Of course, if it's IIS, it might be serving the same resources on the
LAN via UNC paths, making it *look* like "IIS works, Apache doesn't".
But that's not really what's going on.  No DAV server works, because
the client never even reaches the DAV server.  If the IIS server were
remote and/or not accessible via UNC, it wouldn't work either.)

Solutions:
==========

There are workarounds for this problem, but they apparently differ
depending on XP servicepack combinations.  We don't yet have a matrix
describing what workarounds work with what exact kinds of XP.

One workaround is to include a port number in the URL is enough to
suppress to the URL->UNC translation step, e.g.,

   http://mydavserver.mycompany.com:80/path/to/dav/share/

In some flavors of XP, this is enough to suppress the URL->UNC
conversion and reach the DAV code buried in the bowels of WebFolders.
However, other flavors of XP will not be fooled, and will still
convert it to UNC.

Ben Collins-Sussman recalls hearing about another workaround, reported
to work on XP boxes where the port-number workaround didn't work, in
which one enters the URL in IE's File->Open box and gains access that
way.  I haven't been able to dig up that URL yet, and I don't know
anything about the reliability/portability of that workaround.

The most reliable workaround currently known is to purchase WebDrive
($40 out of the box, site licenses also available), which simply takes
over from WebFolders and honors the DAV URLs the user enters.  There's
also a free-as-in-beer product from Novell called NetDrive that does
the same thing, but apparently not as reliably.  These workarounds
would presumably cover most or all XP variants, but of course
installing yet more new software to get autoversioning working would
cause a lot of grumbling.

Conclusion:
===========

We don't yet know whether this problem can be worked around in every
variant of XP that our users might run.  Maybe there is a single
workaround that will solve this everywhere; or maybe each variant has
a workaround, but not the same workaround as other variants.  It is
also possible that some variants simply have no workaround.  Gulp.

So: if anyone knows something not mentioned above, please speak up!

References:
===========

http://blog.ianbicking.org/i-hate-web-folders.html
http://www.hss.caltech.edu/help/unix/admin/web/apache-webdav-xp

-Karl

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Subversion Autoversioning, WebDAV, and Windows XP

Posted by Molle Bestefich <mo...@gmail.com>.
kfogel wrote:
> Autoversioning is a Great Thing.  It will expose many new users to
> Subversion, in a simple and painless way, and make Subversion servers
> that much more attractive to admins.

Sort of like a repository browsing feature would? :-)
(Ok ok, I'll shut my yap.)


> The Problem:
> ============
> 
> Under Windows 98 and Windows 2000, accessing a DAV server via
> WebFolders was simple: you typed in the URL, and everything worked.
> 
> Under XP, the situation changed.  Microsoft decided that when the user
> types a URL, what they really meant was a UNC path (something like
> "\\server\share\path\...").

Workaround 1.)
Is your server running Windows?

I seem to remember something about Windows XP actually automatically going
through WebDAV for a _UNC_ request if Windows cannot contact the server
through NetBIOS.  So a workaround could be to leave tcp port 80
open, but block port 137, 139 and 445.

(Not sure what the thought is from Microsoft - if I remember correctly and
they do as mentioned above, it seems like they'd like the WebDAV directory
structure to match the filesystem structure pretty much exactly.)


If you're not afraid to go to the client to fix things, here are two more
possible workarounds:

Workaround 2.)
Open 'Network Connections'.
Find the Advanced menu (don't right-click anything - instead use the menus (!))
Select the 'Advanced Settings' menu item.
Choose "Provider Order".
Move "Web Client Network" to the top of the list, or just before
"Microsoft Windows Network".

Now any UNC requests should go through WebDAV (if the server is
available - this might incidentally cause delays for UNC requests to
non-WebDAV servers.. humn).


Workaround 3.)
And here's another workaround that I've seen mentioned somewhere:
Use "http://server/folder/."

The trailing dot should cause XP to not convert to a UNC path.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org


Re: Subversion Autoversioning, WebDAV, and Windows XP

Posted by Julian Reschke <ju...@gmx.de>.
Karl,

you need to distinguish between the different WebDAV clients Windows 
comes with.

The "Webfolder" client has been introduced many years ago, and has been 
shipping with Windows, Office and some IE releases (?). This is

- a Windows shell extension, plus
- hooks in IE ("open as webfolder", "folder" CSS behaviour, see 
<http://msdn.microsoft.com/workshop/author/behaviors/reference/behaviors/anchor.asp>), 
plus
- a data provider DLL (used by the shell extension and some applications 
such as Office).

Known versions and bugs for this client are collected at 
<http://greenbytes.de/tech/webdav/webfolder-client-list.html> (feedback 
and more data appreciated).

Windows XP has introduced an entirely new WebDAV client, the "WebDAV 
Mini-Redirector" (summary at 
<http://greenbytes.de/tech/webdav/webdav-redirector-list.html>) which 
essentially is a file system driver mapping to a WebDAV server. This has 
a lot advantages (it can be used by any client that can access the file 
system), many disadvantages (for instance, it's inefficient compared to 
clients optimized to use the older libraries); and it's full of (known) 
bugs (these bugs prevent the client from working with our own (SAP) 
server, thus I have only done very limited testing with it; as far as I 
know, Microsoft is not planning to fix any of these issues before Longhorn).

So in general I would advise to

1) get the latest Webfolder client code 
(<http://support.microsoft.com/?kbid=892211>) and

2) to try not to use the "new" WebDAV mini-redirector.

There seem to be at least two ways to avoid that one:

- disable the mini-redirector (you may want to try 
<http://archives.neohapsis.com/archives/sf/ms/2002-q2/0495.html>), or

- always use the browser to open the web folder (File/Open/"Open as 
Webfolder") or through the aforementioned CSS behaviour.

Note that there's a plugin that adds equivalent Webfolder hooks to 
Mozilla Firefox, so it may make sense that the HTML generated by 
Subversion for folder listings actually use that CSS stuff 
(<http://openwebfolder.mozdev.org/>).


Best regards, Julian


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Subversion Autoversioning, WebDAV, and Windows XP

Posted by kf...@collab.net.
Alan Knowles <al...@akbkhome.com> writes:
> I'm not sure why you beeze over novells netdrive, a simple google
> finds alternative downloads (as novell's site has been broken for a
> while), and I've had clients use it without any issues. 

Whups, sorry, my comments about NetDrive were based on (possibly
misremembered) hearsay, not personal knowledge.  I should have done a
little more research first.  Thanks for the information.

> It sounds like you actually expect software from microsoft to work
> as advertised.. most of us gave that up years ago.. ;)

Well, how about this: I belive it works as Microsoft intends :-).

-Karl

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Subversion Autoversioning, WebDAV, and Windows XP

Posted by kf...@collab.net.
Alan Knowles <al...@akbkhome.com> writes:
> I'm not sure why you beeze over novells netdrive, a simple google
> finds alternative downloads (as novell's site has been broken for a
> while), and I've had clients use it without any issues. 

Whups, sorry, my comments about NetDrive were based on (possibly
misremembered) hearsay, not personal knowledge.  I should have done a
little more research first.  Thanks for the information.

> It sounds like you actually expect software from microsoft to work
> as advertised.. most of us gave that up years ago.. ;)

Well, how about this: I belive it works as Microsoft intends :-).

-Karl

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: Subversion Autoversioning, WebDAV, and Windows XP

Posted by Alan Knowles <al...@akbkhome.com>.
I'm not sure why you beeze over novells netdrive, a simple google finds 
alternative downloads (as novell's site has been broken for a while), 
and I've had clients use it without any issues. It sounds like you 
actually expect software from microsoft to work as advertised.. most of 
us gave that up years ago.. ;)

Regards
Alan

kfogel@collab.net wrote:

>I'm casting a wide net here, looking for a solution to a problem many
>users are going to have with Subversion's autoversioning features,
>when 1.2 comes out.
>
>Autoversioning is the feature whereby generic DAV clients (say,
>Windows WebFolders) can drag files to and from a DAV share that is
>backed by a Subversion repository.  Dragging to the share results in a
>commit, dragging from it works like a checkout.
>
>Autoversioning is a Great Thing.  It will expose many new users to
>Subversion, in a simple and painless way, and make Subversion servers
>that much more attractive to admins.
>
>However, there is a fly in the ointment, a dragon in the meadow, a
>shrubbery in the suitcase:
>
>Transparent DAV filesharing doesn't work smoothly in Windows XP.
>
>A detailed description of the problem is below.  Anyone who knows
>reliable workarounds, or has more information, please follow up to
>this post.  And let's please not get into "It's Microsoft's fault for
>breaking an access syntax".  That may be so, but the point here is to
>find a solution.  Recalling all copies of XP is not realistic :-).
>
>The Problem:
>============
>
>Under Windows 98 and Windows 2000, accessing a DAV server via
>WebFolders was simple: you typed in the URL, and everything worked.
>
>Under XP, the situation changed.  Microsoft decided that when the user
>types a URL, what they really meant was a UNC path (something like
>"\\server\share\path\...").
>
>So WebFolders converts the URL to some analogous UNC path, then goes
>off looking for that resource on the LAN.  Of course, if the user
>really meant a URL -- i.e, a true DAV server -- they're out of luck.
>It doesn't matter whether the server is IIS or mod_dav under Apache,
>because the server never even sees the request!
>
>(Of course, if it's IIS, it might be serving the same resources on the
>LAN via UNC paths, making it *look* like "IIS works, Apache doesn't".
>But that's not really what's going on.  No DAV server works, because
>the client never even reaches the DAV server.  If the IIS server were
>remote and/or not accessible via UNC, it wouldn't work either.)
>
>Solutions:
>==========
>
>There are workarounds for this problem, but they apparently differ
>depending on XP servicepack combinations.  We don't yet have a matrix
>describing what workarounds work with what exact kinds of XP.
>
>One workaround is to include a port number in the URL is enough to
>suppress to the URL->UNC translation step, e.g.,
>
>   http://mydavserver.mycompany.com:80/path/to/dav/share/
>
>In some flavors of XP, this is enough to suppress the URL->UNC
>conversion and reach the DAV code buried in the bowels of WebFolders.
>However, other flavors of XP will not be fooled, and will still
>convert it to UNC.
>
>Ben Collins-Sussman recalls hearing about another workaround, reported
>to work on XP boxes where the port-number workaround didn't work, in
>which one enters the URL in IE's File->Open box and gains access that
>way.  I haven't been able to dig up that URL yet, and I don't know
>anything about the reliability/portability of that workaround.
>
>The most reliable workaround currently known is to purchase WebDrive
>($40 out of the box, site licenses also available), which simply takes
>over from WebFolders and honors the DAV URLs the user enters.  There's
>also a free-as-in-beer product from Novell called NetDrive that does
>the same thing, but apparently not as reliably.  These workarounds
>would presumably cover most or all XP variants, but of course
>installing yet more new software to get autoversioning working would
>cause a lot of grumbling.
>
>Conclusion:
>===========
>
>We don't yet know whether this problem can be worked around in every
>variant of XP that our users might run.  Maybe there is a single
>workaround that will solve this everywhere; or maybe each variant has
>a workaround, but not the same workaround as other variants.  It is
>also possible that some variants simply have no workaround.  Gulp.
>
>So: if anyone knows something not mentioned above, please speak up!
>
>References:
>===========
>
>http://blog.ianbicking.org/i-hate-web-folders.html
>http://www.hss.caltech.edu/help/unix/admin/web/apache-webdav-xp
>
>-Karl
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
>For additional commands, e-mail: users-help@subversion.tigris.org
>
>  
>


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: Subversion Autoversioning, WebDAV, and Windows XP

Posted by Alan Knowles <al...@akbkhome.com>.
I'm not sure why you beeze over novells netdrive, a simple google finds 
alternative downloads (as novell's site has been broken for a while), 
and I've had clients use it without any issues. It sounds like you 
actually expect software from microsoft to work as advertised.. most of 
us gave that up years ago.. ;)

Regards
Alan

kfogel@collab.net wrote:

>I'm casting a wide net here, looking for a solution to a problem many
>users are going to have with Subversion's autoversioning features,
>when 1.2 comes out.
>
>Autoversioning is the feature whereby generic DAV clients (say,
>Windows WebFolders) can drag files to and from a DAV share that is
>backed by a Subversion repository.  Dragging to the share results in a
>commit, dragging from it works like a checkout.
>
>Autoversioning is a Great Thing.  It will expose many new users to
>Subversion, in a simple and painless way, and make Subversion servers
>that much more attractive to admins.
>
>However, there is a fly in the ointment, a dragon in the meadow, a
>shrubbery in the suitcase:
>
>Transparent DAV filesharing doesn't work smoothly in Windows XP.
>
>A detailed description of the problem is below.  Anyone who knows
>reliable workarounds, or has more information, please follow up to
>this post.  And let's please not get into "It's Microsoft's fault for
>breaking an access syntax".  That may be so, but the point here is to
>find a solution.  Recalling all copies of XP is not realistic :-).
>
>The Problem:
>============
>
>Under Windows 98 and Windows 2000, accessing a DAV server via
>WebFolders was simple: you typed in the URL, and everything worked.
>
>Under XP, the situation changed.  Microsoft decided that when the user
>types a URL, what they really meant was a UNC path (something like
>"\\server\share\path\...").
>
>So WebFolders converts the URL to some analogous UNC path, then goes
>off looking for that resource on the LAN.  Of course, if the user
>really meant a URL -- i.e, a true DAV server -- they're out of luck.
>It doesn't matter whether the server is IIS or mod_dav under Apache,
>because the server never even sees the request!
>
>(Of course, if it's IIS, it might be serving the same resources on the
>LAN via UNC paths, making it *look* like "IIS works, Apache doesn't".
>But that's not really what's going on.  No DAV server works, because
>the client never even reaches the DAV server.  If the IIS server were
>remote and/or not accessible via UNC, it wouldn't work either.)
>
>Solutions:
>==========
>
>There are workarounds for this problem, but they apparently differ
>depending on XP servicepack combinations.  We don't yet have a matrix
>describing what workarounds work with what exact kinds of XP.
>
>One workaround is to include a port number in the URL is enough to
>suppress to the URL->UNC translation step, e.g.,
>
>   http://mydavserver.mycompany.com:80/path/to/dav/share/
>
>In some flavors of XP, this is enough to suppress the URL->UNC
>conversion and reach the DAV code buried in the bowels of WebFolders.
>However, other flavors of XP will not be fooled, and will still
>convert it to UNC.
>
>Ben Collins-Sussman recalls hearing about another workaround, reported
>to work on XP boxes where the port-number workaround didn't work, in
>which one enters the URL in IE's File->Open box and gains access that
>way.  I haven't been able to dig up that URL yet, and I don't know
>anything about the reliability/portability of that workaround.
>
>The most reliable workaround currently known is to purchase WebDrive
>($40 out of the box, site licenses also available), which simply takes
>over from WebFolders and honors the DAV URLs the user enters.  There's
>also a free-as-in-beer product from Novell called NetDrive that does
>the same thing, but apparently not as reliably.  These workarounds
>would presumably cover most or all XP variants, but of course
>installing yet more new software to get autoversioning working would
>cause a lot of grumbling.
>
>Conclusion:
>===========
>
>We don't yet know whether this problem can be worked around in every
>variant of XP that our users might run.  Maybe there is a single
>workaround that will solve this everywhere; or maybe each variant has
>a workaround, but not the same workaround as other variants.  It is
>also possible that some variants simply have no workaround.  Gulp.
>
>So: if anyone knows something not mentioned above, please speak up!
>
>References:
>===========
>
>http://blog.ianbicking.org/i-hate-web-folders.html
>http://www.hss.caltech.edu/help/unix/admin/web/apache-webdav-xp
>
>-Karl
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
>For additional commands, e-mail: users-help@subversion.tigris.org
>
>  
>


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Subversion Autoversioning, WebDAV, and Windows XP

Posted by Molle Bestefich <mo...@gmail.com>.
kfogel wrote:
> Autoversioning is a Great Thing.  It will expose many new users to
> Subversion, in a simple and painless way, and make Subversion servers
> that much more attractive to admins.

Sort of like a repository browsing feature would? :-)
(Ok ok, I'll shut my yap.)


> The Problem:
> ============
> 
> Under Windows 98 and Windows 2000, accessing a DAV server via
> WebFolders was simple: you typed in the URL, and everything worked.
> 
> Under XP, the situation changed.  Microsoft decided that when the user
> types a URL, what they really meant was a UNC path (something like
> "\\server\share\path\...").

Workaround 1.)
Is your server running Windows?

I seem to remember something about Windows XP actually automatically going
through WebDAV for a _UNC_ request if Windows cannot contact the server
through NetBIOS.  So a workaround could be to leave tcp port 80
open, but block port 137, 139 and 445.

(Not sure what the thought is from Microsoft - if I remember correctly and
they do as mentioned above, it seems like they'd like the WebDAV directory
structure to match the filesystem structure pretty much exactly.)


If you're not afraid to go to the client to fix things, here are two more
possible workarounds:

Workaround 2.)
Open 'Network Connections'.
Find the Advanced menu (don't right-click anything - instead use the menus (!))
Select the 'Advanced Settings' menu item.
Choose "Provider Order".
Move "Web Client Network" to the top of the list, or just before
"Microsoft Windows Network".

Now any UNC requests should go through WebDAV (if the server is
available - this might incidentally cause delays for UNC requests to
non-WebDAV servers.. humn).


Workaround 3.)
And here's another workaround that I've seen mentioned somewhere:
Use "http://server/folder/."

The trailing dot should cause XP to not convert to a UNC path.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org


Re: Subversion Autoversioning, WebDAV, and Windows XP

Posted by Julian Reschke <ju...@gmx.de>.
Karl,

you need to distinguish between the different WebDAV clients Windows 
comes with.

The "Webfolder" client has been introduced many years ago, and has been 
shipping with Windows, Office and some IE releases (?). This is

- a Windows shell extension, plus
- hooks in IE ("open as webfolder", "folder" CSS behaviour, see 
<http://msdn.microsoft.com/workshop/author/behaviors/reference/behaviors/anchor.asp>), 
plus
- a data provider DLL (used by the shell extension and some applications 
such as Office).

Known versions and bugs for this client are collected at 
<http://greenbytes.de/tech/webdav/webfolder-client-list.html> (feedback 
and more data appreciated).

Windows XP has introduced an entirely new WebDAV client, the "WebDAV 
Mini-Redirector" (summary at 
<http://greenbytes.de/tech/webdav/webdav-redirector-list.html>) which 
essentially is a file system driver mapping to a WebDAV server. This has 
a lot advantages (it can be used by any client that can access the file 
system), many disadvantages (for instance, it's inefficient compared to 
clients optimized to use the older libraries); and it's full of (known) 
bugs (these bugs prevent the client from working with our own (SAP) 
server, thus I have only done very limited testing with it; as far as I 
know, Microsoft is not planning to fix any of these issues before Longhorn).

So in general I would advise to

1) get the latest Webfolder client code 
(<http://support.microsoft.com/?kbid=892211>) and

2) to try not to use the "new" WebDAV mini-redirector.

There seem to be at least two ways to avoid that one:

- disable the mini-redirector (you may want to try 
<http://archives.neohapsis.com/archives/sf/ms/2002-q2/0495.html>), or

- always use the browser to open the web folder (File/Open/"Open as 
Webfolder") or through the aforementioned CSS behaviour.

Note that there's a plugin that adds equivalent Webfolder hooks to 
Mozilla Firefox, so it may make sense that the HTML generated by 
Subversion for folder listings actually use that CSS stuff 
(<http://openwebfolder.mozdev.org/>).


Best regards, Julian


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org