Error with allowSymlinks for new users only


I am using Nextcloud 18.0.0 and we have bunch of PHP-FPM servers working with cloud data via NFS.

The storage path looks like /net/nfsserver/cloud, but due to automounter behavior /net/nfsserver is a link to /amd/nfsserver/host. This setup survived all updates from NC13 to NC18 and I never knew about “allowSymlinks = false” option hardcoded. NC is also connected to LDAP and I believe all users had their first connect when NC was beyond version 14.

But when the user had his first connect on NC18 he hit error "Following symlinks is not allowed (’/net/nfsserver/cloud/user/.’ -> ‘/amd/nfsserver/host/cloud/user/’ not inside ‘/net/nfsserver/cloud/

I had set allowSymlinks = true in /lib/private/Files/Storage/Local.php, then user had successful logon and then I have changed it back and now user can login any time.

I wish to know if this either:

  1. A bug on allowSymlinks behavior which do not check paths every time they are accessed, but check when user is initialized.
  2. Intended behavior checking paths on initialization.