A PHP warning is produced on every page:
Warning: mt_srand() expects parameter 1 to be integer, float given in ../htdocs/include/init.php on line 136.
This prevents redirect after login when errors are displayed.
Code:
$seed = hexdec(substr(md5($seed), 0, 9));
// PHP 4.2 and up don't require seeding, but their used seed algorithm
// is of questionable quality, so we keep doing it ourselves. */
mt_srand($seed);
For certain values of $seed, hexdec can return a float instead of an integer on some systems. Mine is 32bit.
Suggested solution:
a) remove $seed from mt_rand()
b) make sure $seed is a value <= PHP_INT_MAX
$ php -v
PHP 7.0.12
$ uname -a
Linux 4.8.6-1-ARCH #1 SMP PREEMPT Mon Oct 31 19:10:31 CET 2016 i686 GNU/Linux