From b0c498f70aa6614a92a3348af6929fdaa03aaa78 Mon Sep 17 00:00:00 2001 From: Markus Unterwaditzer Date: Mon, 12 Sep 2016 18:58:02 +0200 Subject: [PATCH] Don't require current-user-principal See #498 --- vdirsyncer/storage/dav.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/vdirsyncer/storage/dav.py b/vdirsyncer/storage/dav.py index 50e5b0d..125fa53 100644 --- a/vdirsyncer/storage/dav.py +++ b/vdirsyncer/storage/dav.py @@ -164,7 +164,13 @@ class Discover(object): root = _parse_xml(response.content) rv = root.find('.//{DAV:}current-user-principal/{DAV:}href') if rv is None: - raise InvalidXMLResponse() + # This is for servers that don't support current-user-principal + # E.g. Synology NAS + # See https://github.com/pimutils/vdirsyncer/issues/498 + dav_logger.debug( + 'No current-user-principal returned, re-using URL {}' + .format(response.url)) + return response.url return urlparse.urljoin(response.url, rv.text) def find_home(self, url=None):