On Tue, 2002-10-22 at 10:37, Doug MacEachern wrote:
> does this patch (untested) cure the problem?

Works for me under all MPMs ;-)

How about creating a new test script for all those workarounds/bugs ?

--- /dev/null   2002-08-31 07:31:37.000000000 +0800
+++ t/response/TestAPI/bugs.pm  2002-10-22 11:30:57.000000000 +0800
@@ -0,0 +1,19 @@
+package TestAPI::bugs;
+
+use strict;
+use warnings FATAL => 'all';
+
+use Apache::Test;
+
+sub handler {
+    my $r = shift;
+
+    plan $r, tests => 1;
+    
+    #Perl crypt_r thread bug
+    ok crypt('foo','Dm') eq 'Dm8yjkphWW352';
+    
+    Apache::OK;
+}
+
+1;

> 
> Index: src/modules/perl/modperl_interp.c
> ===================================================================
> RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_interp.c,v
> retrieving revision 1.52
> diff -u -r1.52 modperl_interp.c
> --- src/modules/perl/modperl_interp.c 27 Aug 2002 04:24:08 -0000      1.52
> +++ src/modules/perl/modperl_interp.c 22 Oct 2002 02:48:38 -0000
> @@ -63,6 +63,14 @@
>  
>          interp->perl = perl_clone(perl, clone_flags);
>  
> +#if defined(USE_REENTRANT_API) && defined(HAS_CRYPT_R) && defined(__GLIBC__)
> +        {
> +            dTHXa(interp->perl);
> +            /* workaround 5.8.0 bug */
> +            PL_reentrant_buffer->_crypt_struct.current_saltbits = 0;
> +        }
> +#endif
> +
>          {
>              PTR_TBL_t *source = modperl_module_config_table_get(perl, FALSE);
>              if (source) {
> 
> 
> 

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to