A simple DAV sync application / cli

Discovery that finds real servers' WebDAV roots

Tried against dav.mailbox.org, which asks for a login before it answers anything, has no /.well-known/webdav, and keeps files under /servlet/webdav.infostore/: - .well-known/webdav is asked again with the login when it answers 401, and only a 207 or a redirect counts as an answer. - After it, the paths common servers use (Nextcloud/ownCloud, Open-Xchange, Seafile, /dav/, /webdav/) are tried before the bare root, which some servers answer as an empty collection. - The files home comes from current-user-principal (asked on its own), so an email login still finds files/<user id>/. - After two refused logins discovery stops: providers lock accounts over repeated failures. - A same-host redirect to plain http is asked over https instead. - A failure lists every address tried and what it answered, and 'davsync discover <server> [user]' shows the same from the shell.


Author Philipp Dunkel Date Commit Parent e3f8e8e4
+275 -48
4 changed files
+275 -48
4 changed files