Hi Ken,
Below goes the telemetry for the relevant part. What I see here is that
Cyrus correctly answers to the "principal?" question and then the iOS
asks for calendars of the principal (telemetry included in the attached
file) and there Cyrus only returns the personal calendars, but IMO the
shared folder should be somehow taken into account, either responding
differently to the "principal?" question or including the shared
calendar when queried for available calendars (IMO the best solution (no
need to create separate accounts on the phone with different URLs).
Please let me know if you need additional details.
Regards,
Anatoli
---------- t...@domain.com Sun Mar 25 06:05:36 2018
<1521968736<*PROPFIND* */dav/calendars/shared/* HTTP/1.1
Accept: */*
Content-type: text/xml
Connection: keep-alive
Content-length: 181
Host: mail.domain.com
User-agent: iOS/11.2.6 (15D100) accountsd/1.0
Prefer: return=minimal
Depth: 0
Brief: t
Accept-language: en-us
Authorization: Basic ...
Accept-encoding: br, gzip, deflate
<1521968736<<?xml version="1.0" encoding="UTF-8"?>
<A:propfind xmlns:A="DAV:">
<A:prop>
<A:current-user-principal/>
<A:principal-URL/>
<A:resourcetype/>
</A:prop>
</A:propfind>
>1521968736>HTTP/1.1 207 Multi-Status
Date: Sun, 25 Mar 2018 09:05:36 GMT
Strict-Transport-Security: max-age=600
Vary: Accept-Encoding, Brief, Prefer
Preference-Applied: return=minimal
Content-Type: application/xml; charset=utf-8
Content-Length: 546
<?xml version="1.0" encoding="utf-8"?>
<A:multistatus xmlns:A="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav">
<A:response>
<A:href>*/dav/calendars/shared/*</A:href>
<A:propstat>
<A:prop>
<A:current-user-principal>
<A:href>*/dav/principals/user/t...@domain.com/*</A:href>
</A:current-user-principal>
<A:resourcetype>
<A:collection/>
<C:calendar/>
</A:resourcetype>
</A:prop>
<A:status>HTTP/1.1 200 OK</A:status>
</A:propstat>
</A:response>
</A:multistatus>
<1521968736<OPTIONS /dav/principals/user/t3%40domain.com/ HTTP/1.1
Host: mail.domain.com
Connection: keep-alive
Accept: */*
User-Agent: iOS/11.2.6 (15D100) accountsd/1.0
Accept-Language: en-us
Content-Length: 0
Accept-Encoding: br, gzip, deflate
>1521968736>HTTP/1.1 200 OK
Date: Sun, 25 Mar 2018 09:05:36 GMT
Strict-Transport-Security: max-age=600
Cache-Control: no-cache
Link: </dav/principals/.server-info>; rel="server-info";
token="80769c2c66d340ecd178710db26d56b9c4699e3e"
DAV: 1, 2, 3, access-control, extended-mkcol, resource-sharing
DAV: calendar-access, calendar-auto-schedule
DAV: calendar-query-extended, calendar-availability,
calendar-managed-attachments
DAV: calendarserver-sharing, inbox-availability
DAV: addressbook
Allow: OPTIONS, GET, HEAD
Allow: PROPFIND, REPORT, COPY
Content-Length: 0
*From:* Ken Murchison
*Sent:* Monday, March 19, 2018 09:24
*To:* Info-cyrus
*Subject:* Re: xDAV and shared namespaces
Can you capture telemetry for the PROPFIND and OPTIONS requests on the
shared calendar?
On 03/19/2018 02:55 AM, Anatoli wrote:
Hi Ken,
Basically, the shared calendar is working fine in Thunderbird, where I
can specify the exact URL. But I can't make it work on iPhone as it
only takes the server and later resolves the exact URL via
/.well-known/caldav which points to the personal calendar for the same
user. Though, if I specify on iPhone the exact URL in the settings, it
queries it:
Mar 19 03:27:42 l https[18199]: [10.1.1.100] with "iOS/11.2.6 (15D100)
dataaccessd/1.0"; "PROPFIND /dav/calendars/shared/ HTTP/1.1" (depth=0)
=> "HTTP/1.1 401 Unauthorized" (error=Must authenticate to access the
specified target)
Mar 19 03:27:42 l https[18199]: login: [10.1.1.100] t...@xxx.com
Basic+TLS User logged in
SESSIONID=<xxx.com-18199-1521440862-1-11826509860795088158>
Mar 19 03:27:42 l https[18199]: [10.1.1.100] as "t...@xxx.com" with
"iOS/11.2.6 (15D100) dataaccessd/1.0"; "PROPFIND
/dav/calendars/shared/ HTTP/1.1" (type=prop; depth=0) => "HTTP/1.1 207
Multi-Status"
Mar 19 03:27:42 l https[18199]: login: [10.1.1.100] t...@xxx.com
Basic+TLS User logged in
SESSIONID=<xxx.com-18199-1521440862-1-11826509860795088158>
Mar 19 03:27:42 l https[18199]: [10.1.1.100] as "t...@xxx.com" with
"iOS/11.2.6 (15D100) dataaccessd/1.0"; "OPTIONS /dav/calendars/shared/
HTTP/1.1" => "HTTP/1.1 200 OK"
But finally, iPhone Calendar app doesn't show events from the shared
calendar and in the Accounts the URL resets to the naked domain (i.e.
without the /dav/calendars/shared/ part). What could be done to make
it work?
Thanks,
Anatoli
*From:* Ken Murchison
*Sent:* Tuesday, March 13, 2018 14:09
*To:* Info-cyrus
*Subject:* Re: xDAV and shared namespaces
On 03/13/2018 12:50 PM, Anatoli wrote:
Ken,
Thanks a lot! After creating the shared folder under the root
hierarchy (with imtest -a admin and the command you provided),
setting the corresponding ACLs for the users that have to have access
to the folder (with cyradm sam) and creating a new connection in each
WebDAV client for https://domain.com/dav/drive/shared/, everything
worked fine!
I'll try to test the same with CalDAV / CardDAV and report it here.
Its entirely possible that the URL parsing code for CalDAV and CardDAV
will not resolve to a shared folder. Let me know.
Regards,
Anatoli
*From:* Ken Murchison
*Sent:* Tuesday, March 13, 2018 12:55
*To:* Info-cyrus
*Subject:* Re: xDAV and shared namespaces
On 03/13/2018 11:48 AM, Anatoli wrote:
Hi Ken,
Thanks for your quick reply. Yes, I'm willing to test it and if
needed I can also apply patches (I build Cyrus from sources).
> x CREATE shared (TYPE COLLECTION)
What does this command is supposed to do and under what user should
I execute it (I mean imtest -a <user>)? I tried to run it under
admin user (it creates a "shared" folder at the root hierarchy) and
under a normal user that already has a shared folder (in this case
the folder is created under the user hierarchy), but in both cases
the folder stays empty (with only cyrus.header and cyrus.index
inside) and is not visible under a WebDAV client. Am I missing
something?
Definitely do this as an admin (e.g. 'cyrus') that DOES NOT have
their own user hierarchy.
Its been so long since I wrote and played with the WebDAV module that
I forgot how it works. Try:
x CREATE #drive/shared (TYPE COLLECTION)
Use whatever you have set for the davdriveprefix option and the
proper hierarchy ('.' if you have disabled unixhierarchysep)
Regards,
Anatoli
*From:* Ken Murchison
*Sent:* Tuesday, March 13, 2018 12:18
*To:* Info-cyrus
*Subject:* Re: xDAV and shared namespaces
xDAV hasn't had much development or testing in the shared namespace
and there isn't any tooling to create such mailboxes.
If you wanted to do some testing, you'd have to create the mailboxes
by hand and set the mailbox type accordingly. To do so, you can
connect to the server as an admin using imtest and enter the
following command:
x CREATE shared (TYPE COLLECTION)
to create a WebDAV collection. Or set the TYPE to CALENDAR or
ADDRESSBOOK
On 03/13/2018 11:08 AM, Anatoli wrote:
Hi All,
I'm experimenting with xDav (CalDAV, CardDAV and WebDAV) in Cyrus
3.0.5. All xDAV services in user namespaces work as expected, but I
can't figure out how to setup them for shared namespaces.
The most important service for me to setup for shared namespaces is
WebDAV. I'd like to have a shared folder accessible to multiple
users based on their ACLs. I know how to setup a shared folder for
IMAP:
cyradm> cm shar...@domain.com
cyradm> sam shar...@domain.com us...@domain.com write
In the mail client I see the shared1 folder under "shared folders".
But I can't see it in a WebDAV client. At the server the shared1
folder doesn't have the autocreated xDAV structure as it normally
autocreates for individual users, and I don't know how to create it
manually.
Does anybody know how to configure WebDAV shared folders? I'm also
interested in creating shared calendars (CalDAV) and addressbooks
(CardDAV), but I suppose they are managed the same way as WebDAV.
Thanks in advance,
Anatoli
----
Cyrus Home Page:http://www.cyrusimap.org/
List Archives/Info:http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus
--
Ken Murchison
Cyrus Development Team
FastMail US LLC
----
Cyrus Home Page:http://www.cyrusimap.org/
List Archives/Info:http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus
----
Cyrus Home Page:http://www.cyrusimap.org/
List Archives/Info:http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus
--
Ken Murchison
Cyrus Development Team
FastMail US LLC
----
Cyrus Home Page:http://www.cyrusimap.org/
List Archives/Info:http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus
----
Cyrus Home Page:http://www.cyrusimap.org/
List Archives/Info:http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus
--
Ken Murchison
Cyrus Development Team
FastMail US LLC
----
Cyrus Home Page:http://www.cyrusimap.org/
List Archives/Info:http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus
----
Cyrus Home Page:http://www.cyrusimap.org/
List Archives/Info:http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus
--
Ken Murchison
Cyrus Development Team
FastMail US LLC
----
Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus
---------- t...@domain.com Sun Mar 25 06:05:38 2018
<1521968738<PROPFIND /dav/principals/user/t3%40domain.com/ HTTP/1.1
Accept: */*
Content-type: text/xml
Connection: keep-alive
Content-length: 743
Host: mail.domain.com
User-agent: iOS/11.2.6 (15D100) dataaccessd/1.0
Prefer: return=minimal
Depth: 0
Brief: t
Accept-language: en-us
Authorization: Basic ...
Accept-encoding: br, gzip, deflate
<1521968738<<?xml version="1.0" encoding="UTF-8"?>
<A:propfind xmlns:A="DAV:">
<A:prop>
<B:calendar-home-set xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<B:calendar-user-address-set xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<A:current-user-principal/>
<A:displayname/>
<C:dropbox-home-URL xmlns:C="http://calendarserver.org/ns/"/>
<C:email-address-set xmlns:C="http://calendarserver.org/ns/"/>
<C:notification-URL xmlns:C="http://calendarserver.org/ns/"/>
<A:principal-collection-set/>
<A:principal-URL/>
<A:resource-id/>
<B:schedule-inbox-URL xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<B:schedule-outbox-URL xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<A:supported-report-set/>
</A:prop>
</A:propfind>
>1521968738>HTTP/1.1 207 Multi-Status
Date: Sun, 25 Mar 2018 09:05:38 GMT
Strict-Transport-Security: max-age=600
Vary: Accept-Encoding, Brief, Prefer
Preference-Applied: return=minimal
Content-Type: application/xml; charset=utf-8
Content-Length: 1955
<?xml version="1.0" encoding="utf-8"?>
<A:multistatus xmlns:A="DAV:" xmlns:B="urn:ietf:params:xml:ns:caldav" xmlns:C="http://calendarserver.org/ns/">
<A:response>
<A:href>/dav/principals/user/t...@domain.com/</A:href>
<A:propstat>
<A:prop>
<B:calendar-home-set>
<A:href>/dav/calendars/user/t...@domain.com/</A:href>
</B:calendar-home-set>
<B:calendar-user-address-set>
<A:href>mailto:t...@domain.com</A:href>
</B:calendar-user-address-set>
<A:current-user-principal>
<A:href>/dav/principals/user/t...@domain.com/</A:href>
</A:current-user-principal>
<A:displayname>t...@domain.com</A:displayname>
<C:notification-URL>
<A:href>/dav/notifications/user/t...@domain.com/</A:href>
</C:notification-URL>
<A:principal-collection-set>
<A:href>/dav/principals/user/</A:href>
</A:principal-collection-set>
<A:principal-URL>
<A:href>/dav/principals/user/t...@domain.com/</A:href>
</A:principal-URL>
<B:schedule-inbox-URL>
<A:href>/dav/calendars/user/t...@domain.com/Inbox/</A:href>
</B:schedule-inbox-URL>
<B:schedule-outbox-URL>
<A:href>/dav/calendars/user/t...@domain.com/Outbox/</A:href>
</B:schedule-outbox-URL>
<A:supported-report-set>
<A:supported-report>
<A:report>
<A:expand-property/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<A:principal-property-search/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<A:principal-search-property-set/>
</A:report>
</A:supported-report>
</A:supported-report-set>
</A:prop>
<A:status>HTTP/1.1 200 OK</A:status>
</A:propstat>
</A:response>
</A:multistatus>
---------- t...@domain.com Sun Mar 25 06:05:38 2018
<1521968738<OPTIONS /dav/principals/user/t3%40domain.com/ HTTP/1.1
Accept: */*
Connection: keep-alive
Content-length: 0
Host: mail.domain.com
User-agent: iOS/11.2.6 (15D100) dataaccessd/1.0
Accept-language: en-us
Authorization: Basic ...
Accept-encoding: br, gzip, deflate
>1521968738>HTTP/1.1 200 OK
Date: Sun, 25 Mar 2018 09:05:38 GMT
Strict-Transport-Security: max-age=600
Cache-Control: no-cache
Link: </dav/principals/.server-info>; rel="server-info"; token="80769c2c66d340ecd178710db26d56b9c4699e3e"
DAV: 1, 2, 3, access-control, extended-mkcol, resource-sharing
DAV: calendar-access, calendar-auto-schedule
DAV: calendar-query-extended, calendar-availability, calendar-managed-attachments
DAV: calendarserver-sharing, inbox-availability
DAV: addressbook
Allow: OPTIONS, GET, HEAD
Allow: PROPFIND, REPORT, COPY
Content-Length: 0
<1521968738<PROPFIND /dav/calendars/user/t3%40domain.com/ HTTP/1.1
Host: mail.domain.com
Content-Type: text/xml
Depth: 1
Brief: t
Accept: */*
Connection: keep-alive
Prefer: return=minimal
User-Agent: iOS/11.2.6 (15D100) dataaccessd/1.0
Content-Length: 2217
Accept-Language: en-us
Accept-Encoding: br, gzip, deflate
<1521968738<<?xml version="1.0" encoding="UTF-8"?>
<A:propfind xmlns:A="DAV:">
<A:prop>
<A:add-member/>
<C:allowed-sharing-modes xmlns:C="http://calendarserver.org/ns/"/>
<E:autoprovisioned xmlns:E="http://apple.com/ns/ical/"/>
<F:bulk-requests xmlns:F="http://me.com/_namespace/"/>
<B:calendar-alarm xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<E:calendar-color xmlns:E="http://apple.com/ns/ical/"/>
<B:calendar-description xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<B:calendar-free-busy-set xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<E:calendar-order xmlns:E="http://apple.com/ns/ical/"/>
<B:calendar-timezone xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<A:current-user-privilege-set/>
<B:default-alarm-vevent-date xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<B:default-alarm-vevent-datetime xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<A:displayname/>
<C:getctag xmlns:C="http://calendarserver.org/ns/"/>
<C:invite xmlns:C="http://calendarserver.org/ns/"/>
<E:language-code xmlns:E="http://apple.com/ns/ical/"/>
<E:location-code xmlns:E="http://apple.com/ns/ical/"/>
<A:owner/>
<C:pre-publish-url xmlns:C="http://calendarserver.org/ns/"/>
<C:publish-url xmlns:C="http://calendarserver.org/ns/"/>
<C:push-transports xmlns:C="http://calendarserver.org/ns/"/>
<C:pushkey xmlns:C="http://calendarserver.org/ns/"/>
<A:quota-available-bytes/>
<A:quota-used-bytes/>
<E:refreshrate xmlns:E="http://apple.com/ns/ical/"/>
<A:resource-id/>
<A:resourcetype/>
<B:schedule-calendar-transp xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<B:schedule-default-calendar-URL xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<C:source xmlns:C="http://calendarserver.org/ns/"/>
<C:subscribed-strip-alarms xmlns:C="http://calendarserver.org/ns/"/>
<C:subscribed-strip-attachments xmlns:C="http://calendarserver.org/ns/"/>
<C:subscribed-strip-todos xmlns:C="http://calendarserver.org/ns/"/>
<B:supported-calendar-component-set xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<B:supported-calendar-component-sets xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<A:supported-report-set/>
<A:sync-token/>
</A:prop>
</A:propfind>
>1521968738>HTTP/1.1 207 Multi-Status
Date: Sun, 25 Mar 2018 09:05:38 GMT
Strict-Transport-Security: max-age=600
Vary: Accept-Encoding, Brief, Prefer
Preference-Applied: return=minimal
Content-Type: application/xml; charset=utf-8
Content-Length: 9412
<?xml version="1.0" encoding="utf-8"?>
<A:multistatus xmlns:A="DAV:" xmlns:C="http://calendarserver.org/ns/" xmlns:E="http://apple.com/ns/ical/" xmlns:F="http://me.com/_namespace/" xmlns:B="urn:ietf:params:xml:ns:caldav" xmlns:CY="http://cyrusimap.org/ns/">
<A:response>
<A:href>/dav/calendars/user/t...@domain.com/</A:href>
<A:propstat>
<A:prop>
<C:allowed-sharing-modes/>
<F:bulk-requests/>
<A:current-user-privilege-set>
<A:privilege>
<A:all/>
</A:privilege>
<A:privilege>
<A:read/>
</A:privilege>
<A:privilege>
<B:read-free-busy/>
</A:privilege>
<A:privilege>
<A:write/>
</A:privilege>
<A:privilege>
<A:write-content/>
</A:privilege>
<A:privilege>
<A:write-properties/>
</A:privilege>
<A:privilege>
<CY:write-properties-collection/>
</A:privilege>
<A:privilege>
<CY:write-properties-resource/>
</A:privilege>
<A:privilege>
<A:bind/>
</A:privilege>
<A:privilege>
<CY:make-collection/>
</A:privilege>
<A:privilege>
<CY:add-resource/>
</A:privilege>
<A:privilege>
<A:unbind/>
</A:privilege>
<A:privilege>
<CY:remove-collection/>
</A:privilege>
<A:privilege>
<CY:remove-resource/>
</A:privilege>
<A:privilege>
<CY:admin/>
</A:privilege>
</A:current-user-privilege-set>
<A:displayname><![CDATA[#calendars]]></A:displayname>
<C:invite/>
<A:owner>
<A:href>/dav/principals/user/t...@domain.com/</A:href>
</A:owner>
<A:quota-available-bytes>-37571</A:quota-available-bytes>
<A:quota-used-bytes>0</A:quota-used-bytes>
<A:resourcetype>
<A:collection/>
</A:resourcetype>
<A:supported-report-set>
<A:supported-report>
<A:report>
<A:expand-property/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<A:acl-principal-prop-set/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<A:sync-collection/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<B:calendar-query/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<B:calendar-multiget/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<B:free-busy-query/>
</A:report>
</A:supported-report>
</A:supported-report-set>
</A:prop>
<A:status>HTTP/1.1 200 OK</A:status>
</A:propstat>
</A:response>
<A:response>
<A:href>/dav/calendars/user/t...@domain.com/Default/</A:href>
<A:propstat>
<A:prop>
<A:add-member>
<A:href>/dav/calendars/user/t...@domain.com/Default/?action=add-member</A:href>
</A:add-member>
<C:allowed-sharing-modes>
<C:can-be-shared/>
</C:allowed-sharing-modes>
<F:bulk-requests>
<F:simple>
<F:max-resources/>
<F:max-bytes/>
</F:simple>
</F:bulk-requests>
<E:calendar-color><![CDATA[#1badf8]]></E:calendar-color>
<E:calendar-order><![CDATA[0]]></E:calendar-order>
<A:current-user-privilege-set>
<A:privilege>
<A:all/>
</A:privilege>
>1521968738> <A:privilege>
<A:read/>
</A:privilege>
<A:privilege>
<B:read-free-busy/>
</A:privilege>
<A:privilege>
<A:write/>
</A:privilege>
<A:privilege>
<A:write-content/>
</A:privilege>
<A:privilege>
<A:write-properties/>
</A:privilege>
<A:privilege>
<CY:write-properties-collection/>
</A:privilege>
<A:privilege>
<CY:write-properties-resource/>
</A:privilege>
<A:privilege>
<A:bind/>
</A:privilege>
<A:privilege>
<CY:make-collection/>
</A:privilege>
<A:privilege>
<CY:add-resource/>
</A:privilege>
<A:privilege>
<A:unbind/>
</A:privilege>
<A:privilege>
<CY:remove-collection/>
</A:privilege>
<A:privilege>
<CY:remove-resource/>
</A:privilege>
<A:privilege>
<CY:admin/>
</A:privilege>
</A:current-user-privilege-set>
<A:displayname><![CDATA[personal]]></A:displayname>
<C:getctag>1520951272-304</C:getctag>
<C:invite/>
<A:owner>
<A:href>/dav/principals/user/t...@domain.com/</A:href>
</A:owner>
<A:quota-available-bytes>-37571</A:quota-available-bytes>
<A:quota-used-bytes>28401</A:quota-used-bytes>
<A:resourcetype>
<A:collection/>
<B:calendar/>
</A:resourcetype>
<B:supported-calendar-component-set>
<B:comp name="VEVENT"/>
<B:comp name="VTODO"/>
<B:comp name="VJOURNAL"/>
<B:comp name="VFREEBUSY"/>
<B:comp name="VAVAILABILITY"/>
</B:supported-calendar-component-set>
<B:supported-calendar-component-sets>
<B:comp name="VEVENT"/>
<B:comp name="VTODO"/>
<B:comp name="VJOURNAL"/>
<B:comp name="VFREEBUSY"/>
<B:comp name="VAVAILABILITY"/>
</B:supported-calendar-component-sets>
<A:supported-report-set>
<A:supported-report>
<A:report>
<A:expand-property/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<A:acl-principal-prop-set/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<A:sync-collection/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<B:calendar-query/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<B:calendar-multiget/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<B:free-busy-query/>
</A:report>
</A:supported-report>
</A:supported-report-set>
<A:sync-token>data:,1520951272-304</A:sync-token>
</A:prop>
<A:status>HTTP/1.1 200 OK</A:status>
</A:propstat>
</A:response>
<A:response>
<A:href>/dav/notifications/user/t...@domain.com/</A:href>
<A:propstat>
<A:prop>
<A:current-user-privilege-set>
<A:privilege>
<A:all/>
</A:privilege>
<A:privilege>
<A:read/>
</A:privilege>
<A:privilege>
<A:write/>
</A:privilege>
<A:privilege>
<A:write-content/>
</A:privilege>
<A:privilege>
<A:write-properties/>
</A:privilege>
<A:privilege>
<CY:write-properties-collection/>
</A:privilege>
<A:privilege>
<CY:write-properties-resource/>
</A:privilege>
<A:privilege>
<A:bind/>
</A:privilege>
<A:privilege>
<CY:make-collection/>
</>1521968738>A:privilege>
<A:privilege>
<CY:add-resource/>
</A:privilege>
<A:privilege>
<A:unbind/>
</A:privilege>
<A:privilege>
<CY:remove-collection/>
</A:privilege>
<A:privilege>
<CY:remove-resource/>
</A:privilege>
<A:privilege>
<CY:admin/>
</A:privilege>
</A:current-user-privilege-set>
<A:displayname><![CDATA[#notifications]]></A:displayname>
<C:getctag>1520951271-20</C:getctag>
<A:owner>
<A:href>/dav/principals/user/t...@domain.com/</A:href>
</A:owner>
<A:resourcetype>
<A:collection/>
<A:notifications/>
<C:notification/>
</A:resourcetype>
<A:supported-report-set>
<A:supported-report>
<A:report>
<A:expand-property/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<A:acl-principal-prop-set/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<A:sync-collection/>
</A:report>
</A:supported-report>
</A:supported-report-set>
<A:sync-token>data:,1520951271-20</A:sync-token>
</A:prop>
<A:status>HTTP/1.1 200 OK</A:status>
</A:propstat>
</A:response>
</A:multistatus>
---------- t...@domain.com Sun Mar 25 06:05:38 2018
<1521968738<PROPFIND /dav/principals/user/t3%40domain.com/ HTTP/1.1
Accept: */*
Content-type: text/xml
Connection: keep-alive
Content-length: 267
Host: mail.domain.com
User-agent: iOS/11.2.6 (15D100) dataaccessd/1.0
Prefer: return=minimal
Depth: 0
Brief: t
Accept-language: en-us
Authorization: Basic ...
Accept-encoding: br, gzip, deflate
<1521968738<<?xml version="1.0" encoding="UTF-8"?>
<A:propfind xmlns:A="DAV:">
<A:prop>
<B:calendar-user-address-set xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<A:displayname/>
<C:email-address-set xmlns:C="http://calendarserver.org/ns/"/>
</A:prop>
</A:propfind>
>1521968738>HTTP/1.1 207 Multi-Status
Date: Sun, 25 Mar 2018 09:05:38 GMT
Strict-Transport-Security: max-age=600
Vary: Accept-Encoding, Brief, Prefer
Preference-Applied: return=minimal
Content-Type: application/xml; charset=utf-8
Content-Length: 542
<?xml version="1.0" encoding="utf-8"?>
<A:multistatus xmlns:A="DAV:" xmlns:B="urn:ietf:params:xml:ns:caldav" xmlns:C="http://calendarserver.org/ns/">
<A:response>
<A:href>/dav/principals/user/t...@domain.com/</A:href>
<A:propstat>
<A:prop>
<B:calendar-user-address-set>
<A:href>mailto:t...@domain.com</A:href>
</B:calendar-user-address-set>
<A:displayname>t...@domain.com</A:displayname>
</A:prop>
<A:status>HTTP/1.1 200 OK</A:status>
</A:propstat>
</A:response>
</A:multistatus>
---------- t...@domain.com Sun Mar 25 06:05:38 2018
<1521968738<PROPFIND /dav/principals/user/t3%40domain.com/ HTTP/1.1
Accept: */*
Content-type: text/xml
Connection: keep-alive
Content-length: 267
Host: mail.domain.com
User-agent: iOS/11.2.6 (15D100) dataaccessd/1.0
Prefer: return=minimal
Depth: 0
Brief: t
Accept-language: en-us
Authorization: Basic ...
Accept-encoding: br, gzip, deflate
<1521968738<<?xml version="1.0" encoding="UTF-8"?>
<A:propfind xmlns:A="DAV:">
<A:prop>
<B:calendar-user-address-set xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<A:displayname/>
<C:email-address-set xmlns:C="http://calendarserver.org/ns/"/>
</A:prop>
</A:propfind>
>1521968738>HTTP/1.1 207 Multi-Status
Date: Sun, 25 Mar 2018 09:05:38 GMT
Strict-Transport-Security: max-age=600
Vary: Accept-Encoding, Brief, Prefer
Preference-Applied: return=minimal
Content-Type: application/xml; charset=utf-8
Content-Length: 542
<?xml version="1.0" encoding="utf-8"?>
<A:multistatus xmlns:A="DAV:" xmlns:B="urn:ietf:params:xml:ns:caldav" xmlns:C="http://calendarserver.org/ns/">
<A:response>
<A:href>/dav/principals/user/t...@domain.com/</A:href>
<A:propstat>
<A:prop>
<B:calendar-user-address-set>
<A:href>mailto:t...@domain.com</A:href>
</B:calendar-user-address-set>
<A:displayname>t...@domain.com</A:displayname>
</A:prop>
<A:status>HTTP/1.1 200 OK</A:status>
</A:propstat>
</A:response>
</A:multistatus>
<1521968742<PROPFIND /dav/calendars/user/t3%40domain.com/ HTTP/1.1
Host: mail.domain.com
Content-Type: text/xml
Depth: 1
Brief: t
Accept: */*
Connection: keep-alive
Prefer: return=minimal
User-Agent: iOS/11.2.6 (15D100) dataaccessd/1.0
Content-Length: 2217
Accept-Language: en-us
Accept-Encoding: br, gzip, deflate
<1521968742<<?xml version="1.0" encoding="UTF-8"?>
<A:propfind xmlns:A="DAV:">
<A:prop>
<A:add-member/>
<C:allowed-sharing-modes xmlns:C="http://calendarserver.org/ns/"/>
<E:autoprovisioned xmlns:E="http://apple.com/ns/ical/"/>
<F:bulk-requests xmlns:F="http://me.com/_namespace/"/>
<B:calendar-alarm xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<E:calendar-color xmlns:E="http://apple.com/ns/ical/"/>
<B:calendar-description xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<B:calendar-free-busy-set xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<E:calendar-order xmlns:E="http://apple.com/ns/ical/"/>
<B:calendar-timezone xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<A:current-user-privilege-set/>
<B:default-alarm-vevent-date xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<B:default-alarm-vevent-datetime xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<A:displayname/>
<C:getctag xmlns:C="http://calendarserver.org/ns/"/>
<C:invite xmlns:C="http://calendarserver.org/ns/"/>
<E:language-code xmlns:E="http://apple.com/ns/ical/"/>
<E:location-code xmlns:E="http://apple.com/ns/ical/"/>
<A:owner/>
<C:pre-publish-url xmlns:C="http://calendarserver.org/ns/"/>
<C:publish-url xmlns:C="http://calendarserver.org/ns/"/>
<C:push-transports xmlns:C="http://calendarserver.org/ns/"/>
<C:pushkey xmlns:C="http://calendarserver.org/ns/"/>
<A:quota-available-bytes/>
<A:quota-used-bytes/>
<E:refreshrate xmlns:E="http://apple.com/ns/ical/"/>
<A:resource-id/>
<A:resourcetype/>
<B:schedule-calendar-transp xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<B:schedule-default-calendar-URL xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<C:source xmlns:C="http://calendarserver.org/ns/"/>
<C:subscribed-strip-alarms xmlns:C="http://calendarserver.org/ns/"/>
<C:subscribed-strip-attachments xmlns:C="http://calendarserver.org/ns/"/>
<C:subscribed-strip-todos xmlns:C="http://calendarserver.org/ns/"/>
<B:supported-calendar-component-set xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<B:supported-calendar-component-sets xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<A:supported-report-set/>
<A:sync-token/>
</A:prop>
</A:propfind>
>1521968742>HTTP/1.1 207 Multi-Status
Date: Sun, 25 Mar 2018 09:05:42 GMT
Strict-Transport-Security: max-age=600
Vary: Accept-Encoding, Brief, Prefer
Preference-Applied: return=minimal
Content-Type: application/xml; charset=utf-8
Content-Length: 9412
<?xml version="1.0" encoding="utf-8"?>
<A:multistatus xmlns:A="DAV:" xmlns:C="http://calendarserver.org/ns/" xmlns:E="http://apple.com/ns/ical/" xmlns:F="http://me.com/_namespace/" xmlns:B="urn:ietf:params:xml:ns:caldav" xmlns:CY="http://cyrusimap.org/ns/">
<A:response>
<A:href>/dav/calendars/user/t...@domain.com/</A:href>
<A:propstat>
<A:prop>
<C:allowed-sharing-modes/>
<F:bulk-requests/>
<A:current-user-privilege-set>
<A:privilege>
<A:all/>
</A:privilege>
<A:privilege>
<A:read/>
</A:privilege>
<A:privilege>
<B:read-free-busy/>
</A:privilege>
<A:privilege>
<A:write/>
</A:privilege>
<A:privilege>
<A:write-content/>
</A:privilege>
<A:privilege>
<A:write-properties/>
</A:privilege>
<A:privilege>
<CY:write-properties-collection/>
</A:privilege>
<A:privilege>
<CY:write-properties-resource/>
</A:privilege>
<A:privilege>
<A:bind/>
</A:privilege>
<A:privilege>
<CY:make-collection/>
</A:privilege>
<A:privilege>
<CY:add-resource/>
</A:privilege>
<A:privilege>
<A:unbind/>
</A:privilege>
<A:privilege>
<CY:remove-collection/>
</A:privilege>
<A:privilege>
<CY:remove-resource/>
</A:privilege>
<A:privilege>
<CY:admin/>
</A:privilege>
</A:current-user-privilege-set>
<A:displayname><![CDATA[#calendars]]></A:displayname>
<C:invite/>
<A:owner>
<A:href>/dav/principals/user/t...@domain.com/</A:href>
</A:owner>
<A:quota-available-bytes>-37571</A:quota-available-bytes>
<A:quota-used-bytes>0</A:quota-used-bytes>
<A:resourcetype>
<A:collection/>
</A:resourcetype>
<A:supported-report-set>
<A:supported-report>
<A:report>
<A:expand-property/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<A:acl-principal-prop-set/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<A:sync-collection/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<B:calendar-query/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<B:calendar-multiget/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<B:free-busy-query/>
</A:report>
</A:supported-report>
</A:supported-report-set>
</A:prop>
<A:status>HTTP/1.1 200 OK</A:status>
</A:propstat>
</A:response>
<A:response>
<A:href>/dav/calendars/user/t...@domain.com/Default/</A:href>
<A:propstat>
<A:prop>
<A:add-member>
<A:href>/dav/calendars/user/t...@domain.com/Default/?action=add-member</A:href>
</A:add-member>
<C:allowed-sharing-modes>
<C:can-be-shared/>
</C:allowed-sharing-modes>
<F:bulk-requests>
<F:simple>
<F:max-resources/>
<F:max-bytes/>
</F:simple>
</F:bulk-requests>
<E:calendar-color><![CDATA[#1badf8]]></E:calendar-color>
<E:calendar-order><![CDATA[0]]></E:calendar-order>
<A:current-user-privilege-set>
<A:privilege>
<A:all/>
</A:privilege>
>1521968742> <A:privilege>
<A:read/>
</A:privilege>
<A:privilege>
<B:read-free-busy/>
</A:privilege>
<A:privilege>
<A:write/>
</A:privilege>
<A:privilege>
<A:write-content/>
</A:privilege>
<A:privilege>
<A:write-properties/>
</A:privilege>
<A:privilege>
<CY:write-properties-collection/>
</A:privilege>
<A:privilege>
<CY:write-properties-resource/>
</A:privilege>
<A:privilege>
<A:bind/>
</A:privilege>
<A:privilege>
<CY:make-collection/>
</A:privilege>
<A:privilege>
<CY:add-resource/>
</A:privilege>
<A:privilege>
<A:unbind/>
</A:privilege>
<A:privilege>
<CY:remove-collection/>
</A:privilege>
<A:privilege>
<CY:remove-resource/>
</A:privilege>
<A:privilege>
<CY:admin/>
</A:privilege>
</A:current-user-privilege-set>
<A:displayname><![CDATA[personal]]></A:displayname>
<C:getctag>1520951272-304</C:getctag>
<C:invite/>
<A:owner>
<A:href>/dav/principals/user/t...@domain.com/</A:href>
</A:owner>
<A:quota-available-bytes>-37571</A:quota-available-bytes>
<A:quota-used-bytes>28401</A:quota-used-bytes>
<A:resourcetype>
<A:collection/>
<B:calendar/>
</A:resourcetype>
<B:supported-calendar-component-set>
<B:comp name="VEVENT"/>
<B:comp name="VTODO"/>
<B:comp name="VJOURNAL"/>
<B:comp name="VFREEBUSY"/>
<B:comp name="VAVAILABILITY"/>
</B:supported-calendar-component-set>
<B:supported-calendar-component-sets>
<B:comp name="VEVENT"/>
<B:comp name="VTODO"/>
<B:comp name="VJOURNAL"/>
<B:comp name="VFREEBUSY"/>
<B:comp name="VAVAILABILITY"/>
</B:supported-calendar-component-sets>
<A:supported-report-set>
<A:supported-report>
<A:report>
<A:expand-property/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<A:acl-principal-prop-set/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<A:sync-collection/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<B:calendar-query/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<B:calendar-multiget/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<B:free-busy-query/>
</A:report>
</A:supported-report>
</A:supported-report-set>
<A:sync-token>data:,1520951272-304</A:sync-token>
</A:prop>
<A:status>HTTP/1.1 200 OK</A:status>
</A:propstat>
</A:response>
<A:response>
<A:href>/dav/notifications/user/t...@domain.com/</A:href>
<A:propstat>
<A:prop>
<A:current-user-privilege-set>
<A:privilege>
<A:all/>
</A:privilege>
<A:privilege>
<A:read/>
</A:privilege>
<A:privilege>
<A:write/>
</A:privilege>
<A:privilege>
<A:write-content/>
</A:privilege>
<A:privilege>
<A:write-properties/>
</A:privilege>
<A:privilege>
<CY:write-properties-collection/>
</A:privilege>
<A:privilege>
<CY:write-properties-resource/>
</A:privilege>
<A:privilege>
<A:bind/>
</A:privilege>
<A:privilege>
<CY:make-collection/>
</>1521968742>A:privilege>
<A:privilege>
<CY:add-resource/>
</A:privilege>
<A:privilege>
<A:unbind/>
</A:privilege>
<A:privilege>
<CY:remove-collection/>
</A:privilege>
<A:privilege>
<CY:remove-resource/>
</A:privilege>
<A:privilege>
<CY:admin/>
</A:privilege>
</A:current-user-privilege-set>
<A:displayname><![CDATA[#notifications]]></A:displayname>
<C:getctag>1520951271-20</C:getctag>
<A:owner>
<A:href>/dav/principals/user/t...@domain.com/</A:href>
</A:owner>
<A:resourcetype>
<A:collection/>
<A:notifications/>
<C:notification/>
</A:resourcetype>
<A:supported-report-set>
<A:supported-report>
<A:report>
<A:expand-property/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<A:acl-principal-prop-set/>
</A:report>
</A:supported-report>
<A:supported-report>
<A:report>
<A:sync-collection/>
</A:report>
</A:supported-report>
</A:supported-report-set>
<A:sync-token>data:,1520951271-20</A:sync-token>
</A:prop>
<A:status>HTTP/1.1 200 OK</A:status>
</A:propstat>
</A:response>
</A:multistatus>
---------- t...@domain.com Sun Mar 25 06:05:42 2018
<1521968742<PROPFIND /dav/principals/user/t3%40domain.com/ HTTP/1.1
Accept: */*
Content-type: text/xml
Connection: keep-alive
Content-length: 267
Host: mail.domain.com
User-agent: iOS/11.2.6 (15D100) dataaccessd/1.0
Prefer: return=minimal
Depth: 0
Brief: t
Accept-language: en-us
Authorization: Basic ...
Accept-encoding: br, gzip, deflate
<1521968742<<?xml version="1.0" encoding="UTF-8"?>
<A:propfind xmlns:A="DAV:">
<A:prop>
<B:calendar-user-address-set xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<A:displayname/>
<C:email-address-set xmlns:C="http://calendarserver.org/ns/"/>
</A:prop>
</A:propfind>
>1521968742>HTTP/1.1 207 Multi-Status
Date: Sun, 25 Mar 2018 09:05:42 GMT
Strict-Transport-Security: max-age=600
Vary: Accept-Encoding, Brief, Prefer
Preference-Applied: return=minimal
Content-Type: application/xml; charset=utf-8
Content-Length: 542
<?xml version="1.0" encoding="utf-8"?>
<A:multistatus xmlns:A="DAV:" xmlns:B="urn:ietf:params:xml:ns:caldav" xmlns:C="http://calendarserver.org/ns/">
<A:response>
<A:href>/dav/principals/user/t...@domain.com/</A:href>
<A:propstat>
<A:prop>
<B:calendar-user-address-set>
<A:href>mailto:t...@domain.com</A:href>
</B:calendar-user-address-set>
<A:displayname>t...@domain.com</A:displayname>
</A:prop>
<A:status>HTTP/1.1 200 OK</A:status>
</A:propstat>
</A:response>
</A:multistatus>
---------- t...@domain.com Sun Mar 25 06:05:42 2018
<1521968742<PROPFIND /dav/principals/user/t3%40domain.com/ HTTP/1.1
Accept: */*
Content-type: text/xml
Connection: keep-alive
Content-length: 267
Host: mail.domain.com
User-agent: iOS/11.2.6 (15D100) dataaccessd/1.0
Prefer: return=minimal
Depth: 0
Brief: t
Accept-language: en-us
Authorization: Basic ...
Accept-encoding: br, gzip, deflate
<1521968742<<?xml version="1.0" encoding="UTF-8"?>
<A:propfind xmlns:A="DAV:">
<A:prop>
<B:calendar-user-address-set xmlns:B="urn:ietf:params:xml:ns:caldav"/>
<A:displayname/>
<C:email-address-set xmlns:C="http://calendarserver.org/ns/"/>
</A:prop>
</A:propfind>
>1521968742>HTTP/1.1 207 Multi-Status
Date: Sun, 25 Mar 2018 09:05:42 GMT
Strict-Transport-Security: max-age=600
Vary: Accept-Encoding, Brief, Prefer
Preference-Applied: return=minimal
Content-Type: application/xml; charset=utf-8
Content-Length: 542
<?xml version="1.0" encoding="utf-8"?>
<A:multistatus xmlns:A="DAV:" xmlns:B="urn:ietf:params:xml:ns:caldav" xmlns:C="http://calendarserver.org/ns/">
<A:response>
<A:href>/dav/principals/user/t...@domain.com/</A:href>
<A:propstat>
<A:prop>
<B:calendar-user-address-set>
<A:href>mailto:t...@domain.com</A:href>
</B:calendar-user-address-set>
<A:displayname>t...@domain.com</A:displayname>
</A:prop>
<A:status>HTTP/1.1 200 OK</A:status>
</A:propstat>
</A:response>
</A:multistatus>
----
Cyrus Home Page: http://www.cyrusimap.org/
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
To Unsubscribe:
https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus