Skip to content

Exception at file:scan on external SMB storage and show_hidden:false #21177

@beckenc

Description

@beckenc

Steps to reproduce

  1. Mount external storage via SMB/CIFS
| 20       | /music      | SMB / CIFS | Username and password               | host: "10.0.0.1", share: "music", root: "", domain: "", show_hidden: false, timeout: "", user: "admin", password: "***" |         |                  | Users, admin      |
runuser -u apache -- php /var/www/localhost/htdocs/nextcloud/occ files:scan cbe -vvv
  1. setting show_hidden: true let files:scan succeed

Expected behaviour

Find some files without throwing any exceptions

Actual behaviour

Scan all the local files / folders without any issues.
Start scanning the external SMB storage throws an exception

Exception during scan: Uninitialized string offset: 0
#0 /var/www/localhost/htdocs/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Native/NativeFileInfo.php(144): OCA\Files\Command\Scan->exceptionErrorHandler()
#1 /var/www/localhost/htdocs/nextcloud/apps/files_external/lib/Lib/Storage/SMB.php(577): Icewind\SMB\Native\NativeFileInfo->isHidden()
#2 /var/www/localhost/htdocs/nextcloud/lib/private/Files/Storage/Common.php(148): OCA\Files_External\Lib\Storage\SMB->isUpdatable()
#3 /var/www/localhost/htdocs/nextcloud/lib/private/Files/Storage/Common.php(168): OC\Files\Storage\Common->isCreatable()
#4 /var/www/localhost/htdocs/nextcloud/lib/private/Files/Storage/Common.php(700): OC\Files\Storage\Common->getPermissions()
#5 /var/www/localhost/htdocs/nextcloud/lib/private/Files/Storage/Wrapper/Wrapper.php(582): OC\Files\Storage\Common->getMetaData()
#6 /var/www/localhost/htdocs/nextcloud/lib/private/Files/Storage/Wrapper/PermissionsMask.php(145): OC\Files\Storage\Wrapper\Wrapper->getMetaData()
#7 /var/www/localhost/htdocs/nextcloud/lib/private/Files/Storage/Wrapper/Wrapper.php(582): OC\Files\Storage\Wrapper\PermissionsMask->getMetaData()
#8 /var/www/localhost/htdocs/nextcloud/lib/private/Files/Storage/Wrapper/Availability.php(443): OC\Files\Storage\Wrapper\Wrapper->getMetaData()
#9 /var/www/localhost/htdocs/nextcloud/lib/private/Files/Storage/Wrapper/Wrapper.php(582): OC\Files\Storage\Wrapper\Availability->getMetaData()
#10 /var/www/localhost/htdocs/nextcloud/lib/private/Files/Cache/Scanner.php(113): OC\Files\Storage\Wrapper\Wrapper->getMetaData()
#11 /var/www/localhost/htdocs/nextcloud/lib/private/Files/Cache/Scanner.php(151): OC\Files\Cache\Scanner->getData()
#12 /var/www/localhost/htdocs/nextcloud/lib/private/Files/Cache/Scanner.php(337): OC\Files\Cache\Scanner->scanFile()
#13 /var/www/localhost/htdocs/nextcloud/lib/private/Files/Utils/Scanner.php(261): OC\Files\Cache\Scanner->scan()
#14 /var/www/localhost/htdocs/nextcloud/apps/files/lib/Command/Scan.php(151): OC\Files\Utils\Scanner->scan()
#15 /var/www/localhost/htdocs/nextcloud/apps/files/lib/Command/Scan.php(207): OCA\Files\Command\Scan->scanFiles()
#16 /var/www/localhost/htdocs/nextcloud/3rdparty/symfony/console/Command/Command.php(255): OCA\Files\Command\Scan->execute()
#17 /var/www/localhost/htdocs/nextcloud/core/Command/Base.php(168): Symfony\Component\Console\Command\Command->run()
#18 /var/www/localhost/htdocs/nextcloud/3rdparty/symfony/console/Application.php(915): OC\Core\Command\Base->run()
#19 /var/www/localhost/htdocs/nextcloud/3rdparty/symfony/console/Application.php(272): Symfony\Component\Console\Application->doRunCommand()
#20 /var/www/localhost/htdocs/nextcloud/3rdparty/symfony/console/Application.php(148): Symfony\Component\Console\Application->doRun()
#21 /var/www/localhost/htdocs/nextcloud/lib/private/Console/Application.php(214): Symfony\Component\Console\Application->run()
#22 /var/www/localhost/htdocs/nextcloud/console.php(99): OC\Console\Application->run()
#23 /var/www/localhost/htdocs/nextcloud/occ(11): require_once('/var/www/localh...')
#24 {main}

Server configuration

Operating system:
Linux vm-gentoo-homeserver 5.4.38-gentoo #3 SMP Wed May 27 20:26:06 CEST 2020 x86_64 Intel(R) Xeon(R) E-2224 CPU @ 3.40GHz GenuineIntel GNU/Linux

Web server:
$ apache2 -v
Server version: Apache/2.4.41 (Unix)
Server built: May 28 2020 09:05:10

Database:
$ mysql --version
mysql Ver 15.1 Distrib 10.4.12-MariaDB, for Linux (x86_64) using readline 8.0

PHP version:
$ php-fpm --version
PHP 7.4.6 (fpm-fcgi) (built: May 28 2020 16:43:47)

Nextcloud version: (see Nextcloud admin page)
18.0.4 patched with #20622 (comment)

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

Where did you install Nextcloud from:
portage tree

Signing status:

Signing status
No errors have been found.

List of activated apps:

App list
$ runuser -u apache -- php /var/www/localhost/htdocs/nextcloud/occ app:list
Enabled:
  - accessibility: 1.4.0
  - activity: 2.11.0
  - apporder: 0.10.0
  - bruteforcesettings: 1.6.0
  - calendar: 2.0.3
  - camerarawpreviews: 0.7.3
  - cloud_federation_api: 1.1.0
  - contacts: 3.3.0
  - dav: 1.14.0
  - external: 3.5.0
  - extract: 1.2.4
  - federatedfilesharing: 1.8.0
  - files: 1.13.1
  - files_accesscontrol: 1.8.1
  - files_external: 1.9.0
  - files_pdfviewer: 1.7.0
  - files_rightclick: 0.15.2
  - files_trashbin: 1.8.0
  - files_versions: 1.11.0
  - files_videoplayer: 1.7.0
  - logreader: 2.3.0
  - lookup_server_connector: 1.6.0
  - nextcloud_announcements: 1.7.0
  - notifications: 2.6.0
  - oauth2: 1.6.0
  - password_policy: 1.8.0
  - photos: 1.0.0
  - previewgenerator: 2.3.0
  - privacy: 1.2.0
  - provisioning_api: 1.8.0
  - recommendations: 0.6.0
  - serverinfo: 1.8.0
  - settings: 1.0.0
  - support: 1.1.0
  - survey_client: 1.6.0
  - systemtags: 1.8.0
  - text: 2.0.0
  - theming: 1.9.0
  - twofactor_backupcodes: 1.7.0
  - updatenotification: 1.8.0
  - viewer: 1.2.0
  - workflowengine: 2.0.0
Disabled:
  - admin_audit
  - comments
  - encryption
  - federation
  - files_external_ipfs
  - files_sharing
  - firstrunwizard
  - sharebymail
  - socialsharing_email
  - user_ldap

Nextcloud configuration:

Config report
$ runuser -u apache -- php /var/www/localhost/htdocs/nextcloud/occ config:list system
{
    "system": {
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "192.168.178.6",
            "vm-gentoo-homeserver"
        ],
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "dbtype": "mysql",
        "version": "18.0.4.2",
        "overwrite.cli.url": "http:\/\/vm-gentoo-homeserver\/nextcloud",
        "htaccess.RewriteBase": "\/nextcloud",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbport": "",
        "dbtableprefix": "oc_",
        "mysql.utf8mb4": true,
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": true,
        "mail_smtpmode": "smtp",
        "mail_smtpsecure": "tls",
        "mail_sendmailmode": "smtp",
        "mail_smtpauthtype": "LOGIN",
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpport": "587",
        "mail_smtpauth": 1,
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpname": "***REMOVED SENSITIVE VALUE***",
        "mail_smtppassword": "***REMOVED SENSITIVE VALUE***",
        "memcache.local": "\\OC\\Memcache\\APCu",
        "log_type": "file",
        "logfile": "\/mnt\/nfs\/fileserver\/nextcloud\/data\/nextcloud.log",
        "loglevel": "2",
        "logdateformat": "F d, Y H:i:s",
        "log_rotate_size": 104857600,
        "updater.release.channel": "stable",
        "updater.secret": "***REMOVED SENSITIVE VALUE***"
    }
}

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

Are you using encryption: no

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

Client configuration

Browser:
Firefox 76.0.1

Operating system:
$ uname -a
Linux lxlaptop 5.4.38-gentoo #4 SMP Fri May 15 23:37:30 CEST 2020 x86_64 Intel(R) Core(TM) i5-4300M CPU @ 2.60GHz GenuineIntel GNU/Linux

Logs

Web server error log

Web server error log
error_log:
$ cat /var/log/apache2/ssl_error_log 
[Sun May 31 19:39:14.625576 2020] [proxy:error] [pid 21178] (2)No such file or directory: AH02454: FCGI: attempt to connect to Unix domain socket /var/run/php-fpm/www.sock (*) failed
[Sun May 31 19:39:14.625634 2020] [proxy_fcgi:error] [pid 21178] [client 192.168.178.21:58084] AH01079: failed to make connection to backend: httpd-UDS
[Mon Jun 01 08:22:42.830364 2020] [proxy_fcgi:error] [pid 26830] [client 192.168.178.21:38774] AH01071: Got error 'PHP message: PHP Deprecated:  The behavior of unparenthesized expressions containing both '.' and '+'/'-' will change in PHP 8: '+'/'-' will take a higher precedence in /var/www/localhost/htdocs/nextcloud/3rdparty/sabre/vobject/lib/Recur/RRuleIterator.php on line 357PHP message: PHP Deprecated:  The behavior of unparenthesized expressions containing both '.' and '+'/'-' will change in PHP 8: '+'/'-' will take a higher precedence in /var/www/localhost/htdocs/nextcloud/3rdparty/sabre/vobject/lib/Recur/RRuleIterator.php on line 423'

Nextcloud log (data/nextcloud.log)

Nextcloud log
{"reqId":"XtUXlfxRFTGLuT6-G7B1rwAAAAE","level":3,"time":"June 01, 2020 14:58:29","remoteAddr":"192.168.178.21","user":"admin","app":"PHP","method":"GET","url":"/nextcloud/index.php/apps/files/ajax/getstoragestats.php?dir=%2Fmusic","message":"Uninitialized string offset: 0 at /var/www/localhost/htdocs/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Native/NativeFileInfo.php#144","userAgent":"Mozilla/5.0 (X11; Linux x86_64; rv:76.0) Gecko/20100101 Firefox/76.0","version":"18.0.4.2"}
{"reqId":"Lr55lgSPdBSiJNKYO63P","level":3,"time":"June 01, 2020 15:00:01","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"Uninitialized string offset: 0 at /var/www/localhost/htdocs/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Native/NativeFileInfo.php#144","userAgent":"--","version":"18.0.4.2"}
{"reqId":"Lr55lgSPdBSiJNKYO63P","level":3,"time":"June 01, 2020 15:00:01","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"Uninitialized string offset: 0 at /var/www/localhost/htdocs/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Native/NativeFileInfo.php#144","userAgent":"--","version":"18.0.4.2"}
{"reqId":"Lr55lgSPdBSiJNKYO63P","level":3,"time":"June 01, 2020 15:00:01","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"Uninitialized string offset: 0 at /var/www/localhost/htdocs/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Native/NativeFileInfo.php#144","userAgent":"--","version":"18.0.4.2"}
{"reqId":"Lr55lgSPdBSiJNKYO63P","level":3,"time":"June 01, 2020 15:00:01","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"Uninitialized string offset: 0 at /var/www/localhost/htdocs/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Native/NativeFileInfo.php#144","userAgent":"--","version":"18.0.4.2"}
{"reqId":"Lr55lgSPdBSiJNKYO63P","level":3,"time":"June 01, 2020 15:00:01","remoteAddr":"","user":"--","app":"PHP","method":"","url":"--","message":"Uninitialized string offset: 0 at /var/www/localhost/htdocs/nextcloud/apps/files_external/3rdparty/icewind/smb/src/Native/NativeFileInfo.php#144","userAgent":"--","version":"18.0.4.2"}

Browser log

Browser log
Insert your browser log here, this could for example include:

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    0. Needs triagePending check for reproducibility or if it fits our roadmapbug

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions