Skip to content

[Bug]: Upload folder (drag and drop (windows)) to public link fails #51806

@Duncan-Young

Description

@Duncan-Young

⚠️ This issue respects the following points: ⚠️

Bug description

I normally can drag a folder from windows explorer to an open web page in nextcloud (files) and the folder will be uploaded.
If I try to do this with a public link (full permissions/no password) It fails with error messages.

Steps to reproduce

  1. Create public link.
  2. Modify permissions to read, create, edit, delete (i.e. can edit)
  3. Copy link address
  4. paste into another browser.
  5. drag a folder from windows explorer to the the public share.
  6. fail
  7. errors :unable to create the directory "my dragged folder", but also "files uploaded successfully".
    reported in log reader
  8. copying individual files works, as does using the menus option "new->upload folders"

Expected behavior

I would expect the behavior to be the same as for a non-public folder i.e. the folder and its contents are uploaded.

Nextcloud Server version

31

Operating system

Other

PHP engine version

PHP 8.3

Web server

Nginx

Database engine version

MySQL

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

{
    "system": {
        "apps_paths": [
            {
                "path": "\/usr\/local\/www\/nextcloud\/apps",
                "url": "\/apps",
                "writable": true
            },
            {
                "path": "\/usr\/local\/www\/nextcloud\/apps-pkg",
                "url": "\/apps-pkg",
                "writable": false
            }
        ],
        "logfile": "\/var\/log\/nextcloud\/nextcloud.log",
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "***REMOVED SENSITIVE VALUE***",
            "***REMOVED SENSITIVE VALUE***"
        ],
        "trusted_proxies": "***REMOVED SENSITIVE VALUE***",
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "dbtype": "mysql",
        "version": "31.0.2.1",
        "overwritehost": "***REMOVED SENSITIVE VALUE***",
        "overwrite.cli.url": "https:\/\/***REMOVED SENSITIVE VALUE***",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbport": "",
        "dbtableprefix": "oc_",
        "default_phone_region": "AU",
        "mysql.utf8mb4": true,
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": true,
        "filelocking.enabled": "true",
        "memcache.local": "\\OC\\Memcache\\APCu",
        "memcache.locking": "\\OC\\Memcache\\Redis",
        "memcache.distributed": "\\OC\\Memcache\\Redis",
        "redis": {
            "host": "***REMOVED SENSITIVE VALUE***",
            "port": 0,
            "dbindex": 0,
            "password": "***REMOVED SENSITIVE VALUE***",
            "timeout": 1.5
        },
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpmode": "smtp",
        "mail_sendmailmode": "smtp",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpport": "25",
        "app_install_overwrite": {
            "0": "dicomviewer",
            "1": "calendar",
            "2": "epubreader",
            "3": "bruteforcesettings",
            "4": "caniupdate",
            "5": "files_texteditor",
            "6": "drawio",
            "7": "apporder",
            "8": "files_markdown",
            "9": "groupfolders",
            "11": "files_external_dropbox",
            "12": "camerarawpreviews",
            "13": "checksum",
            "14": "cookbook",
            "15": "side_menu",
            "16": "duplicatefinder",
            "17": "maps",
            "18": "files_rightclick",
            "19": "timemanager",
            "20": "video_converter",
            "22": "files_accesscontrol"
        },
        "loglevel": 1,
        "maintenance": false,
        "maintenance_window_start": 12,
        "simpleSignUpLink.shown": false,
        "theme": "",
        "RequestOptions::TIMEOUT": 120,
        "memories.exiftool_no_local": true,
        "memories.vod.path": "\/usr\/local\/www\/nextcloud\/apps\/memories\/bin-ext\/go-vod-amd64",
        "memories.vod.ffmpeg": "\/usr\/local\/bin\/ffmpeg",
        "memories.vod.ffprobe": "\/usr\/local\/bin\/ffprobe"
    }
}

List of activated Apps

Enabled:
  - activity: 4.0.0
  - admin_audit: 1.21.0
  - app_api: 5.0.2
  - apporder: 0.15.0
  - bookmarks: 15.1.0
  - bruteforcesettings: 4.0.0
  - calendar: 5.2.0
  - camerarawpreviews: 0.8.6
  - checksum: 1.2.6
  - circles: 31.0.0
  - cloud_federation_api: 1.14.0
  - comments: 1.21.0
  - contacts: 7.0.4
  - contactsinteraction: 1.12.0
  - cookbook: 0.11.3
  - cospend: 3.0.11
  - dashboard: 7.11.0
  - dav: 1.33.0
  - deck: 1.15.0
  - drawio: 3.0.4
  - federatedfilesharing: 1.21.0
  - federation: 1.21.0
  - files: 2.3.1
  - files_downloadlimit: 4.0.0
  - files_external: 1.23.0
  - files_markdown: 2.4.1
  - files_pdfviewer: 4.0.0
  - files_reminders: 1.4.0
  - files_sharing: 1.23.1
  - files_texteditor: 2.15.1
  - files_trashbin: 1.21.0
  - files_versions: 1.24.0
  - fileslibreofficeedit: 2.0.1
  - firstrunwizard: 4.0.0
  - gpoddersync: 3.12.0
  - gpxpod: 7.0.4
  - group_default_quota: 0.1.11
  - groupfolders: 19.0.4
  - imageconverter: 2.0.5
  - integration_dropbox: 3.1.0
  - integration_google: 3.2.0
  - integration_onedrive: 3.3.1
  - integration_reddit: 2.0.5
  - logreader: 4.0.0
  - lookup_server_connector: 1.19.0
  - mail: 4.3.1
  - maps: 1.5.0
  - memories: 7.5.2
  - music: 2.1.2
  - nextcloud_announcements: 3.0.0
  - nextpod: 0.7.7
  - notes: 4.11.0
  - notifications: 4.0.0
  - notify_push: 1.0.0
  - oauth2: 1.19.1
  - password_policy: 3.0.0
  - photos: 4.0.0-dev.1
  - previewgenerator: 5.8.0
  - privacy: 3.0.0
  - profile: 1.0.0
  - provisioning_api: 1.21.0
  - qownnotesapi: 25.2.0
  - quota_warning: 1.21.0
  - recognize: 9.0.0
  - recommendations: 4.0.0
  - related_resources: 2.0.0
  - repod: 3.5.6
  - serverinfo: 3.0.0
  - settings: 1.14.0
  - sharebymail: 1.21.0
  - side_menu: 4.1.1
  - spreed: 21.0.1
  - support: 3.0.0
  - systemtags: 1.21.1
  - tasks: 0.16.1
  - text: 5.0.0
  - theming: 2.6.1
  - timemanager: 0.3.18
  - twofactor_backupcodes: 1.20.0
  - twofactor_totp: 13.0.0-dev.0
  - twofactor_webauthn: 2.1.0
  - updatenotification: 1.21.0
  - user_status: 1.11.0
  - viewer: 4.0.0
  - weather_status: 1.11.0
  - webhook_listeners: 1.2.0
  - workflowengine: 2.13.0
Disabled:
  - dicomviewer: 2.3.0 (installed 2.3.0)
  - duplicatefinder: 1.6.0 (installed 0.0.11)
  - encryption: 2.19.0
  - epubreader: 1.4.7 (installed 1.4.7)
  - files_accesscontrol: 2.0.0 (installed 2.0.0)
  - files_rightclick: 0.15.1 (installed 0.15.1)
  - groupfolders.bak: 9.0.2
  - groupfolders_10.0.0-beta: 10.0.0-beta1
  - survey_client: 3.0.0 (installed 1.7.0)
  - suspicious_login: 9.0.1 (installed 7.0.0)
  - twofactor_nextcloud_notification: 5.0.0
  - user_ldap: 1.22.0
  - video_converter: 1.0.6 (installed 1.0.6)

Nextcloud Signing status

Technical information
=====================
The following list covers which files have failed the integrity check. Please read
the previous linked documentation to learn more about the errors and how to fix
them.

Results
=======
- core
	- INVALID_HASH
		- .htaccess
	- EXTRA_FILE
		- 3rdparty/cweagans/composer-patches/LICENSE.md.pkgsave
		- 3rdparty/cweagans/composer-patches/src/PatchEvents.php.pkgsave
		- 3rdparty/cweagans/composer-patches/src/PatchEvent.php.pkgsave
		- 3rdparty/doctrine/dbal/src/SQL/Parser/Exception.php.pkgsave
		- 3rdparty/doctrine/dbal/src/SQL/Parser/Exception/RegularExpressionError.php.pkgsave
		- 3rdparty/doctrine/deprecations/lib/Doctrine/Deprecations/PHPUnit/VerifyDeprecations.php.pkgsave
		- .htaccess.dist

Raw output
==========
Array
(
    [core] => Array
        (
            [INVALID_HASH] => Array
                (
                    [.htaccess] => Array
                        (
                            [expected] => 11fa1c20bce060406cf3f1dadc2f352fc3366fc1e8f4869c63f14312b14f35637e7823072295f810355527cce160b90463de9108ee9167d439b72a140a858b18
                            [current] => a8bc695a8fc167f325a305cb0c383e650573494640a06b4a50ad11aff7ca29d5cc855a818c1c489da6d453f895548a70268222cf5c82474bf7bdc1a47c4ac6cc
                        )

                )

            [EXTRA_FILE] => Array
                (
                    [3rdparty/cweagans/composer-patches/LICENSE.md.pkgsave] => Array
                        (
                            [expected] => 
                            [current] => bdcd4b7ca97e134e0c17867ed745797b406ef7341506ae4218357a9a1b3f63166081c57579350840dcc6556bee5b96b5b22c96cb0a2a7b7ad52ebc5c403fe254
                        )

                    [3rdparty/cweagans/composer-patches/src/PatchEvents.php.pkgsave] => Array
                        (
                            [expected] => 
                            [current] => 0b57c8f1df2851883bf88e7a9216d9bb3723e28a1788ad4d93e5561c78ed7b41ded41b6020842cccd63fe973d03c918fb3ad2d9c974832cb4eeae31b06eef4af
                        )

                    [3rdparty/cweagans/composer-patches/src/PatchEvent.php.pkgsave] => Array
                        (
                            [expected] => 
                            [current] => fcdbfad09fdf1802eac3fdfd4e1a27a5fe6ab2fa27be4db7146277a38617b09dee99a6a1f78e79baff1a88cc3277d43f5ccb1e4049f698fceff117c5e4f53f62
                        )

                    [3rdparty/doctrine/dbal/src/SQL/Parser/Exception.php.pkgsave] => Array
                        (
                            [expected] => 
                            [current] => d0ef0bf0bbe97817e6a99a3160c8b94614f509b8447df5667975832d039e1039368c1a9e542aeb0e4e666c77e57853ed148032775910af37c42aac7ae276eab4
                        )

                    [3rdparty/doctrine/dbal/src/SQL/Parser/Exception/RegularExpressionError.php.pkgsave] => Array
                        (
                            [expected] => 
                            [current] => f88aa3127dc96da4bfeb7450d1afa001a512baac5367a4860b2fb8d05fa0f943c6d89bf26220e8413659d1905fd5435ff0727d9f014325667d5dce106db044ec
                        )

                    [3rdparty/doctrine/deprecations/lib/Doctrine/Deprecations/PHPUnit/VerifyDeprecations.php.pkgsave] => Array
                        (
                            [expected] => 
                            [current] => 0bd55608bf7452e793b67ea4cdaec736f10f204ab74277892a1bbfa21c0aaadad499b6e5033aedb80eb5bdf0e66ed21b0c5709247ec02e495f2719a7ae80885e
                        )

                    [.htaccess.dist] => Array
                        (
                            [expected] => 
                            [current] => 11fa1c20bce060406cf3f1dadc2f352fc3366fc1e8f4869c63f14312b14f35637e7823072295f810355527cce160b90463de9108ee9167d439b72a140a858b18
                        )

                )

        )

)

Nextcloud Logs

{"reqId":"8xEayc3GtNNoSCOHYt6i","level":3,"time":"2025-03-31T04:49:32+00:00","remoteAddr":"10.0.10.2","user":false,"app":"webdav","method":"PROPFIND","url":"/public.php/dav/files","message":"Sabre\\DAV\\Exception\\NotFound: ","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:136.0) Gecko/20100101 Firefox/136.0","version":"31.0.2.1","exception":{"Exception":"Sabre\\DAV\\Exception\\ServiceUnavailable","Message":"Sabre\\DAV\\Exception\\NotFound: ","Code":0,"Trace":[{"file":"/usr/local/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Auth/Plugin.php","line":179,"function":"check","class":"OCA\\DAV\\Connector\\Sabre\\PublicAuth","type":"->"},{"file":"/usr/local/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Auth/Plugin.php","line":135,"function":"check","class":"Sabre\\DAV\\Auth\\Plugin","type":"->"},{"file":"/usr/local/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"beforeMethod","class":"Sabre\\DAV\\Auth\\Plugin","type":"->"},{"file":"/usr/local/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":456,"function":"emit","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/dav/lib/Connector/Sabre/Server.php","line":49,"function":"invokeMethod","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/dav/appinfo/v2/publicremote.php","line":151,"function":"start","class":"OCA\\DAV\\Connector\\Sabre\\Server","type":"->"},{"file":"/usr/local/www/nextcloud/public.php","line":82,"args":["/usr/local/www/nextcloud/apps-pkg/dav/appinfo/v2/publicremote.php"],"function":"require_once"}],"File":"/usr/local/www/nextcloud/apps-pkg/dav/lib/Connector/Sabre/PublicAuth.php","Line":84,"message":"Sabre\\DAV\\Exception\\NotFound: ","exception":[],"CustomMessage":"Sabre\\DAV\\Exception\\NotFound: "},"id":"67ea23ec42e7d"}


{"reqId":"8xEayc3GtNNoSCOHYt6i","level":3,"time":"2025-03-31T04:49:32+00:00","remoteAddr":"10.0.10.2","user":false,"app":"no app in context","method":"PROPFIND","url":"/public.php/dav/files","message":"Exception thrown: Sabre\\DAV\\Exception\\NotFound","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:136.0) Gecko/20100101 Firefox/136.0","version":"31.0.2.1","exception":{"Exception":"Sabre\\DAV\\Exception\\NotFound","Message":"","Code":0,"Trace":[{"file":"/usr/local/www/nextcloud/apps-pkg/dav/lib/Connector/Sabre/PublicAuth.php","line":112,"function":"getToken","class":"OCA\\DAV\\Connector\\Sabre\\PublicAuth","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/usr/local/www/nextcloud/apps-pkg/dav/lib/Connector/Sabre/PublicAuth.php","line":77,"function":"checkToken","class":"OCA\\DAV\\Connector\\Sabre\\PublicAuth","type":"->"},{"file":"/usr/local/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Auth/Plugin.php","line":179,"function":"check","class":"OCA\\DAV\\Connector\\Sabre\\PublicAuth","type":"->"},{"file":"/usr/local/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Auth/Plugin.php","line":135,"function":"check","class":"Sabre\\DAV\\Auth\\Plugin","type":"->"},{"file":"/usr/local/www/nextcloud/3rdparty/sabre/event/lib/WildcardEmitterTrait.php","line":89,"function":"beforeMethod","class":"Sabre\\DAV\\Auth\\Plugin","type":"->"},{"file":"/usr/local/www/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php","line":456,"function":"emit","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/dav/lib/Connector/Sabre/Server.php","line":49,"function":"invokeMethod","class":"Sabre\\DAV\\Server","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/dav/appinfo/v2/publicremote.php","line":151,"function":"start","class":"OCA\\DAV\\Connector\\Sabre\\Server","type":"->"},{"file":"/usr/local/www/nextcloud/public.php","line":82,"args":["/usr/local/www/nextcloud/apps-pkg/dav/appinfo/v2/publicremote.php"],"function":"require_once"}],"File":"/usr/local/www/nextcloud/apps-pkg/dav/lib/Connector/Sabre/PublicAuth.php","Line":99,"message":"","exception":[],"CustomMessage":"Exception thrown: Sabre\\DAV\\Exception\\NotFound"},"id":"67ea23ec42e97"}


{"reqId":"8xEayc3GtNNoSCOHYt6i","level":3,"time":"2025-03-31T04:49:32+00:00","remoteAddr":"10.0.10.2","user":false,"app":"PHP","method":"PROPFIND","url":"/public.php/dav/files","message":"Undefined array key 0 at /usr/local/www/nextcloud/apps-pkg/dav/appinfo/v2/publicremote.php#81","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:136.0) Gecko/20100101 Firefox/136.0","version":"31.0.2.1","data":{"app":"PHP"},"id":"67ea23ec42e9d"}

Additional info

Running in a FreeBSD Jail.

Metadata

Metadata

Assignees

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions