I'm tired of disabling IPC::SysV in AuthDBI.pm for every update.
Please check some fix like this in.

no strict in the child handlers cannot be evaluated at run-time but is needed for Win32. Better ways?

Tested with Randy Cobes mod_perl binary for Win32.
Active Perl 633,  v5.6.1 built for MSWin32-x86-multi-thread

PS: I'm not subscribed to this list.
--
Reini Urban
http://xarch.tu-graz.ac.at/home/rurban/
--- Apache-DBI-0.91/Changes~    2003-02-17 14:02:27.000000000 +0100
+++ Apache-DBI-0.91/Changes     2003-04-02 11:16:24.000000000 +0200
@@ -1,5 +1,8 @@
 Revision history for ApacheDBI.
 
+0.91_01 April 2, 2003
+       - MSWin32 fix: disable IPC::SysV
+
 0.91    February 17, 2003
         - Retagged and released the 0.90_02 beta as 0.91. No code
           changes.
--- Apache-DBI-0.91/AuthDBI.pm~ 2003-02-17 14:00:12.000000000 +0100
+++ Apache-DBI-0.91/AuthDBI.pm  2003-04-02 11:15:12.000000000 +0200
@@ -3,7 +3,10 @@
 use Apache ();
 use Apache::Constants qw( OK AUTH_REQUIRED FORBIDDEN DECLINED SERVER_ERROR );
 use DBI ();
-use IPC::SysV qw( IPC_CREAT IPC_RMID S_IRUSR S_IWUSR );
+if ($^O ne 'MSWin32') {
+  require IPC::SysV;
+  import IPC::SysV qw( IPC_CREAT IPC_RMID S_IRUSR S_IWUSR );
+}
 use strict;
 
 # $Id: AuthDBI.pm,v 1.3 2003/02/17 13:00:12 ask Exp $
@@ -644,6 +647,7 @@
 # Note: this handler runs in every child server, but not in the main server.
 
 sub childinit {
+    no strict; # for $^O eq 'MSWin32' only
     my $prefix = "$$ Apache::AuthDBI         PerlChildInitHandler";
     # create (or re-use existing) semaphore set
     $SEMID = semget($SHMKEY, 1, IPC_CREAT|S_IRUSR|S_IWUSR);
@@ -685,6 +689,7 @@
 # Note: this handler runs in every child server, but not in the main server.
 
 sub childexit {
+    no strict; # for $^O eq 'MSWin32' only
     my $prefix = "$$ Apache::AuthDBI         PerlChildExitHandler";
     # read Cache from shared memory, decrement child count and exit or write Cache to 
shared memory
     semop($SEMID, $obtain_lock) or print STDERR "$prefix semop failed \n";

Reply via email to