On 12/9/25 6:14 AM, Christian Hesse wrote:
David C Rankin <[email protected]> on Mon, 2025/12/08 21:38:
Call to undefined function OC\\Security\\idn_to_utf8() in file
/usr/share/webapps/nextcloud/lib/private/Security/RemoteHostValidator.php
line 38

Wondering if this is related to the update of libidn2 [0]. That should not
bring any breaking changes, though.

[0]
https://gitlab.archlinux.org/archlinux/packaging/packages/libidn2/-/commit/7254392fe9adbba2842442e66bafca2fe9cd761c

Thank you Christian,

I have to admit, I'm not smart enough to immediately see how the change to libidn2 would translate into PHP not being able to find what I guess is a PHP function? One thing I don't really have experience with is the internals of Nextcloud as far as the code goes.

The /usr/share/webapps/nextcloud/lib/private/Security/RemoteHostValidator.php file is just 56 lines of plain PHP, and the function https://www.php.net/manual/en/function.idn-to-utf8.php is just a plain PHP function.

Could this be in the change of php-legacy package from php-8.2.x to php-8.3.x? Or are you saying the change of the version for libidn2 may have caused all versions of PHP to consider the idn_to_utf8() function undefined? Checking the php-legacy PKGBUILD, libidn2 isn't listed as a dependency, so that is where I'm confused...

There hasn't been any response yet to the help request opened at https://help.nextcloud.com/t/nextcloud-32-call-to-undefined-function-oc-security-idn-to-utf8/237090 While there are similar issues, none have the same idn_to_utf8() undefined as the cause. I'll keep you posted on any progress there.

--
David C. Rankin, J.D.,P.E.

Reply via email to