Hi all,
No response on this so here it is again, any clues appreciated:
I am encountering a weird problem with Apache::URI ... consider, please,
this test handler:
package WM::Test;
use strict;
sub handler {
my $r = shift;
my $uri = Apache::URI->parse($r, $r->uri);
$uri->hostname($r->get_server_name);
$uri->port($r->get_server_port);
print $uri->unparse;
}
1;
__END__
As written, this causes a seg fault every time. Commenting out _either_
the $uri->hostname assignment _or_ the $uri->port assignment solves the
problem, or even changing the call to one or other of the methods from an
assignment to a read. But when both methods are assigned new values, seg
fault.
This code has worked fine for two years or more on my FreeBSD boxes; this
is on Linux RedHat 7 ... dunno if that makes a difference.
apache etc.:
[Sun Feb 4 10:53:11 2001] [notice] Apache/1.3.17 (Unix) mod_perl/1.25
mod_ssl/2.8.0 OpenSSL/0.9.6 configured -- resuming normal operations
perl:
wm@wm ~/wm/perl/WM>perl -V
Summary of my perl5 (revision 5.0 version 6 subversion 0) configuration:
Platform:
osname=linux, osvers=2.2.16-22, archname=i686-linux
uname='linux wm 2.2.16-22 #1 tue aug 22 16:49:06 edt 2000 i686 unknown
'
config_args=''
hint=recommended, useposix=true, d_sigaction=define
usethreads=undef use5005threads=undef useithreads=undef
usemultiplicity=undef
useperlio=undef d_sfio=undef uselargefiles=define
use64bitint=undef use64bitall=undef uselongdouble=undef usesocks=undef
Compiler:
cc='gcc', optimize='-O2', gccversion=2.96 20000731 (Red Hat Linux 7.0)
cppflags='-fno-strict-aliasing'
ccflags ='-fno-strict-aliasing -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64'
stdchar='char', d_stdstdio=define, usevfork=false
intsize=4, longsize=4, ptrsize=4, doublesize=8
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
alignbytes=4, usemymalloc=n, prototype=define
Linker and Libraries:
ld='gcc', ldflags =' -L/usr/local/lib'
libpth=/usr/local/lib /lib /usr/lib
libs=-lnsl -lgdbm -ldl -lm -lc -lcrypt
libc=/lib/libc-2.1.92.so, so=so, useshrplib=false, libperl=libperl.a
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic'
cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib'
Characteristics of this binary (from libperl):
Compile-time options: USE_LARGE_FILES
Built under linux
Compiled at Jan 30 2001 10:41:19
@INC:
/usr/local/lib/perl5/5.6.0/i686-linux
/usr/local/lib/perl5/5.6.0
/usr/local/lib/perl5/site_perl/5.6.0/i686-linux
/usr/local/lib/perl5/site_perl/5.6.0
/usr/local/lib/perl5/site_perl
.
Thanks,
Nick
~~~~~~~~~~~
Nick Tonkin