Loading...
 
Features / Usability

Features / Usability


Windows install error on tw1.9rc1

posts: 43 New Zealand

Hi all,

I have upgraded my Linux server to tw1.9rc1 with no problems and yes this version does have some nice new features and fixes biggrin

However the upgrade on my Windows NT server was not so successfull. frown After extracting the files into a new directory and opening tiki-install.php, then setting the db connection, then opening my browser in the new directory I get the following error and cannot do anything else.

Warning: Call-time pass-by-reference has been deprecated - argument passed by value; If you would like to pass it by reference, modify the declaration of runtime function name(). If you would like to enable call-time pass-by-reference, you can set allow_call_time_pass_reference to true in your INI file. However, future versions may not support this any longer. in c:\program files\easyphp1-7\www\tiki191\lib\userslib.php on line 543

Looking at line 543 on userlib.php...

// Read page AuthPAM at tw.o, it says about a php module required.
// maybe and if extension line could be added here... module requires $error
// as reference.
if (pam_auth($user, $pass, &$error)) {
return USER_VALID;
} else {
// Uncomment the following to see errors on that
// error_log("TIKI ERROR PAM: $error User: $user Pass: $pass");
return PASSWORD_INCORRECT;
}
}

I have looked up AuthPAM pages on tw.o but unfortunatey this doesn't make a lot of sense to me as a non-developer.

I do have my Admin, Login, Per::Auth option set to "Just use Tiki auth for admin?" and I do have an "admin" user.

Phew if you are still with me then Help! I need somebody biggrin

posts: 2881 United Kingdom

All options on the PAM section in tiki-login admin page should be empty of off.

Damian


posts: 43 New Zealand

Thanks Damian,
I see you are taking multiple hits in IRC right now.

All options on the PAM section in tiki-login admin page ARE now empty or off and error persists.

Also, I have Authentication method set to "Just Tiki"

posts: 2881 United Kingdom

As a suggestion just look at the code above that pam if and see what conditions its arriving at the pam code at.

Probably be a sticky toggle setting or something that you could maybe tweak in the database.

Damian


posts: 43 New Zealand

You need to update the allow_call_time_pass_reference to "On"
(i.e. "allow_call_time_pass_reference = On") in the php.ini file

Use the Application menu, Admin, phpinfo to see where your php.ini file is

My gotcha
Beware that the allow_call_time_pass_reference appears twice in the php.ini file. Make sure you update the later. Thats is the one that is not aleady commented (;) out at the start of the file biggrin

posts: 104 France

IMHO this is a workaround, NOT a fix. You notice that PHP warns you that this usage has been "deprecated" - ie it is not a good idea to use it because it may well not be supported at all in a forthcoming version of PHP. The fix would presumably be to modify the function definition - however, I could not find the pam_auth function definition anywhere (well, I'm only running Windows, I don't have a grep...)

But since I don't intend to use PAM anyway, the other solution is to modify the function call itself to read:
if (pam_auth($user, $pass, $error))

instead of:
if (pam_auth($user, $pass, &$error))

It is that "&" that PHP is disapproving of. Otherwise you end up with a deprecated configuration in your server php.ini which IMHO is very undesirable. evil

Of course this is not really a fix either - but I don't have time to work out where the pam_auth function is....

posts: 2881 United Kingdom

Running Windows is no excuse!
Click Start -> Search or Find (depends on your version) and in those options you can search for text within files. Windows has grep variation built in! razz

Enjoy

Damian

posts: 104 France

I'm aware that there is a search function in Windows, and how it works. biggrin

However, when I enter "pam_auth" as the string being searched for and "lib" as the folder - the Windows search finds nothing....

And this is not the first time I have had this experience... But heck, it's Windows cry