Hi
I have a problem when my apache_1.3.29 w/ mod_perl 1.29 runs PerlRun and some CGI scripts with password encryption.
Script is ...
$password = crypt($password, &mkSalt($name.$password.$value) );
sub mkSalt { local($t, $sum, @salt ) = @_; @salt = split(//, './0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'); if ($t) { $sum = unpack("%12C*", $t); } else { # ãããããçãåå return 'No'; } $salt[$sum % 64] . $salt[int($sum/64) % 64]; }
While comparing local password file with password POSTed by users will not be matched.
This script works fine without mod_perl but not with mod_perl.. But it was working fine with mod_perl.. But Suddenly stops working..
Is anybody can help me??
Most likely you have upgraded your perl to 5.8.0. If so the problem will go away with 5.8.1
In the future always follow the guidelines on submitting the bug reports: http://perl.apache.org/bugs/. So we don't have to guess your environment.
mod_perl 2 has a workaround for 5.8.0:
/* This was fixed in 5.9.0/5.8.1 (17775), but won't compile after 19122 */ #if PERL_REVISION == 5 && PERL_VERSION == 8 && PERL_SUBVERSION == 0 && \ defined(USE_REENTRANT_API) && defined(HAS_CRYPT_R) && defined(__GLIBC__) /* workaround perl5.8.0/glibc bug */ PL_reentrant_buffer->_crypt_struct.current_saltbits = 0; #endif
I haven't seen it in the mp1 code.
-- __________________________________________________________________ Stas Bekman JAm_pH ------> Just Another mod_perl Hacker http://stason.org/ mod_perl Guide ---> http://perl.apache.org mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com
-- Report problems: http://perl.apache.org/bugs/ Mail list info: http://perl.apache.org/maillist/modperl.html List etiquette: http://perl.apache.org/maillist/email-etiquette.html