-
Notifications
You must be signed in to change notification settings - Fork 150
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ensure that Evolution can find freebusy and other data of other participants of a meeting. #4998
Comments
The mailing lists archives, where WebDAV was discussed, are lost. As far as I remember it is not clear where to send this REPORT request. This is tracked on Evolution side at https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/302 . There the REPORT is sent towards the principal-url, while in your snippet it is sent towards the calendar. This might be consequence of the fact that you have setup the calendar as „New calendar“ with CalDAV url instead of using “Collection account”. As stated there, I have implemented apply-to-principal-collection-set in the way I understand it. However this was towards Cyrus 3.4, it was a big change, or alike and I have not forward-copied this change on my system to newer versions. I could upload here my patches, if somebody wants to work on these. Somehow Evolution and Cyrus IMAP do not agree how to send the free-busy information from the Scheduling Outbox. I have forgotten the details.
Probably because RFC 3744 says this needs to sent to the principal home url - |
Same problem already reported in #2546. |
In 2021 I created this related patch, containing as description: In REPORT principal-property-search utilize apply-to-principal-collection-set My reading of RFC 3744 is that whenever the parameter apply-to-principal-collection-set is supplied to the principal-property-search the request URL is ignored and the REPORT acts as if performed towards the URLs from DAV:principal-collection-set = /dav/principal/users for Cyrus IMAP. The errata to RFC 3744 at https://greenbytes.de/tech/webdav/draft-reschke-rfc3744bis-latest.html add <apply-to-principal-collection-set/> parameter to the DAV:principal-search-property-set REPORT, and it acts on the same way. This changset implements the DAV:principal-collection-set and DAV:principal-search-property-set REPORTs with apply-to-principal-collection-set in the /dav/calendars and /dav/addressbooks namespaces, but not in the /tzdist and /dav/notification namespaces. The rationale is that agendav calls the
See question at https://lists.w3.org/Archives/Public/w3c-dist-auth/ from 24 Feb 2020. Gnome Evolution calls REPORT DAV:principal-property-search with <apply-to-principal-collection-set/> on /dav/calendars/user/zzz/Default . My reading of RFC 3744 is that with <apply-to-principal-collection-set/> the real request URL is ignored and instead the report is executed as if the request URL was applied towards the URLs from DAV:principal-collection-set. For cyrus imap DAV:principal-collection-set is “/dav/principals/user/”. https://greenbytes.de/tech/webdav/draft-reschke-rfc3744bis-latest.html adds <apply-to-principal-collection-set/> parameter to the DAV:principal-search-property-set REPORT, which the current changeset implements. |
or at https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/308. |
As a user of Evolution backed by cyrus-imapd CalDAV, I want to schedule a meeting with another user as attendee of this meeting. After having provided an email address of the other user, evolution then asks cyrus-imapd CalDAV on my behalf regarding data of the other user, in preparation of obtaining freebusy data of that other user. Cyrus-imapd CalDAV is expected to answer properly, but instead replies with an error.
How to reproduce
Expected result
Actual result
Analysis
Cyrus-imapd CalDAV should search and find the handler for "principal-property-search" reports in a list defined in file imap/http_dav.c:
However, instead of that, cyrus-imapd CalDAV searches the handler for "principal-property-search" reports in a list defined in file imap/http_caldav.c:
Observe that there is an overlap of supported report types ("expand-property" is supported by both report lists), but the report type "principal-property-search" is not among them. That is why cyrus-imapd CalDAV does not process "principal-property-search" properly, while it could.
Is there a reason not to include the support for "principal-property-search" in file "imap/http_caldav.c"?
If not, then fixing this bug could allow users of Evolution (and potentially other clients) to actually see freebusy information of other invitees.
The text was updated successfully, but these errors were encountered: