nextcloud / nextcloud/server

Caldav sync for iOS does not work for usernames containing spaces

Open
#15,641 30 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

Steps to reproduce
  1. Create a user containing a space character like "Test Space"
  2. Try to add caldav account on iOS
Expected behaviour

Account is created and caldav syncs happily

Actual behaviour

Nothing ("sync via SSL is not possible" which is not correct)

For a user called "TestSpace" everything works as expected.

This issue looks like the issue reported in https://github.com/nextcloud/server/issues/6192#issuecomment-447655559, but as it is just a comment there and the issue has already been closed, I thought to open a new one.

Server configuration

Operating system: Ubuntu 16.04.6 LTS

Web server: Apache/2.4.18 (Ubuntu)

Database: mysql Ver 15.1 Distrib 10.0.38-MariaDB

PHP version: PHP 7.0.33-0ubuntu0.16.04.4

Nextcloud version: 15.0.8

Updated from an older Nextcloud/ownCloud or fresh install: updated

Where did you install Nextcloud from: nextcloud.com

Signing status:

Signing status
No errors have been found.

List of activated apps:

App list
Enabled:
  - accessibility: 1.1.0
  - activity: 2.8.2
  - announcementcenter: 3.4.1
  - apporder: 0.6.0
  - calendar: 1.6.5
  - circles: 0.16.5
  - cloud_federation_api: 0.1.0
  - comments: 1.5.0
  - contacts: 3.1.1
  - dav: 1.8.2
  - deck: 0.6.2
  - external: 3.2.0
  - federatedfilesharing: 1.5.0
  - federation: 1.5.0
  - files: 1.10.0
  - files_automatedtagging: 1.5.0
  - files_pdfviewer: 1.4.0
  - files_rightclick: 0.13.0
  - files_sharing: 1.7.0
  - files_texteditor: 2.7.0
  - files_trashbin: 1.5.0
  - files_versions: 1.8.0
  - files_videoplayer: 1.4.0
  - firstrunwizard: 2.4.0
  - gallery: 18.2.0
  - group_everyone: 0.1.2
  - groupfolders: 3.0.2
  - impersonate: 1.2.0
  - logreader: 2.0.0
  - lookup_server_connector: 1.3.0
  - nextcloud_announcements: 1.4.0
  - notifications: 2.3.0
  - oauth2: 1.3.0
  - password_policy: 1.5.0
  - provisioning_api: 1.5.0
  - serverinfo: 1.5.0
  - sharebymail: 1.5.0
  - spreed: 5.0.3
  - survey_client: 1.3.0
  - systemtags: 1.5.0
  - tasks: 0.10.1
  - theming: 1.6.0
  - twofactor_backupcodes: 1.4.1
  - twofactor_totp: 2.1.2
  - updatenotification: 1.5.0
  - user_usage_report: 1.1.1
  - workflow_pdf_converter: 1.0.1
  - workflow_script: 1.0.1
  - workflowengine: 1.5.0
Disabled:
  - admin_audit
  - encryption
  - files_external
  - support
  - user_ldap

Nextcloud configuration:

Config report
{
    "system": {
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "DOMAIN.de"
        ],
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "overwrite.cli.url": "https:\/\/DOMAIN.de\/nextcloud",
        "htaccess.RewriteBase": "\/",
        "dbtype": "mysql",
        "version": "15.0.8.1",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbport": "",
        "dbtableprefix": "oc_",
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": true,
        "memcache.local": "\\OC\\Memcache\\APCu",
        "mail_smtpmode": "sendmail",
        "mail_smtpauthtype": "LOGIN",
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "updater.release.channel": "beta",
        "skeletondirectory": "\/var\/www\/default-files",
        "maintenance": false,
        "loglevel": 2,
        "theme": "",
        "mysql.utf8mb4": true
    }
}

Are you using external storage, if yes which one: no

Are you using encryption: no

Are you using an external user-backend, if yes which one: no

Client configuration

Browser:

Operating system: iOS 12.2

Logs
Web server error log
Web server error log
No corresponding webserver log (logs only for user without space)
Nextcloud log (data/nextcloud.log)
Nextcloud log
No corresponding nextcloud log-entries
Browser log
Browser log
Insert your browser log here, this could for example include:

a) The javascript console log
b) The network log
c) ...

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 at the CalDAV account setup and sync path, comparing a username containing a space with the working “TestSpace” case on the reported Nextcloud 15 and iOS setup. Inspect the request and server response during account creation; done means iOS can create the account and synchronize successfully for usernames with spaces.

Written by the indexing model from the issue text.

Assessment

Tech stack
ios, php
Domain
api, backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.