nextcloud / nextcloud/server

[Bug]: Calendar invitation does not work when the default calendar URI is encoded

Open
#40,512 2 comments 0 reactions 1 assignee View on GitHub

@kesselb is already working on this.

Since Sep 19, 2023.

1. to develop 28-feedback bug feature: caldav
Dominant language
PHP
Stars
36.9k
Forks
5.2k
Avg merge
2d 3h
Merged PRs (30d)
713

Description

Bug description

Calendar invitation does not work when the default calendar URI is encoded.

<?xml version="1.0" encoding="utf-8"?>
<d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns">
  <s:exception>Sabre\DAV\Exception\NotFound</s:exception>
  <s:message>Node with name 'pers%c3%b6nlich' could not be found</s:message>
</d:error>
Steps to reproduce
  1. Login as admin
  2. Create new user account bob (don't login yet)
  3. Run occ dav:create-calendar bob persönlich
  4. Login as bob (to finish the setup)
  5. Login as admin
  6. Create event and invite bob
  7. 💥
Expected behavior

The calendar invitation should be delivered 😎

Additional info

Possible solutions:

  • Return Href instead LocalHref: Should work, but all other handlers also return LocalHref and therefore that quirks.
  • Let our caldavbackend decode the uris. Not a good solution either because typically the data is decoded. I believe this opens the door for weird bugs.
  • Fix it upstream in scheduleLocalDelivery.
  • Don't allow umlauts. Unclear if there is a way to tell a caldav client that we do not accept the given uri.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.