Skip to content

CardDAV fatal error when PHOTO VALUE is binary uri #4358

@balleyne

Description

@balleyne

For months now, my Davdroid to ownCloud contacts sync has been broken, while my IceDove SOGo connector sync has been working fine. I upgraded from ownCloud 9.1. to NextCloud 10 to NextCloud 11 to see if moving to the latest version would resolve my error. It hasn't, but it has brought clarity to the server side error message.

Steps to reproduce

  1. Configure Davdroid sync per https://davdroid.bitfire.at/configuration/nextcloud/
  2. Sync addressbook

Expected behaviour

Addressbook should sync.

Actual behaviour

NextCloud produces a 500 error.

This is from the nextcloud logs:

{"reqId":"1rBaJZPqfmOHz6hiIzNu","remoteAddr":"184.175.36.250","app":"webdav","message":"Exception: {\"Message\":\"Unsupported VALUE parameter for PHOTO property. You supplied \\\"binary\\u00feuri\\\"\",\"Exception\":\"Sabre\\\\VObject\\\\InvalidDataException\",\"Code\":0,\"Trace\":\"#0 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/vobject\\\/lib\\\/Parser\\\/MimeDir.php(453): Sabre\\\\VObject\\\\Document->createProperty('PHOTO', NULL, Array)\\n#1 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/vobject\\\/lib\\\/Parser\\\/MimeDir.php(234): Sabre\\\\VObject\\\\Parser\\\\MimeDir->readProperty('PHOTO;VALUE=bin...')\\n#2 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/vobject\\\/lib\\\/Parser\\\/MimeDir.php(181): Sabre\\\\VObject\\\\Parser\\\\MimeDir->parseLine('PHOTO;VALUE=bin...')\\n#3 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/vobject\\\/lib\\\/Parser\\\/MimeDir.php(89): Sabre\\\\VObject\\\\Parser\\\\MimeDir->parseDocument()\\n#4 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/vobject\\\/lib\\\/Reader.php(46): Sabre\\\\VObject\\\\Parser\\\\MimeDir->parse('BEGIN:VCARD\\\\r\\\\nVE...', 0)\\n#5 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/CardDAV\\\/Plugin.php(855): Sabre\\\\VObject\\\\Reader::read('BEGIN:VCARD\\\\r\\\\nVE...')\\n#6 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/CardDAV\\\/Plugin.php(258): Sabre\\\\CardDAV\\\\Plugin->convertVCard('BEGIN:VCARD\\\\r\\\\nVE...', 'vcard4')\\n#7 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/CardDAV\\\/Plugin.php(199): Sabre\\\\CardDAV\\\\Plugin->addressbookMultiGetReport(Object(Sabre\\\\CardDAV\\\\Xml\\\\Request\\\\AddressBookMultiGetReport))\\n#8 [internal function]: Sabre\\\\CardDAV\\\\Plugin->report('{urn:ietf:param...', Object(Sabre\\\\CardDAV\\\\Xml\\\\Request\\\\AddressBookMultiGetReport), 'addressbooks\\\/us...')\\n#9 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/event\\\/lib\\\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\\n#10 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/CorePlugin.php(718): Sabre\\\\Event\\\\EventEmitter->emit('report', Array)\\n#11 [internal function]: Sabre\\\\DAV\\\\CorePlugin->httpReport(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#12 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/event\\\/lib\\\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\\n#13 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(479): Sabre\\\\Event\\\\EventEmitter->emit('method:REPORT', Array)\\n#14 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(254): Sabre\\\\DAV\\\\Server->invokeMethod(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#15 \\\/var\\\/www\\\/nextcloud\\\/apps\\\/dav\\\/lib\\\/Server.php(227): Sabre\\\\DAV\\\\Server->exec()\\n#16 \\\/var\\\/www\\\/nextcloud\\\/apps\\\/dav\\\/appinfo\\\/v2\\\/remote.php(30): OCA\\\\DAV\\\\Server->exec()\\n#17 \\\/var\\\/www\\\/nextcloud\\\/remote.php(165): require_once('\\\/var\\\/www\\\/nextcl...')\\n#18 {main}\",\"File\":\"\\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/vobject\\\/lib\\\/Document.php\",\"Line\":220,\"User\":\"balleyne\"}","level":4,"time":"2017-04-16T10:59:49+00:00","method":"REPORT","url":"\/remote.php\/dav\/addressbooks\/users\/balleyne\/contacts\/","user":"balleyne","version":"11.0.2.7"}

The key error being: Unsupported VALUE parameter for PHOTO property. You supplied "binary[c3][be]uri"

It appears that I have 131 contacts (between various uses on my NextCloud instances) with these binary PHOTO properties:

mysql> pager grep PHOTO;
PAGER set to 'grep PHOTO'
mysql> SELECT carddata FROM oc_cards WHERE carddata LIKE "%PHOTO;VALUE%";
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGB
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAACQCAIAAABo
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAACQCAYAAADn
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAACQCAIAAABoJ
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAACQCAIAAABo
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAANgAAADYCAYAAACJ
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAABdCAIAAADF
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAABsCAIAAAAK
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAABsCAIAAAAK
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAACQCAIAAABo
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAABsCAIAAAAK
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAAB9CAIAAADC
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAACQCAIAAABo
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAACQCAIAAABo
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAACPCAIAAACa
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAACQCAIAAABo
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGB
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAANgAAADYCAYAAACJ
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAANgAAADYCAIAAAAG
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAACQCAYAAADn
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAACQCAIAAABo
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAACFCAIAAAA7
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=uriþbinary:file///home/user/ossoabook/photos/LBBV0X
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAACQCAIAAABo
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGB
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAACQCAIAAABo
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcG
PHOTO;VALUE=binaryþuri;ENCODING=B:iVBORw0KGgoAAAANSUhEUgAAAJAAAABgCAIAAAB9

I believe this PHOTO;VALUE=binary uri whatever thing is causing NextCloud to throw a 500 error and it causes synchronization to fail entirely with some clients, like Davdroid.

Server configuration

Operating system: Ubuntu 16.04.2 LTS

Web server: Apache 2.4

Database: mysql Ver 14.14 Distrib 5.7.17, for Linux (i686) using EditLine wrapper

PHP version: PHP 7.0.15-0ubuntu0.16.04.4 (cli) ( NTS )

Nextcloud version: 11.0.2.7

Updated from an older Nextcloud/ownCloud or fresh install: updated from older ownCloud

Where did you install Nextcloud from: nextcloud.com

Signing status:

Signing status
No errors have been found

List of activated apps:

App list
Enabled:
  - activity: 2.4.1
  - calendar: 1.5.2
  - comments: 1.1.0
  - contacts: 1.5.3
  - dav: 1.1.1
  - federatedfilesharing: 1.1.1
  - federation: 1.1.1
  - files: 1.6.1
  - files_external: 1.1.2
  - files_pdfviewer: 1.0.1
  - files_sharing: 1.1.1
  - files_texteditor: 2.2
  - files_trashbin: 1.1.0
  - files_versions: 1.4.0
  - files_videoplayer: 1.0.0
  - firstrunwizard: 2.0
  - gallery: 16.0.0
  - logreader: 2.0.0
  - lookup_server_connector: 1.0.0
  - nextcloud_announcements: 1.0
  - notifications: 1.0.1
  - password_policy: 1.1.0
  - provisioning_api: 1.1.0
  - serverinfo: 1.1.1
  - sharebymail: 1.0.1
  - survey_client: 0.1.5
  - systemtags: 1.1.3
  - templateeditor: 0.2
  - theming: 1.1.1
  - twofactor_backupcodes: 1.0.0
  - updatenotification: 1.1.1
  - workflowengine: 1.1.1
Disabled:
  - admin_audit
  - encryption
  - external
  - files_accesscontrol
  - files_automatedtagging
  - files_retention
  - user_external
  - user_ldap
  - user_saml

Nextcloud configuration:

Config report
{
    "system": {
        "instanceid": "5199c071194e0",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "datadirectory": "\/var\/lib\/nextcloud\/data",
        "dbtype": "mysql",
        "version": "11.0.2.7",
        "appstoreenabled": true,
        "writable_appsdir": false,
        "dbname": "nextcloud",
        "dbhost": "localhost",
        "dbtableprefix": "oc_",
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": true,
        "forcessl": true,
        "theme": "",
        "apps_paths": [
            {
                "path": "\/var\/www\/nextcloud\/apps",
                "url": "\/apps",
                "writable": true
            }
        ],
        "trusted_domains": [
            "cloud.haise.ca"
        ],
        "share_folder": "\/Shared",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "loglevel": 2,
        "appstore.experimental.enabled": true,
        "trashbin_retention_obligation": "auto",
        "updatechecker": false,
        "maintenance": false,
        "appstoreurl": "https:\/\/apps.nextcloud.com\/api\/v0",
        "appcodechecker": true,
        "updater.server.url": "https:\/\/updates.nextcloud.com\/updater_server\/",
        "updater.secret": "***REMOVED SENSITIVE VALUE***"
    }
}

Are you using external storage, if yes which one: yes, local, but not relevant for contacts

Are you using encryption: no (just TLS)

Are you using an external user-backend, if yes which one: no

Client configuration

Browser: Davdroid

Operating system: Android version: 5.1.1 (cm_klte-userdebug 5.1.1 LMY48B 664e8209ef test-keys)

Logs

Web server error log

Web server error log
184.175.36.250 - balleyne [16/Apr/2017:06:59:48 -0400] "REPORT /remote.php/dav/addressbooks/users/balleyne/contacts/ HTTP/1.1" 500 1036 "-" "DAVdroid/1.5.0.2-ose (2017/04/03; dav4android; okhttp3) Android/5.1.1"

Nextcloud log (data/nextcloud.log)

Nextcloud log
{"reqId":"1rBaJZPqfmOHz6hiIzNu","remoteAddr":"184.175.36.250","app":"webdav","message":"Exception: {\"Message\":\"Unsupported VALUE parameter for PHOTO property. You supplied \\\"binary\\u00feuri\\\"\",\"Exception\":\"Sabre\\\\VObject\\\\InvalidDataException\",\"Code\":0,\"Trace\":\"#0 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/vobject\\\/lib\\\/Parser\\\/MimeDir.php(453): Sabre\\\\VObject\\\\Document->createProperty('PHOTO', NULL, Array)\\n#1 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/vobject\\\/lib\\\/Parser\\\/MimeDir.php(234): Sabre\\\\VObject\\\\Parser\\\\MimeDir->readProperty('PHOTO;VALUE=bin...')\\n#2 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/vobject\\\/lib\\\/Parser\\\/MimeDir.php(181): Sabre\\\\VObject\\\\Parser\\\\MimeDir->parseLine('PHOTO;VALUE=bin...')\\n#3 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/vobject\\\/lib\\\/Parser\\\/MimeDir.php(89): Sabre\\\\VObject\\\\Parser\\\\MimeDir->parseDocument()\\n#4 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/vobject\\\/lib\\\/Reader.php(46): Sabre\\\\VObject\\\\Parser\\\\MimeDir->parse('BEGIN:VCARD\\\\r\\\\nVE...', 0)\\n#5 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/CardDAV\\\/Plugin.php(855): Sabre\\\\VObject\\\\Reader::read('BEGIN:VCARD\\\\r\\\\nVE...')\\n#6 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/CardDAV\\\/Plugin.php(258): Sabre\\\\CardDAV\\\\Plugin->convertVCard('BEGIN:VCARD\\\\r\\\\nVE...', 'vcard4')\\n#7 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/CardDAV\\\/Plugin.php(199): Sabre\\\\CardDAV\\\\Plugin->addressbookMultiGetReport(Object(Sabre\\\\CardDAV\\\\Xml\\\\Request\\\\AddressBookMultiGetReport))\\n#8 [internal function]: Sabre\\\\CardDAV\\\\Plugin->report('{urn:ietf:param...', Object(Sabre\\\\CardDAV\\\\Xml\\\\Request\\\\AddressBookMultiGetReport), 'addressbooks\\\/us...')\\n#9 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/event\\\/lib\\\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\\n#10 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/CorePlugin.php(718): Sabre\\\\Event\\\\EventEmitter->emit('report', Array)\\n#11 [internal function]: Sabre\\\\DAV\\\\CorePlugin->httpReport(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#12 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/event\\\/lib\\\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\\n#13 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(479): Sabre\\\\Event\\\\EventEmitter->emit('method:REPORT', Array)\\n#14 \\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(254): Sabre\\\\DAV\\\\Server->invokeMethod(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#15 \\\/var\\\/www\\\/nextcloud\\\/apps\\\/dav\\\/lib\\\/Server.php(227): Sabre\\\\DAV\\\\Server->exec()\\n#16 \\\/var\\\/www\\\/nextcloud\\\/apps\\\/dav\\\/appinfo\\\/v2\\\/remote.php(30): OCA\\\\DAV\\\\Server->exec()\\n#17 \\\/var\\\/www\\\/nextcloud\\\/remote.php(165): require_once('\\\/var\\\/www\\\/nextcl...')\\n#18 {main}\",\"File\":\"\\\/var\\\/www\\\/nextcloud\\\/3rdparty\\\/sabre\\\/vobject\\\/lib\\\/Document.php\",\"Line\":220,\"User\":\"balleyne\"}","level":4,"time":"2017-04-16T10:59:49+00:00","method":"REPORT","url":"\/remote.php\/dav\/addressbooks\/users\/balleyne\/contacts\/","user":"balleyne","version":"11.0.2.7"}

Browser log

Browser log
--- BEGIN DEBUG INFO ---
SYNCHRONIZATION INFO
Synchronization phase: 9
Authority: com.android.contacts

HTTP REQUEST:
REPORT /remote.php/dav/addressbooks/users/balleyne/contacts/
Depth: 0

<?xml version='1.0' encoding='UTF-8' ?><CARD:addressbook-multiget xmlns="DAV:" xmlns:CARD="urn:ietf:params:xml:ns:carddav"><prop><getcontenttype /><getetag /><CARD:address-data content-type="text/vcard" version="4.0" /></prop><href>/remote.php/dav/addressbooks/users/balleyne/contacts/640a7821-23ba-4e43-ac80-2eff5eb6d723.vcf</href><href>/remote.php/dav/addressbooks/users/balleyne/contacts/3504eaad-419e-4d60-87a5-60c6b11f542c.vcf</href><href>/remote.php/dav/addressbooks/users/balleyne/contacts/C6FA3862-2750-0001-EDF3-1E1E18801B69.vcf</href><href>/remote.php/dav/addressbooks/users/balleyne/contacts/72f0ce3e-eb0c-4b77-b9cb-6b74ca875dec.vcf</href><href>/remote.php/dav/addressbooks/users/balleyne/contacts/11c4440d-098d-415b-a510-089fa7aa25ac.vcf</href><href>/remote.php/dav/addressbooks/users/balleyne/contacts/47225507-2f2c-420e-bda6-602ed7ca807a.vcf</href><href>/remote.php/dav/addressbooks/users/balleyne/contacts/48cd5f01-f846-4975-a5b4-6025e927c47d.vcf</href><href>/remote.php/dav/addressbooks/users/balleyne/contacts/23175ff5-33a5-4e73-8283-008e1560d610.vcf</href><href>/remote.php/dav/addressbooks/users/balleyne/contacts/C6DB6899-1560-0001-EBFE-5F3A13B01E4A.vcf</href><href>/remote.php/dav/addressbooks/users/balleyne/contacts/031ae308-e0ff-4e1b-ba09-68474bbc4cd4.vcf</href></CARD:addressbook-multiget>

HTTP RESPONSE:
http/1.1 500 Internal Server Error
Cache-Control: no-store, no-cache, must-revalidate
Connection: close
Content-Length: 272
Content-Security-Policy: default-src 'none';
Content-Type: application/xml; charset=utf-8
Date: Sun, 16 Apr 2017 10:51:53 GMT
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Pragma: no-cache
Server: Apache/2.4.18 (Ubuntu) mod_fastcgi/mod_fastcgi-SNAP-0910052141 mod_fcgid/2.3.9 OpenSSL/1.0.2g mod_wsgi/4.3.0 Python/2.7.12
Strict-Transport-Security: max-age=15768000; includeSubDomains; preload
X-Content-Type-Options: nosniff
X-Download-Options: noopen
X-Frame-Options: SAMEORIGIN
X-Permitted-Cross-Domain-Policies: none
X-Robots-Tag: none
X-XSS-Protection: 1; mode=block

<?xml version="1.0" encoding="utf-8"?>[LF]
<d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns">[LF]
  <s:exception>Sabre\VObject\InvalidDataException</s:exception>[LF]
  <s:message>Unsupported VALUE parameter for PHOTO property. You supplied "binary[c3][be]uri"</s:message>[LF]
</d:error>[LF]
SYSTEM INFORMATION
Android version: 5.1.1 (cm_klte-userdebug 5.1.1 LMY48B 664e8209ef test-keys)
Device: Samsung SM-G900W8 (kltecan)```
</details>

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions