Expected behaviour
I have a client with many documents and the user have some xxx.vcf Cards in the files… And when Owncloud start the sync stops every time when the client found a vcf file.
Actual behaviour
every time. I must log in and delete the file before the sync starts again.
Steps to reproduce
Server configuration
Operating system: Ubuntu
Web server:
Database: Mysyql
PHP version: 7.02
ownCloud version:10.0.6
Storage backend (external storage):
Client configuration
Client version:2,40
Operating system: OSX
OS language: German
Please upload a .vcf and sync with your Mac… it will be stops.
Hey, @tomtim007 thanks for reporting! Weird; this should be fixed on your ownCloud version after the fix for:
opened 04:54PM - 09 Jan 18 UTC
closed 07:38AM - 16 Jan 18 UTC
Type:Bug
app:dav
comp:carddav
server
Note that contact app is not even enabled.
### Steps to reproduce
1. Create … an empty `.vcf` file (`touch test.vcf`)
2. Upload to ownCloud with the webUI
3. Connect a Desktop Client > 2.3.0 (since it uses the new WebDAV endpoint: https://github.com/owncloud/client/issues/4007)
### Expected behavior
The file gets downloaded regardless of its contents. Like it gets uploaded in step no.2 (old endpoint)
### Actual behavior
`GET`-ing a file trough the new endpoint is somehow triggering the CardDAV plugin which checks if the `.vcf` file is well-formed/contains errors **and returns an error 500 in that case.** (which propagates to the client)
Upload from the new endpoint is working though.
### Logs
#### Web server error log
```
172.17.0.1 - - [09/Jan/2018:16:14:07 +0000] "PUT /remote.php/webdav/test.vcf HTTP/1.1" 201 728 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:59.0) Gecko/20100101 Firefox/59.0"
[...]
172.17.0.1 - admin [09/Jan/2018:16:14:14 +0000] "GET /remote.php/dav/files/admin/test.vcf HTTP/1.1" 500 1070 "-" "Mozilla/5.0 (Macintosh) mirall/2.4.0 (build 8801)"
```
#### ownCloud log (data/owncloud.log)
```
{
"reqId":"cf09c5f5-33d3-4d08-97ce-4adf7515f675",
"level":4,
"time":"2018-01-09T16:14:14+00:00",
"remoteAddr":"172.17.0.1",
"user":"admin",
"app":"webdav",
"method":"GET",
"url":"/remote.php/dav/files/admin/test.vcf",
"message":"Exception:
{
"Message":"End of document reached prematurely","Exception":"Sabre\VObject\EofException","Code":0,"Trace":"#0 /var/www/owncloud/lib/composer/sabre/vobject/lib/Parser/MimeDir.php(150): Sabre\VObject\Parser\MimeDir->readLine()
#1 /var/www/owncloud/lib/composer/sabre/vobject/lib/Parser/MimeDir.php(89): Sabre\VObject\Parser\MimeDir->parseDocument()
#2 /var/www/owncloud/lib/composer/sabre/vobject/lib/Reader.php(46): Sabre\VObject\Parser\MimeDir->parse('', 0)
#3 /var/www/owncloud/lib/composer/sabre/dav/lib/CardDAV/Plugin.php(857): Sabre\VObject\Reader::read('')
#4 /var/www/owncloud/lib/composer/sabre/dav/lib/CardDAV/Plugin.php(782): Sabre\CardDAV\Plugin->convertVCard('', 'vcard3')
#5 [internal function]: Sabre\CardDAV\Plugin->httpAfterGet(Object(Sabre\HTTP\Request), Object(Sabre\HTTP\Response))
#6 /var/www/owncloud/lib/composer/sabre/event/lib/EventEmitterTrait.php(105): call_user_func_array(Array, Array)
#7 /var/www/owncloud/lib/composer/sabre/dav/lib/DAV/Server.php(491): Sabre\Event\EventEmitter->emit('afterMethod:GET', Array)
#8 /var/www/owncloud/lib/composer/sabre/dav/lib/DAV/Server.php(254): Sabre\DAV\Server->invokeMethod(Object(Sabre\HTTP\Request), Object(Sabre\HTTP\Response))
#9 /var/www/owncloud/apps/dav/lib/Server.php(256): Sabre\DAV\Server->exec()
#10 /var/www/owncloud/apps/dav/appinfo/v2/remote.php(31): OCA\DAV\Server->exec()
#11 /var/www/owncloud/remote.php(165): require_once('/var/www/ownclo...')
#12 {main}","File":"/var/www/owncloud/lib/composer/sabre/vobject/lib/Parser/MimeDir.php","Line":296,"User":"admin"
}"
}
```
… was backported to the stable10
branch: https://github.com/owncloud/core/pull/30149 .
Could you create and post here a dummy .vcf
file to try to reproduce in my setup? It might be a different issue/regression.
an empty vcf File is no problem… and on my computer is in the root folder no problem… But an a other is it a problem. The Contact App is enabled… I think the vcfs are in a bad format. I delete this files…
@tomtim007 just out of curiosity; how did you generate those files? Did you use the contact app itself? Both ownCloud and the app should be able to work out just fine and one should not feed the other with bad-formatted data.
If you have a contact file you can publish here or the server logs, that could help us troubleshoot what’s going on.
Thanks!
I have one of the bad vcf. Can I sent it to anybody ? Not here in the forum. Like as Email.