View Issue Details

IDProjectCategoryView StatusLast Update
0005163SOGoWeb Address Bookpublic2022-02-21 21:29
Reporterworryboy Assigned Tofrancis  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
Platform[Server] LinuxOSUbuntuOS Version16.04 LTS
Product Version5.0.0 
Fixed in Version5.5.1 
Summary0005163: no carddav RFC 6578 compliance
Description

while syncing a address book , maintained by SOGo (5.0) no contact ware shown due to an incompatibility of RFC 6578 compliance.

SoGo's response is not compliant with RFC 6578, which specifies the sync-collection report.

Quote:

The content of each DAV:response element differs depending on how the member was altered:
For members that have changed (i.e., are new or have had their mapped resource modified), the DAV:response MUST contain at least one DAV:propstat element and MUST NOT contain any DAV:status element.

Now looking at the response i got, it reports the cards like this:

<D:response>
        <D:href>
                /SOGo/dav/yyyyyy@zzzzz.de/Contacts/personal/sabre-vobject-79024419-6f71-4dba-a7ef-06104101d416.vcf
        </D:href>                                 
        <D:status>
                HTTP/1.1 201 Created
        </D:status>                                             
        <D:propstat>
            <D:prop>
                <D:getetag>
                        "gcs00000002"
                </D:getetag>
            </D:prop>                                       
            <D:status>
                    HTTP/1.1 200 OK
            </D:status>
        </D:propstat>
    </D:response>
Steps To Reproduce

working SOGo (v 5.0)

fresh install of roundcube (v 1.4.8)

latest git version of carddav (https://github.com/blind-coder/rcmcarddav > 4.0)

enable debug logging on backend side

Backend Ubuntu 18.04 running with SOGo and Roundcube

Additional Information

issue tracked @ roundcube plugin developer
https://github.com/blind-coder/rcmcarddav/issues/302

Tagsaddressbook, CardDAV, roundcube

Activities

tobixen

tobixen

2021-03-12 21:38

reporter   ~0015139

I'm also having some troubles when running tests from the caldav python library towards SOGo, though my suspicion is that it's due to some race conditions, the sync-token seems to be the unix timestamp in seconds, if my testing script does testing in less than a second ... things may break. I'm investigating.

tobixen

tobixen

2021-03-13 10:22

reporter   ~0015141

Indeed, littering "time.sleep(1)" in my code caused everything to pass.

It's not a breach of the RFC to deliver too much when doing a sync-report. However, if doing those three steps in the same second:

  • Taking out a sync-token report of some events
  • Deleting one of the events
  • Taking out a new sync-token report

... the last report fails to notify us about the deleted object.

That's a bug, I think.

worryboy

worryboy

2022-01-14 15:55

reporter   ~0015773

any update ?

Related Changesets

sogo: master b0610469

2022-01-21 14:47

francis


Details Diff
fix(calendar(dav)): add DAV:status to DAV:response only when deleted

Fixes 0005163
Affected Issues
0005163
mod - SoObjects/SOGo/SOGoGCSFolder.m Diff File

sogo: v2 9bffee26

2022-01-21 19:47

francis


Details Diff
fix(calendar(dav)): add DAV:status to DAV:response only when deleted

Fixes 0005163
Affected Issues
0005163
mod - SoObjects/SOGo/SOGoGCSFolder.m Diff File

Issue History

Date Modified Username Field Change
2020-09-15 12:53 worryboy New Issue
2020-09-15 12:53 worryboy Tag Attached: addressbook
2020-09-15 12:53 worryboy Tag Attached: CardDAV
2020-09-15 12:53 worryboy Tag Attached: roundcube
2021-03-12 21:38 tobixen Note Added: 0015139
2021-03-13 10:22 tobixen Note Added: 0015141
2022-01-14 15:55 worryboy Note Added: 0015773
2022-01-21 16:28 francis Description Updated
2022-01-21 16:28 francis Steps to Reproduce Updated
2022-01-21 19:49 francis Changeset attached => sogo master b0610469
2022-01-21 19:49 francis Assigned To => francis
2022-01-21 19:49 francis Resolution open => fixed
2022-01-21 19:49 francis Status new => resolved
2022-01-21 19:49 francis Fixed in Version => 5.5.1
2022-02-21 21:29 francis Changeset attached => sogo v2 9bffee26