SquirrelMail: New User Wizard 1.3.2 e Compatibility 2.0.9
giovedì, 22 novembre 2007Se sulla vostra installazione di SquirrelMail avete installato la versione 1.3.2 del plugin New User Wizard (che obbliga i nuovi utenti ad inserire le proprie informazioni personali al primo accesso) e allo stesso tempo l’ultima versione del plugin Compatibility (ma il problema dovrebbe presentarsi anche con versioni meno recenti, dalla 2.0.6 in poi pare), allora quando il nuovo utente cercherà di inviare le proprie informazioni, riceverà in risposta questo errore:
Fatal error: Call to undefined function: php_self() in /usr/share/squirrelmail/plugins/compatibility.new/includes/ 1.5.0/global.php on line 25
Per risolvere rapidamente il problema, e sufficiente modificare il file /usr/share/squirrelmail/plugins/newuser_wiz/wiz_submit.php sostituendo queste linee…
chdir('..'); define('SM_PATH','../');
…con questa:
if (!defined('SM_PATH')) define('SM_PATH', '../../');
…e commentando (o eliminando) queste linee:
if (defined('SM_PATH')) include_once(SM_PATH . 'plugins/compatibility/functions.php'); else if (file_exists('../plugins/compatibility/functions.php')) include_once('../plugins/compatibility/functions.php'); else if (file_exists('./plugins/compatibility/functions.php')) include_once('./plugins/compatibility/functions.php');
Ed ecco che il plugin riprende il suo corretto funzionamento. Lo stesso problema lo si può riscontrare anche in altri plugin e la soluzione è più o meno simile a questa.
(distribuzione Linux di riferimento: Debian GNU/Linux 3.1r8 Sarge)

One comment
Leave a reply