Invision Community 4: SEO, prepare for v5 and dormant account notifications Matt November 11, 2024Nov 11
Posted February 3Feb 3 Our users cannot configure their MFA on their accounts due to an error being thrown in the BaconQrCode library. I see this library was added in IPS 4.7.17. I'm not sure if it has been broken since it was added or if it's an incompatibility with our PHP version as we recently just upgraded from PHP 8.0.We are running:IPS 4.7.20PHP 8.1.31Error: Call to undefined function BaconQrCode\Encoder\iconv() (0) #0 /var/www/html/system/3rd_party/BaconQrCode/src/Encoder/Encoder.php(527): BaconQrCode\Encoder\Encoder::append8BitBytes() #1 /var/www/html/system/3rd_party/BaconQrCode/src/Encoder/Encoder.php(77): BaconQrCode\Encoder\Encoder::appendBytes() #2 /var/www/html/system/3rd_party/BaconQrCode/src/Writer.php(54): BaconQrCode\Encoder\Encoder::encode() #3 /var/www/html/system/MFA/GoogleAuthenticator/Handler.php(113): BaconQrCode\Writer->writeString() #4 /var/www/html/applications/core/modules/front/system/settings.php(705): IPS\MFA\GoogleAuthenticator\_Handler->configurationScreen() #5 /var/www/html/applications/core/modules/front/system/settings.php(67): IPS\core\modules\front\system\_settings->_mfa() #6 /var/www/html/system/Dispatcher/Controller.php(118): IPS\core\modules\front\system\_settings->manage() #7 /var/www/html/applications/core/modules/front/system/settings.php(52): IPS\Dispatcher\_Controller->execute() #8 /var/www/html/system/Dispatcher/Dispatcher.php(153): IPS\core\modules\front\system\_settings->execute() #9 /var/www/html/index.php(13): IPS\_Dispatcher->run() #10 {main}
February 3Feb 3 Solution It looks like your PHP may have had iconv extension disabled, re-enabling the extension will address this issue.
February 3Feb 3 Author 6 minutes ago, Stuart Silvester said:It looks like your PHP may have had iconv extension disabled, re-enabling the extension will address this issue.Ah I didn't realize iconv was a separate extension - I thought it was part of PHP core. That was the problem, indeed. Cheers.