Oi Jorge,

        Maybe it's just me but I think you should upgrade Apache.  I'm using 1.3.27, 
which is the latest from www.apache.org's mirrors.  Apache Version 1 is no longer 
being developed, in favor of Apache 2.

        Strict refs is a Perl term about what kind of tokens to allow as references 
and you shouldn't get it in a properly debugged module.  Maybe something is old.  What 
version of Perl are you using?

Greg
Gregory L. Hering
(256) 722-6420
4807 Bradford Dr
Benchmark Electronics, Inc.
Huntsville, Al 35805
 


> -----Original Message-----
> From: Jorge Anselmo [mailto:[EMAIL PROTECTED] 
> Sent: Thursday, July 17, 2003 10:41 AM
> To: [EMAIL PROTECTED]
> Subject: apache+mod_perl+mod_auth_pgsql
> 
> 
> Hi, I have a problem with integration of 
> apache+mod_perl+mod_auth_pgsql. The 
> error is the follow: 
> 
> 
> [Tue Jul 15 13:06:47 2003] [error] Can't use string ("") as a 
> HASH ref 
> while"strict refs" in use at 
> /usr/lib/perl5/site_perl/5.8.0/i386-linux/DBI.pm 
> line 506
> 
> and
> 
> 
> [Tue Jul 15 17:49:21 2003] [notice] child pid 3644 exit 
> signal Segmentation 
> fault (11)
> 
> apache 1.3.9, postgreSQL 7.3.2, mod_perl 1.27 mod_auth_pgsql 0.9.12
> 
> DBI version 1.37
> 
> lines 487 - 540
> 
> # --- The DBI->connect Front Door methods
> 
> sub connect_cached {
>     # XXX we expect Apache::DBI users to still call connect()
>     my ($class, $dsn, $user, $pass, $attr) = @_;
>     ($attr ||= {})->{dbi_connect_method} = 'connect_cached';
>     return $class->connect($dsn, $user, $pass, $attr);
> }
> 
> sub connect {
>     my $class = shift;
>     my ($dsn, $user, $pass, $attr, $old_driver) = my @orig_args = @_;
>     my $driver;
> 
>     if ($attr and !ref($attr)) { # switch $old_driver<->$attr 
> if called in old 
> style
>         Carp::carp("DBI->connect using 'old-style' syntax is 
> deprecated and 
> will be an error in future versions");
>         ($old_driver, $attr) = ($attr, $old_driver);
>     }
> 
>     my $connect_meth = $attr->{dbi_connect_method};
>     $connect_meth ||= $DBI::connect_via;        # fallback to default
> 
>     $dsn ||= $ENV{DBI_DSN} || $ENV{DBI_DBNAME} || '' unless 
> $old_driver;
> 
>     if ($DBI::dbi_debug) {
>         local $^W = 0;
>         pop @_ if $connect_meth ne 'connect';
>         my @args = @_; $args[2] = '****'; # hide password
>         DBI->trace_msg("    -> 
> $class->$connect_meth(".join(",",@args).")\n");
>     }
> Carp::croak('Usage: $class->connect([$dsn [,$user [,$passwd 
> [,\%attr]]]])')
>         if (ref $old_driver or ($attr and not ref $attr) or 
> ref $pass);
> 
>     # extract dbi:driver prefix from $dsn into $1
>     $dsn =~ s/^dbi:(\w*?)(?:\((.*?)\))?://i
>                         or '' =~ /()/; # ensure $1 etc are 
> empty if match 
> fails
>     my $driver_attrib_spec = $2 || '';
> 
>     # Set $driver. Old style driver, if specified, overrides 
> new dsn style.
>     $driver = $old_driver || $1 || $ENV{DBI_DRIVER}
>         or Carp::croak("Can't connect(@_), no database driver 
> specified "
>                 ."and DBI_DSN env var not set");
> 
>     if ($ENV{DBI_AUTOPROXY} && $driver ne 'Proxy' && $driver 
> ne 'Sponge' && 
> $driver ne 'Switch') {
>         my $proxy = 'Proxy';
>         if ($ENV{DBI_AUTOPROXY} =~ s/^dbi:(\w*?)(?:\((.*?)\))?://i) {
>             $proxy = $1;
>             my $attr_spec = $2 || '';
>             $driver_attrib_spec = ($driver_attrib_spec) ? 
> "$driver_attrib_spec,$attr_spec" : $attr_spec;
>         }
>         $dsn = "$ENV{DBI_AUTOPROXY};dsn=dbi:$driver:$dsn";
>         $driver = $proxy;
>         DBI->trace_msg("       DBI_AUTOPROXY: 
> dbi:$driver($driver_attrib_spec):$dsn\n");
>     }
> 
> anything idea?
> 
> []'s 
> 
> Jorge Odair de Olievira Anselmo
> 
> 
> 

Reply via email to