rclone/backend
Nick Craig-Wood d35673efc6 webdav: fix directory creation with 4shared - fixes #4428
When we run MKCOL on 4shared on a directory that already exists, this
returns a 409/Conflict error. However this error code usually means
that the intermediate collections need creating.

The actual error code to return when trying to create a directory that
already exists isn't specified in the RFC, only that an error MUST be
returned and there are already 3 statuses checked in the code.

However using 409 makes rclone's usual strategy for making directories
fail and return the 409 error.

This patch tries the MKCOL and if it returns an unrecognised error
code, then calls PROPFIND on the directory to discover whether the
directory really exists or not.

This should also cover other WebDAV servers returning other error
messages we haven't accounted for in the code yet.
2020-07-24 17:26:42 +01:00
..
alias build: fix up package paths after repo move 2019-07-28 18:47:38 +01:00
all Tardigrade Backend 2020-05-12 15:56:50 +00:00
amazonclouddrive dircache: simplify interface, fix corner cases and apply to backends 2020-06-25 09:41:36 +01:00
azureblob azureblob: don't compile on < go1.13 after dependency update 2020-06-29 14:45:39 +01:00
b2 b2: cancel in progress multipart uploads and copies on rclone exit #4300 2020-06-25 15:22:53 +01:00
box box: cancel in progress multipart uploads and copies on rclone exit #4300 2020-06-25 15:22:53 +01:00
cache cache: remove mount tests as they aren't being run and cause maintenance issues 2020-07-24 11:57:49 +01:00
chunker chunker: reduce length of temporary suffix 2019-12-09 16:56:32 +00:00
crypt crypt: add --crypt-server-side-across-configs flag 2020-06-27 11:40:15 +01:00
drive drive: make dangling shortcuts appear in listings 2020-07-02 22:12:44 +01:00
dropbox dropbox: fix public link by removing expires parameter 2020-06-18 18:40:33 +01:00
fichier dircache: simplify interface, fix corner cases and apply to backends 2020-06-25 09:41:36 +01:00
ftp ftp: add support for --dump bodies and --dump auth 2020-07-21 16:26:31 +01:00
googlecloudstorage gcs: add support for anonymous access 2020-07-01 20:54:49 +01:00
googlephotos build: run gofmt -s to simplify the code: suggested by Go Report Card 2020-06-18 18:45:39 +01:00
http fstest: create AssertTimeEqualWithPrecision from CheckTimeEqualWithPrecision 2020-04-22 11:33:00 +01:00
hubic oauthutil: tidy interface to Config to add Options struct 2020-05-26 11:27:01 +01:00
jottacloud jottacloud: remove debug Printf accidentally left in 2020-06-23 13:16:23 +02:00
koofr link: Add --expire and --unlink flags 2020-06-05 14:51:05 +01:00
local local: fix race conditions updating and reading Object metadata 2020-06-30 12:03:39 +01:00
mailru link: Add --expire and --unlink flags 2020-06-05 14:51:05 +01:00
mega link: Add --expire and --unlink flags 2020-06-05 14:51:05 +01:00
memory The memory backend 2020-01-18 10:41:08 +00:00
onedrive onedrive: Fix reverting to Copy when Move would have worked 2020-07-02 10:55:36 +01:00
opendrive dircache: factor DirMove code out of backends into dircache 2020-06-25 09:41:36 +01:00
pcloud pcloud: fix oauth on European region "eapi.pcloud.com" 2020-07-03 20:38:42 +01:00
premiumizeme dircache: factor DirMove code out of backends into dircache 2020-06-25 09:41:36 +01:00
putio dircache: factor DirMove code out of backends into dircache 2020-06-25 09:41:36 +01:00
qingstor fs: define SlowModTime and SlowHash features in the relevant backends 2020-06-30 12:01:36 +01:00
s3 s3: fix bucket Region auto detection when Region unset in config #2915 2020-07-10 17:16:59 +01:00
seafile link: Add --expire and --unlink flags 2020-06-05 14:51:05 +01:00
sftp sftp: use the absolute path instead of the relative path 2020-06-30 16:07:23 +01:00
sharefile dircache: factor DirMove code out of backends into dircache 2020-06-25 09:41:36 +01:00
sugarsync dircache: factor DirMove code out of backends into dircache 2020-06-25 09:41:36 +01:00
swift swift: fix purge not deleting directory markers 2020-07-10 15:16:11 +01:00
tardigrade backend/tardigrade: Set UserAgent to rclone 2020-06-09 14:20:28 +01:00
union doc: fix typos throughout docs and code 2020-05-25 11:23:58 +01:00
webdav webdav: fix directory creation with 4shared - fixes #4428 2020-07-24 17:26:42 +01:00
yandex link: Add --expire and --unlink flags 2020-06-05 14:51:05 +01:00