diff --git a/inc/DAVPrincipal.php b/inc/DAVPrincipal.php index 661e5d8a..36b57b59 100644 --- a/inc/DAVPrincipal.php +++ b/inc/DAVPrincipal.php @@ -501,6 +501,10 @@ class DAVPrincipal extends Principal case 'http://calendarserver.org/ns/:group-membership': case 'DAV::group-membership': + if ( $request->IsProxyRequest() ) { + /* the calendar-proxy-{read,write} pseudo-principal should not be a member of any group */ + return false; + } $reply->DAVElement( $prop, 'group-membership', $reply->href($this->GroupMembership()) ); break; diff --git a/testing/tests/regression-suite/0525-iCal-PROPFIND.result b/testing/tests/regression-suite/0525-iCal-PROPFIND.result index ee40da1b..103af53e 100644 --- a/testing/tests/regression-suite/0525-iCal-PROPFIND.result +++ b/testing/tests/regression-suite/0525-iCal-PROPFIND.result @@ -2,8 +2,8 @@ HTTP/1.1 207 Multi-Status Date: Dow, 01 Jan 2000 00:00:00 GMT DAV: 1, 2, 3, access-control, calendar-access, calendar-schedule DAV: extended-mkcol, bind, addressbook, calendar-auto-schedule, calendar-proxy -ETag: "5712eb30f86b6a9755a688c43b4bb763" -Content-Length: 1477 +ETag: "5379cc33938a9b800403f94bdfec0571" +Content-Length: 1091 Content-Type: text/xml; charset="utf-8" @@ -23,15 +23,6 @@ Content-Type: text/xml; charset="utf-8" /caldav.php/user1/ /caldav.php/assistant1/ - - /caldav.php/assistant1/ - /caldav.php/teamclient1/ - /caldav.php/user1/ - /caldav.php/user1/calendar-proxy-read/ - /caldav.php/assistant1/calendar-proxy-read/ - /caldav.php/resource1/calendar-proxy-read/ - /caldav.php/resource2/calendar-proxy-read/ - /caldav.php/user1/ /caldav.php/assistant1/ @@ -45,6 +36,7 @@ Content-Type: text/xml; charset="utf-8" + HTTP/1.1 404 Not Found