Skip to content

Sharing a Public Calendar with a Circle, breaks the public sharing. #508

@m4us1ne

Description

@m4us1ne

This issue is on Bountysource

Steps to reproduce

  1. Publish a Calendar with a public link.
  2. Share the same Calendar with a Circle
  3. The previously generated URL stops working and freshly generated URLS dont work aswell. ( only affects Users that are not logged in)

Expected behaviour

Sharing a Calendar with a Circle shouldnt change the Public Link that was generated.

Actual behaviour

The Public Link is unavailable and an Error is thrown.
TypeError: Argument 2 passed to OCA\Circles\Db\CirclesRequest::getCircle() must be of the type string, null given, called in /var/www/html/apps/circles/lib/Service/CirclesService.php on line 271
Updating from 19.0.1 to 19.0.2 didnt change behaviour.

Server configuration

Operating system:

Linux 4.18.0-147.3.1.el8_1.x86_64 x86_64

Web server:
Apache/2.4.37 (centos)

Database:
Type: mysql
Version: 10.3.17

PHP version:
7.4.9

Nextcloud version: (see Nextcloud admin page)
19.0.2
Updated from an older Nextcloud/ownCloud or fresh install:
updated from 19.0.1
Where did you install Nextcloud from:
Online Updater.
Signing status:

Signing status
Login as admin user into your Nextcloud and access 
http://example.com/index.php/settings/integrity/failed 
paste the results here.

No errors have been found.

List of activated apps:

Accessibility 1.5.0 Activity 2.12.0 Admin Resource Booking Management 0.0.1 AppOrder 0.10.0 Breeze Dark 19.0.4 Brute-force settings 2.0.1 Calendar 2.0.4 Circles 0.19.5 Collaborative tags 1.9.0 Comments 1.9.0 Contacts 3.3.0 Contacts Interaction 1.0.0 Deck 1.0.5 Deleted files 1.9.0 Draw.io 0.9.7 Federation 1.9.0 File sharing 1.11.0 First run wizard 2.8.0 Forms 2.0.3 Log Reader 2.4.0 Mind Map 0.0.22 Monitoring 1.9.0 Nextcloud announcements 1.8.0 Notifications 2.7.0 ONLYOFFICE 4.3.0 Password policy 1.9.1 PDF viewer 1.8.0 Photos 1.1.0 Polls 1.4.3 Privacy 1.3.0 Recommendations 0.7.0 Right click 0.16.0 Share by mail 1.9.0 SSO & SAML authentication 3.1.2 Support 1.2.1 Talk 9.0.3 Tasks 0.13.3 Text 3.0.1 Update notification 1.9.0 Usage survey 1.7.0 Versions 1.12.0 Video player 1.8.0
```

Are you using external storage, if yes which one: local/smb/sftp/...
No

Are you using encryption: yes/no
No

Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/...
No, but an SSO-Provider

Client configuration

Browser:
Chromium 85.0.4183.59 and ,Firefox 80.0, latest Safari

Operating system:
Ubuntu 20.04 , macOS Catalina

Logs

[webdav] Fatal: TypeError: Argument 2 passed to OCA\Circles\Db\CirclesRequest::getCircle() must be of the type string, null given, called in /var/www/html/apps/circles/lib/Service/CirclesService.php on line 271 at <>

  1. /var/www/html/apps/circles/lib/Service/CirclesService.php line 271
    OCA\Circles\Db\CirclesRequest->getCircle("facfd76513c24b", null, 1, "", true)
  2. /var/www/html/apps/circles/lib/Api/v1/Circles.php line 266
    OCA\Circles\Service\CirclesService->detailsCircle("facfd76513c24b", true)
  3. /var/www/html/apps/dav/lib/Connector/Sabre/Principal.php line 480
    OCA\Circles\Api\v1\Circles::detailsCircle("facfd76513c24b", true)
  4. /var/www/html/apps/dav/lib/Connector/Sabre/Principal.php line 178
    OCA\DAV\Connector\Sabre\Principal->circleToPrincipal("facfd76513c24b")
  5. /var/www/html/apps/dav/lib/DAV/Sharing/Backend.php line 200
    OCA\DAV\Connector\Sabre\Principal->getPrincipalByPath("principals/circles/facfd76513c24b")
  6. /var/www/html/apps/dav/lib/DAV/Sharing/Backend.php line 222
    OCA\DAV\DAV\Sharing\Backend->getShares("44")
  7. /var/www/html/apps/dav/lib/CalDAV/CalDavBackend.php line 2378
    OCA\DAV\DAV\Sharing\Backend->applyShareAcl("44", [{privilege: "{D ... }])
  8. /var/www/html/apps/dav/lib/CalDAV/Calendar.php line 221
    OCA\DAV\CalDAV\CalDavBackend->applyShareAcl("44", [{privilege: "{D ... }])
  9. /var/www/html/3rdparty/sabre/dav/lib/DAVACL/Plugin.php line 576
    OCA\DAV\CalDAV\Calendar->getACL()
  10. /var/www/html/3rdparty/sabre/dav/lib/DAVACL/Plugin.php line 606
    Sabre\DAVACL\Plugin->getAcl(OCA\DAV\CalDAV\PublicCalendar {})
  11. /var/www/html/3rdparty/sabre/dav/lib/DAVACL/Plugin.php line 199
    Sabre\DAVACL\Plugin->getCurrentUserPrivilegeSet(OCA\DAV\CalDAV\PublicCalendar {})
  12. /var/www/html/apps/dav/lib/Connector/Sabre/DavAclPlugin.php line 53
    Sabre\DAVACL\Plugin->checkPrivileges("public-calendars/3s4Laxcw4qjtJegK", ["{DAV:}read"], 1, false)
  13. /var/www/html/apps/dav/lib/Connector/Sabre/DavAclPlugin.php line 83
    OCA\DAV\Connector\Sabre\DavAclPlugin->checkPrivileges("public-calendars/3s4Laxcw4qjtJegK", "{DAV:}read", 1, false)
  14. /var/www/html/3rdparty/sabre/event/lib/WildcardEmitterTrait.php line 89
    OCA\DAV\Connector\Sabre\DavAclPlugin->propFind(Sabre\DAV\PropFind {}, OCA\DAV\CalDAV\PublicCalendar {})
  15. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 1063
    Sabre\DAV\Server->emit("propFind", [Sabre\DAV\PropF ... }])
  16. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 989
    Sabre\DAV\Server->getPropertiesByNode(Sabre\DAV\PropFind {}, OCA\DAV\CalDAV\PublicCalendar {})
  17. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 1678
    Sabre\DAV\Server->getPropertiesIteratorForPath("public-calendars/3s4Laxcw4qjtJegK", ["{DAV:}getconte ... "], 0)
  18. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 1661
    Sabre\DAV\Server->writeMultiStatus(Sabre\Xml\Writer ... ]}, Generator {}, false)
  19. /var/www/html/3rdparty/sabre/dav/lib/DAV/CorePlugin.php line 363
    Sabre\DAV\Server->generateMultiStatus(Generator {}, false)
  20. /var/www/html/3rdparty/sabre/event/lib/WildcardEmitterTrait.php line 89
    Sabre\DAV\CorePlugin->httpPropFind(Sabre\HTTP\Request {}, Sabre\HTTP\Response {})
  21. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 474
    Sabre\DAV\Server->emit("method:PROPFIND", [Sabre\HTTP\Requ ... }])
  22. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 251
    Sabre\DAV\Server->invokeMethod(Sabre\HTTP\Request {}, Sabre\HTTP\Response {})
  23. /var/www/html/3rdparty/sabre/dav/lib/DAV/Server.php line 319
    Sabre\DAV\Server->start()
  24. /var/www/html/apps/dav/lib/Server.php line 320
    Sabre\DAV\Server->exec()
  25. /var/www/html/apps/dav/appinfo/v2/remote.php line 35
    OCA\DAV\Server->exec()
  26. /var/www/html/remote.php line 167
    require_once("/var/www/html/a ... p")

PROPFIND /remote.php/dav/public-calendars/3s4Laxcw4qjtJegK
from 46.223.163.50 at 2020-08-31T14:19:08+00:00

Insert your browser log here, this could for example include:
request.js:339 PROPFIND https://example.org/remote.php/dav/public-calendars/3s4Laxcw4qjtJegK 500 (Internal Server Error)

Network-log.log

screenshot

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions