nextcloud / nextcloud/ios

[Bug]: Nextcloud-iOS/4.7.0 Search not working with LDAP User

Open
#2,376 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Swift
Stars
2.5k
Forks
1k
Avg merge
2d 18h
Merged PRs (30d)
13

Description

Steps to reproduce
  1. Use Nextcloud Server 25.0.4
  2. Use LDAP user backend
  3. Use Nextcloud-iOS/4.7.0
Expected behaviour

Search should list files.

Actual behaviour

App get stuck in "search in progress".

Problem is related to Nextcloud Server and User DB via LDAP.
You search for eg. "apfel", the ios app use searchprovider for files and get back some files.
Next the app tries to PROPFIND one of this files, but instead using the LDAP "uid" (or nextcloud uid for the LDAP user) it uses the "name". Because there is no file, it get back a http/404 and no of the search results is presented.
If I use nextcloud server without LDAP Backend (local user), this is not a problem.
See Logs below.

Logs

Search request and failed (http/404) PROPFIND for first search result.
ios App switchs from ...dav/files/069e27e2-aebd-1030-94bc-fb0f24389eba/Exchange... to ...dav/files/user/Exchange...

192.168.7.4 - user [15/Mar/2023:15:52:47 +0100] "GET /nextcloud/ocs/v2.php/search/providers/files/search?term=apfel HTTP/1.0" 200 1435 "-" "Mozilla/5.0 (iOS) Nextcloud-iOS/4.7.0"
192.168.7.4 - user [15/Mar/2023:15:52:47 +0100] "PROPFIND /nextcloud/remote.php/dav/files/user/Exchange/rezepte/backen/Apfelstrudel%20Galette.pdf HTTP/1.0" 404 1086 "-" "Mozilla/5.0 (iOS) Nextcloud-iOS/4.7.0"

but file is available under .../files//Exchange/....

192.168.7.4 - user [15/Mar/2023:15:55:57 +0100] "GET /nextcloud/remote.php/dav/files/069e27e2-aebd-1030-94bc-fb0f24389eba/Exchange/rezepte/backen/Apfelstrudel%20Galette.pdf HTTP/1.0" 200 3588947 "-" "Mozilla/5.0 (iOS) Nextcloud-iOS/4.7.0"

With Android and Browser/Chrome it's working fine, because both aren't call a PROPFIND after search ...providers/files/search?term=apfel.

Have attached a screenshot of the LDAP user list.
ldap user list

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

Reproduce the search flow with Nextcloud Server 25.0.4, an LDAP user, and Nextcloud-iOS 4.7.0, then trace how the file-search response is used for the follow-up PROPFIND. Compare the LDAP UID and name in the logged DAV paths; done means search results load instead of stalling after a 404.

Written by the indexing model from the issue text.

Assessment

Tech stack
ios, swift
Domain
mobile, search
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.