nextcloud / nextcloud/server

[Bug]: `calendar-access` missing from `DAV` header on

Open
#37,374 7 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

0. Needs triage 25-feedback bug feature: caldav feature: carddav feature: dav
Dominant language
PHP
Stars
36.9k
Forks
5.2k
Avg merge
2d 3h
Merged PRs (30d)
713

Description

⚠️ This issue respects the following points: ⚠️
  • This is a bug, not a question or a configuration/webserver/proxy issue.
  • This issue is not already reported on Github (I've searched it).
  • Nextcloud Server is up to date. See Maintenance and Release Schedule for supported versions.
  • Nextcloud Server is running on 64bit capable CPU, PHP and OS.
  • I agree to follow Nextcloud's Code of Conduct.
Bug description

I'm writing a function to check whether a given URL corresponds to a server supporting CALDAV or not. For this, I'm checking the DAV URL as specified in rfc4791#section-5.1:

A server supporting the features described in this document MUST
include "calendar-access" as a field in the DAV response header from
an OPTIONS request on any resource that supports any calendar
properties, reports, method, or privilege. A value of "calendar-
access" in the DAV response header MUST indicate that the server
supports all MUST level requirements specified in this document.

The URL (https://example.com/remote.php/dav) does support calendar access; I can successfully use REPORT to fetch calendar resources and PROPFIND to enumerate calendar resources and collections, so I'm quite sure I have the right URL.

Steps to reproduce
  1. Send an OPTIONS http request.
Expected behavior

The DAV header should contain calendar-access.

Installation method

Other Community project

I don't have access to the server installation; I only have a test account which someone is lending me to test NextCloud support. As such, I don't have most of the below details.

Operating system

Other

PHP engine version

Other

Web server

Other

Database engine version

Other

Is this bug present after an update or on a fresh install?

None

Are you using the Nextcloud Server Encryption module?

Encryption is Disabled

What user-backends are you using?
  • Default user-backend (database)
  • LDAP/ Active Directory
  • SSO - SAML
  • Other
Configuration report

No response

List of activated Apps

No response

Nextcloud Signing status

No response

Nextcloud Logs

No response

Additional info

Version from the about screen:

image

(I'm not entirely sure why, but text selection for copy-pasting was not possible).

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.

Research direction

Start by reproducing an OPTIONS request against the mentioned remote.php/dav entry point and inspect how its DAV response header is assembled. Compare the response with the RFC requirement and the existing calendar REPORT and PROPFIND behavior; done means the header includes calendar-access for a resource supporting calendar access.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
api, backend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.