Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

MSRedirector

Adam Tauno Williams
Attachments

[Clients] WebDAV Implementation Notes

Microsoft Data Access & MiniRedirector

The redirector is a component of the Microsoft Windows Operating System.

It is important to realize that accessing a WebDAV volume from Microsoft Windows and Microsoft Applications, such as Microsoft Office, almost always involves multiple client components. Often these components, amongst themselves, do not inter-operate in the manner one would expect from such a mature platform.

Microsoft WebDAV MiniRedirector
OpenGrouwpare Coils Client Id: b6fb2c8a632148728d364b3d49dfe2dd

Microsoft Data Access
OpenGrouwpare Coils Client Id: e9556b2aad474923a52315d9bffbf124

  • [#90] : Cannot Create Format via a Windows Mount
  • [#97] : Support MKCOL in Routes folder
  • [#91] : Unable to open handle for document revision
  • [#100] : Implement support for "desktop.ini"

Client Error Messages

  • System error 224 has occurred : This is an SSL certificate error. You are attempting to access a WebDAV volume protected by a certificate the client does not trust.
  • System error 58 has occurred : The hostname used by the client does not match the hostname expected by the server; possibly this involved nginX or Apache reverse proxies.
  • System error 1397 has occurred
  • System error 59 has occurred : some type of network error has occurred. See Coils log file, and report as a bug any exception information you see. But first double check your client and server firewall configurations.
  • System error 1920 has occurred
  • System error 5 has occurred : Authentication failed.
    • Windows may be sending the username qualified with a domain name; this causes authentication to fail as the login string does not match the expected account. A workaround is to enable the StripAuthenticationDomain option. This will reduce the submitted login (username) string by removing everything up to the first backslash "\".
  • System error 67 has occurred : If your server is not protected by SSL (is unencrypted) this error will occur if you are using BASIC authentication; it is much better to enable SSL on you server. Otherwise modify the Windows registry to allow BASIC authentication over unencrypted connections. Alternatively the hostname and/or path you entered is incorrect. Another possibility is the WebDAV Redirector on your client is busted.

Client Configuration

Registry Keys

Several keys are contained in the registry that control the operation of the Windows WebDAV Redirector. These keys are found in "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\WebClient\Parameters".

UseBasicAuth

Type: REG_DWORD

Controls use of basic auth, at least on Windows XP.

Value Description
0 Disabled
1 Enabled for SSL/TLS Protected connections
2 Enabled regardless of the security factor of the connection

BasicAuthLevel

The same function as "UseBasicAuth" had in Windows XP, but used by Windows 7 and later. Same data-type and values.

ServerNotFoundCacheLifeTimeInSec

Type: REG_DWORD

Setting the value to zero will allow a reconnect attempt if the initial connection failed. The documented role of this value is that it controls the life-times of entries in the cache of servers the client has discovered are NOT WebDAV servers. Once cached any further attempt to access the host's WebDAV volumes will immediately fail with no actual attempt.

The default value if the registry key does not exist is 60 seconds.

Special Properties

  • urn:schemas-microsoft-com:Win32FileAttributes (required, read-write)
  • urn:schemas-microsoft-com:Win32CreationTime (required, read-write)
    • Supported
    • Stores a date value like "Sat, 24 Nov 2012 23:27:45 GMT"
    • Note that when a file is copied to WebDAV from the local filesystem it keeps the creation time of the local file, that date is copied.
    • Persisted in the object property http://www.opengroupware.us/mswebdav/win32creationtime
  • urn:schemas-microsoft-com:Win32LastAccessTime (required, read-write)
  • urn:schemas-microsoft-com:Win32LastModifiedTime (required, read-write)
  • urn:schemas-microsoft-com:office:office:modifiedby (required, read-only)
    • Not Supported, despite the document that states this is required, Windows doesn't seem to care. Or at least we haven't seen a request for it yet.
  • urn:schemas-microsoft-com:office:office:specialFolderType (desired, dead)
    • Not Supported, needs research. How can a dead property be required?
  • http://schemas.microsoft.com/repl/authoritative-directory
    • Not Supported, needs research. Have not discovered an impact.
  • http://schemas.microsoft.com/repl/repl-uid
    • Not Supported, needs research. Have not discovered an impact.
  • http://schemas.microsoft.com/repl/resourcetag
    • Not Supported, needs research. Have not discovered an impact.
  • DAV:isFolder (desired, read-only)
    • Supported
  • DAV:ishidden (desired, read-only)
    • Supported

Microsoft Office

Microsoft Office will perform OPTIONS commands on the root of the WebDAV share; this is irregardless of the path that was mounted. So the root of the HTTP resource tree must respond to this command even though it is out of the scope of the WebDAV bundle. So it must see a:

 MS-Author-Via: DAV

in the response. If the root OPTIONS response does not include the MS-Author-Via header than Windows will refuse to believe it is looking at a WebDAV volume; standards be damned.

Microsoft Office cannot save files without a working WebDAV locking implementation. But it has been reported that at least for Office 2000 and 2003 break down if the DAV:lockdiscovery property contains a DAV:lockroot.


Related

Tickets: #100
Tickets: #90
Tickets: #91
Tickets: #97
Wiki: AuthenticationOptions
Wiki: Clients
Wiki: WebDAV

  • YAML documents can be edited via Wordpad when Coils is mounted using "net use".

     
    Attachments
  • Viewing and editing a project document (image). Then create, edit, save, open, edit, save, rename, and delete a rich text document from wordpad.