You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Marc Gràcia <mg...@oasyssoft.com> on 2005/07/14 11:08:36 UTC

Apache Request problems with tildes...

Hi everybody, I think we've found a curious bug in libapreq2.

There's a snippet of code on we basically are processing all post
parameters from a request:

        if ($req->request_method() eq 'POST')
        {
                my $hay_uploads=0;
                foreach my $param (keys %args)
                {
                        my $upload = $ar->upload($param);
                        if (defined $upload)
                        {
                            ....
                        }
                        ...
                }
                ...
        }

The problem is the value of a post parameter ends with an accentued char
(áó etc... I dont know if you can view that...) the full process dies in
the 
    
    my $upload = $ar->upload($param);

     line and an Internal Server Error  is showed in the browser. The
curious part is that this only happens if the value ENDS with the tilded
char, not if the char is in the middle of the value.

We are using mod_perl-2.0.1 (also tried with 2.0 and various RC), and
libapreq2-2.05-dev.
That do not happens with mod_perl-1.99 / libapreq2-2.04-dev

Perl -V output...

Summary of my perl5 (revision 5 version 8 subversion 6) configuration:
  Platform:
    osname=linux, osvers=eBD-system-1.0-r1,
archname=i686-linux-thread-multi
    uname='linux ruperta 2.6.5-7.97-smp #1 smp fri jul 2 14:21:59 utc
2004 i686 i686 i386 gnulinux '
    config_args=''
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=define use5005threads=undef useithreads=define
usemultiplicity=define
    useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
    use64bitint=undef use64bitall=undef uselongdouble=undef
    usemymalloc=y, bincompat5005=undef
  Compiler:
    cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS
-fno-strict-aliasing -pipe -I/usr/eBDAS/system-1.0/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
    optimize='-O3 -mcpu=pentium',
    cppflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS
-fno-strict-aliasing -pipe -I/usr/eBDAS/system-1.0/include'
    ccversion='', gccversion='3.3.3 (SuSE Linux)', gccosandvers=''
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
    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, prototype=define
  Linker and Libraries:
    ld='cc', ldflags ='-L/usr/eBDAS/system-1.0/lib'
    libpth=/usr/eBDAS/system-1.0/lib /lib /usr/lib
    libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
    perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
    libc=, so=so, useshrplib=false, libperl=libperl.a
    gnulibc_version='2.3.3'
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
    cccdlflags='-fpic', lddlflags='-shared -L/usr/eBDAS/system-1.0/lib'


Characteristics of this binary (from libperl):
  Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES
PERL_IMPLICIT_CONTEXT
  Built under linux
  Compiled at May 17 2005 16:25:51
  %ENV:
    PERL5LIB="/usr/eBDAS/ebd-3.0.1/modules:"
  @INC:
    /usr/eBDAS/ebd-3.0.1/modules
    /usr/eBDAS/system-1.0/lib/perl5/5.8.6/i686-linux-thread-multi
    /usr/eBDAS/system-1.0/lib/perl5/5.8.6
    /usr/eBDAS/system-1.0//lib/perl5/site_perl/5.8.6/i686-linux-thread-multi
    /usr/eBDAS/system-1.0//lib/perl5/site_perl/5.8.6
    /usr/eBDAS/system-1.0//lib/perl5/site_perl



--
Marc Gracia 
Oasys Soft 
Responsable de explotación y sistemas. 
e-mail : mgracia@oasyssoft.com

Re: Apache Request problems with tildes...

Posted by Marc Gràcia <mg...@oasyssoft.com>.
El dj 14 de 07 del 2005 a les 14:18 -0400, en/na Joe Schaefer va
escriure:

> Marc Gràcia <mg...@oasyssoft.com> writes:
> 
> >     The problem is the value of a post parameter ends with an accentued char
> >     (áó etc... I dont know if you can view that...) the full process dies in
> >     the
> >        
> >         my $upload = $ar->upload($param);
> >    
> >          line and an Internal Server Error  is showed in the browser.
> 
> Two questions: What's in the error log? And where exactly is the accented
> char: at the end of the contents of the file upload, at the end of 
> $param, or at the end of the uploaded file's name? 
> 

a) Nothing appear on the error log (well it says that there's no error
string for that error code or something like that)... Only the process
dies.
b) Is not an upload, its a simple POST name/value pair. The error
appears when the "value" ends with a accented char. BTW, we did not
still check what happens if the "name" ends with an accented char.

--
Marc Gracia 
Oasys Soft 
Responsable de explotación y sistemas. 
e-mail : mgracia@oasyssoft.com

Re: Apache Request problems with tildes...

Posted by Joe Schaefer <jo...@sunstarsys.com>.
Marc Gràcia <mg...@oasyssoft.com> writes:

>     The problem is the value of a post parameter ends with an accentued char
>     (áó etc... I dont know if you can view that...) the full process dies in
>     the
>        
>         my $upload = $ar->upload($param);
>    
>          line and an Internal Server Error  is showed in the browser.

Two questions: What's in the error log? And where exactly is the accented
char: at the end of the contents of the file upload, at the end of 
$param, or at the end of the uploaded file's name? 

-- 
Joe Schaefer


Re: Apache Request problems with tildes...

Posted by Marc Gràcia <mg...@oasyssoft.com>.
Well, just forgot to say that "$ar" is the Apache2::Request. 

El dj 14 de 07 del 2005 a les 11:08 +0200, en/na Marc Gràcia va
escriure:

> Hi everybody, I think we've found a curious bug in libapreq2.
> 
> There's a snippet of code on we basically are processing all post
> parameters from a request:
> 
>         if ($req->request_method() eq 'POST')
>         {
>                 my $hay_uploads=0;
>                 foreach my $param (keys %args)
>                 {
>                         my $upload = $ar->upload($param);
>                         if (defined $upload)
>                         {
>                             ....
>                         }
>                         ...
>                 }
>                 ...
>         }
> 
> The problem is the value of a post parameter ends with an accentued
> char (áó etc... I dont know if you can view that...) the full process
> dies in the 
>     
>     my $upload = $ar->upload($param);
> 
>      line and an Internal Server Error  is showed in the browser. The
> curious part is that this only happens if the value ENDS with the
> tilded char, not if the char is in the middle of the value.
> 
> We are using mod_perl-2.0.1 (also tried with 2.0 and various RC), and
> libapreq2-2.05-dev.
> That do not happens with mod_perl-1.99 / libapreq2-2.04-dev
> 
> Perl -V output...
> 
> Summary of my perl5 (revision 5 version 8 subversion 6) configuration:
>   Platform:
>     osname=linux, osvers=eBD-system-1.0-r1,
> archname=i686-linux-thread-multi
>     uname='linux ruperta 2.6.5-7.97-smp #1 smp fri jul 2 14:21:59 utc
> 2004 i686 i686 i386 gnulinux '
>     config_args=''
>     hint=recommended, useposix=true, d_sigaction=define
>     usethreads=define use5005threads=undef useithreads=define
> usemultiplicity=define
>     useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
>     use64bitint=undef use64bitall=undef uselongdouble=undef
>     usemymalloc=y, bincompat5005=undef
>   Compiler:
>     cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS
> -fno-strict-aliasing -pipe -I/usr/eBDAS/system-1.0/include
> -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
>     optimize='-O3 -mcpu=pentium',
>     cppflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS
> -fno-strict-aliasing -pipe -I/usr/eBDAS/system-1.0/include'
>     ccversion='', gccversion='3.3.3 (SuSE Linux)', gccosandvers=''
>     intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
>     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, prototype=define
>   Linker and Libraries:
>     ld='cc', ldflags ='-L/usr/eBDAS/system-1.0/lib'
>     libpth=/usr/eBDAS/system-1.0/lib /lib /usr/lib
>     libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
>     perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
>     libc=, so=so, useshrplib=false, libperl=libperl.a
>     gnulibc_version='2.3.3'
>   Dynamic Linking:
>     dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
>     cccdlflags='-fpic', lddlflags='-shared
> -L/usr/eBDAS/system-1.0/lib'
> 
> 
> Characteristics of this binary (from libperl):
>   Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES
> PERL_IMPLICIT_CONTEXT
>   Built under linux
>   Compiled at May 17 2005 16:25:51
>   %ENV:
>     PERL5LIB="/usr/eBDAS/ebd-3.0.1/modules:"
>   @INC:
>     /usr/eBDAS/ebd-3.0.1/modules
>     /usr/eBDAS/system-1.0/lib/perl5/5.8.6/i686-linux-thread-multi
>     /usr/eBDAS/system-1.0/lib/perl5/5.8.6
>     /usr/eBDAS/system-1.0//lib/perl5/site_perl/5.8.6/i686-linux-thread-multi
>     /usr/eBDAS/system-1.0//lib/perl5/site_perl/5.8.6
>     /usr/eBDAS/system-1.0//lib/perl5/site_perl
> 
> 
> 
> --
> Marc Gracia 
> Oasys Soft 
> Responsable de explotación y sistemas. 
> e-mail : mgracia@oasyssoft.com


--
Marc Gracia 
Oasys Soft 
Responsable de explotación y sistemas. 
e-mail : mgracia@oasyssoft.com

Re: Apache Request problems with tildes...

Posted by Marc Gràcia <mg...@oasyssoft.com>.
I'be just subscribed to libapreq, I'll follow the question there.

El dj 14 de 07 del 2005 a les 11:49 -0400, en/na Philip M. Gollucci va
escriure:

> Forwarding to apreq-dev list.  I might be a ble to look at this but not 
> until later.
> 
> 
> 
> 
> Marc Gràcia wrote:
> 
> > Hi everybody, I think we've found a curious bug in libapreq2.
> >
> > There's a snippet of code on we basically are processing all post 
> > parameters from a request:
> >
> >         if ($req->request_method() eq 'POST')
> >         {
> >                 my $hay_uploads=0;
> >                 foreach my $param (keys %args)
> >                 {
> >                         my $upload = $ar->upload($param);
> >                         if (defined $upload)
> >                         {
> >                             ....
> >                         }
> >                         ...
> >                 }
> >                 ...
> >         }
> >
> > The problem is the value of a post parameter ends with an accentued 
> > char (áó etc... I dont know if you can view that...) the full process 
> > dies in the
> >    
> >     my $upload = $ar->upload($param);
> >
> >      line and an Internal Server Error  is showed in the browser. The 
> > curious part is that this only happens if the value ENDS with the 
> > tilded char, not if the char is in the middle of the value.
> >
> > We are using mod_perl-2.0.1 (also tried with 2.0 and various RC), and 
> > libapreq2-2.05-dev.
> > That do not happens with mod_perl-1.99 / libapreq2-2.04-dev
> >
> > Perl -V output...
> >
> > Summary of my perl5 (revision 5 version 8 subversion 6) configuration:
> >   Platform:
> >     osname=linux, osvers=eBD-system-1.0-r1, 
> > archname=i686-linux-thread-multi
> >     uname='linux ruperta 2.6.5-7.97-smp #1 smp fri jul 2 14:21:59 utc 
> > 2004 i686 i686 i386 gnulinux '
> >     config_args=''
> >     hint=recommended, useposix=true, d_sigaction=define
> >     usethreads=define use5005threads=undef useithreads=define 
> > usemultiplicity=define
> >     useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
> >     use64bitint=undef use64bitall=undef uselongdouble=undef
> >     usemymalloc=y, bincompat5005=undef
> >   Compiler:
> >     cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS 
> > -fno-strict-aliasing -pipe -I/usr/eBDAS/system-1.0/include 
> > -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
> >     optimize='-O3 -mcpu=pentium',
> >     cppflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS 
> > -fno-strict-aliasing -pipe -I/usr/eBDAS/system-1.0/include'
> >     ccversion='', gccversion='3.3.3 (SuSE Linux)', gccosandvers=''
> >     intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
> >     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, prototype=define
> >   Linker and Libraries:
> >     ld='cc', ldflags ='-L/usr/eBDAS/system-1.0/lib'
> >     libpth=/usr/eBDAS/system-1.0/lib /lib /usr/lib
> >     libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
> >     perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
> >     libc=, so=so, useshrplib=false, libperl=libperl.a
> >     gnulibc_version='2.3.3'
> >   Dynamic Linking:
> >     dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
> >     cccdlflags='-fpic', lddlflags='-shared -L/usr/eBDAS/system-1.0/lib'
> >
> >
> > Characteristics of this binary (from libperl):
> >   Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES 
> > PERL_IMPLICIT_CONTEXT
> >   Built under linux
> >   Compiled at May 17 2005 16:25:51
> >   %ENV:
> >     PERL5LIB="/usr/eBDAS/ebd-3.0.1/modules:"
> >   @INC:
> >     /usr/eBDAS/ebd-3.0.1/modules
> >     /usr/eBDAS/system-1.0/lib/perl5/5.8.6/i686-linux-thread-multi
> >     /usr/eBDAS/system-1.0/lib/perl5/5.8.6
> >     
> > /usr/eBDAS/system-1.0//lib/perl5/site_perl/5.8.6/i686-linux-thread-multi
> >     /usr/eBDAS/system-1.0//lib/perl5/site_perl/5.8.6
> >     /usr/eBDAS/system-1.0//lib/perl5/site_perl
> >
> >
> >
> > --
> > *Marc Gracia*
> > Oasys Soft
> > Responsable de explotación y sistemas.
> > e-mail : mgracia@oasyssoft.com <ma...@oasyssoft.com>
> >
> 
> 
> -- 
> END 
> ---------------------------------------------------------
>     What doesn't kill us can only make us stronger.
>                Nothing is impossible.
> 				
> Philip M. Gollucci (pgollucci@p6m7g8.com) 301.254.5198
> Consultant / http://p6m7g8.net/Resume/resume.shtml
> Senior Developer / Liquidity Services, Inc.
>      http://www.liquidityservicesinc.com
>         http://www.liquidation.com
>         http://www.uksurplus.com
>         http://www.govliquidation.com
>         http://www.gowholesale.com
> 
> 
> 


--
Marc Gracia 
Oasys Soft 
Responsable de explotación y sistemas. 
e-mail : mgracia@oasyssoft.com

Re: Apache Request problems with tildes...

Posted by Marc Gràcia <mg...@oasyssoft.com>.
I'be just subscribed to libapreq, I'll follow the question there.

El dj 14 de 07 del 2005 a les 11:49 -0400, en/na Philip M. Gollucci va
escriure:

> Forwarding to apreq-dev list.  I might be a ble to look at this but not 
> until later.
> 
> 
> 
> 
> Marc Gràcia wrote:
> 
> > Hi everybody, I think we've found a curious bug in libapreq2.
> >
> > There's a snippet of code on we basically are processing all post 
> > parameters from a request:
> >
> >         if ($req->request_method() eq 'POST')
> >         {
> >                 my $hay_uploads=0;
> >                 foreach my $param (keys %args)
> >                 {
> >                         my $upload = $ar->upload($param);
> >                         if (defined $upload)
> >                         {
> >                             ....
> >                         }
> >                         ...
> >                 }
> >                 ...
> >         }
> >
> > The problem is the value of a post parameter ends with an accentued 
> > char (áó etc... I dont know if you can view that...) the full process 
> > dies in the
> >    
> >     my $upload = $ar->upload($param);
> >
> >      line and an Internal Server Error  is showed in the browser. The 
> > curious part is that this only happens if the value ENDS with the 
> > tilded char, not if the char is in the middle of the value.
> >
> > We are using mod_perl-2.0.1 (also tried with 2.0 and various RC), and 
> > libapreq2-2.05-dev.
> > That do not happens with mod_perl-1.99 / libapreq2-2.04-dev
> >
> > Perl -V output...
> >
> > Summary of my perl5 (revision 5 version 8 subversion 6) configuration:
> >   Platform:
> >     osname=linux, osvers=eBD-system-1.0-r1, 
> > archname=i686-linux-thread-multi
> >     uname='linux ruperta 2.6.5-7.97-smp #1 smp fri jul 2 14:21:59 utc 
> > 2004 i686 i686 i386 gnulinux '
> >     config_args=''
> >     hint=recommended, useposix=true, d_sigaction=define
> >     usethreads=define use5005threads=undef useithreads=define 
> > usemultiplicity=define
> >     useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
> >     use64bitint=undef use64bitall=undef uselongdouble=undef
> >     usemymalloc=y, bincompat5005=undef
> >   Compiler:
> >     cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS 
> > -fno-strict-aliasing -pipe -I/usr/eBDAS/system-1.0/include 
> > -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
> >     optimize='-O3 -mcpu=pentium',
> >     cppflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS 
> > -fno-strict-aliasing -pipe -I/usr/eBDAS/system-1.0/include'
> >     ccversion='', gccversion='3.3.3 (SuSE Linux)', gccosandvers=''
> >     intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
> >     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, prototype=define
> >   Linker and Libraries:
> >     ld='cc', ldflags ='-L/usr/eBDAS/system-1.0/lib'
> >     libpth=/usr/eBDAS/system-1.0/lib /lib /usr/lib
> >     libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
> >     perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
> >     libc=, so=so, useshrplib=false, libperl=libperl.a
> >     gnulibc_version='2.3.3'
> >   Dynamic Linking:
> >     dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
> >     cccdlflags='-fpic', lddlflags='-shared -L/usr/eBDAS/system-1.0/lib'
> >
> >
> > Characteristics of this binary (from libperl):
> >   Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES 
> > PERL_IMPLICIT_CONTEXT
> >   Built under linux
> >   Compiled at May 17 2005 16:25:51
> >   %ENV:
> >     PERL5LIB="/usr/eBDAS/ebd-3.0.1/modules:"
> >   @INC:
> >     /usr/eBDAS/ebd-3.0.1/modules
> >     /usr/eBDAS/system-1.0/lib/perl5/5.8.6/i686-linux-thread-multi
> >     /usr/eBDAS/system-1.0/lib/perl5/5.8.6
> >     
> > /usr/eBDAS/system-1.0//lib/perl5/site_perl/5.8.6/i686-linux-thread-multi
> >     /usr/eBDAS/system-1.0//lib/perl5/site_perl/5.8.6
> >     /usr/eBDAS/system-1.0//lib/perl5/site_perl
> >
> >
> >
> > --
> > *Marc Gracia*
> > Oasys Soft
> > Responsable de explotación y sistemas.
> > e-mail : mgracia@oasyssoft.com <ma...@oasyssoft.com>
> >
> 
> 
> -- 
> END 
> ---------------------------------------------------------
>     What doesn't kill us can only make us stronger.
>                Nothing is impossible.
> 				
> Philip M. Gollucci (pgollucci@p6m7g8.com) 301.254.5198
> Consultant / http://p6m7g8.net/Resume/resume.shtml
> Senior Developer / Liquidity Services, Inc.
>      http://www.liquidityservicesinc.com
>         http://www.liquidation.com
>         http://www.uksurplus.com
>         http://www.govliquidation.com
>         http://www.gowholesale.com
> 
> 
> 


--
Marc Gracia 
Oasys Soft 
Responsable de explotación y sistemas. 
e-mail : mgracia@oasyssoft.com

Re: Apache Request problems with tildes...

Posted by "Philip M. Gollucci" <pg...@p6m7g8.com>.
Forwarding to apreq-dev list.  I might be a ble to look at this but not 
until later.




Marc Gràcia wrote:

> Hi everybody, I think we've found a curious bug in libapreq2.
>
> There's a snippet of code on we basically are processing all post 
> parameters from a request:
>
>         if ($req->request_method() eq 'POST')
>         {
>                 my $hay_uploads=0;
>                 foreach my $param (keys %args)
>                 {
>                         my $upload = $ar->upload($param);
>                         if (defined $upload)
>                         {
>                             ....
>                         }
>                         ...
>                 }
>                 ...
>         }
>
> The problem is the value of a post parameter ends with an accentued 
> char (áó etc... I dont know if you can view that...) the full process 
> dies in the
>    
>     my $upload = $ar->upload($param);
>
>      line and an Internal Server Error  is showed in the browser. The 
> curious part is that this only happens if the value ENDS with the 
> tilded char, not if the char is in the middle of the value.
>
> We are using mod_perl-2.0.1 (also tried with 2.0 and various RC), and 
> libapreq2-2.05-dev.
> That do not happens with mod_perl-1.99 / libapreq2-2.04-dev
>
> Perl -V output...
>
> Summary of my perl5 (revision 5 version 8 subversion 6) configuration:
>   Platform:
>     osname=linux, osvers=eBD-system-1.0-r1, 
> archname=i686-linux-thread-multi
>     uname='linux ruperta 2.6.5-7.97-smp #1 smp fri jul 2 14:21:59 utc 
> 2004 i686 i686 i386 gnulinux '
>     config_args=''
>     hint=recommended, useposix=true, d_sigaction=define
>     usethreads=define use5005threads=undef useithreads=define 
> usemultiplicity=define
>     useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
>     use64bitint=undef use64bitall=undef uselongdouble=undef
>     usemymalloc=y, bincompat5005=undef
>   Compiler:
>     cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS 
> -fno-strict-aliasing -pipe -I/usr/eBDAS/system-1.0/include 
> -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
>     optimize='-O3 -mcpu=pentium',
>     cppflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS 
> -fno-strict-aliasing -pipe -I/usr/eBDAS/system-1.0/include'
>     ccversion='', gccversion='3.3.3 (SuSE Linux)', gccosandvers=''
>     intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
>     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, prototype=define
>   Linker and Libraries:
>     ld='cc', ldflags ='-L/usr/eBDAS/system-1.0/lib'
>     libpth=/usr/eBDAS/system-1.0/lib /lib /usr/lib
>     libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
>     perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
>     libc=, so=so, useshrplib=false, libperl=libperl.a
>     gnulibc_version='2.3.3'
>   Dynamic Linking:
>     dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
>     cccdlflags='-fpic', lddlflags='-shared -L/usr/eBDAS/system-1.0/lib'
>
>
> Characteristics of this binary (from libperl):
>   Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES 
> PERL_IMPLICIT_CONTEXT
>   Built under linux
>   Compiled at May 17 2005 16:25:51
>   %ENV:
>     PERL5LIB="/usr/eBDAS/ebd-3.0.1/modules:"
>   @INC:
>     /usr/eBDAS/ebd-3.0.1/modules
>     /usr/eBDAS/system-1.0/lib/perl5/5.8.6/i686-linux-thread-multi
>     /usr/eBDAS/system-1.0/lib/perl5/5.8.6
>     
> /usr/eBDAS/system-1.0//lib/perl5/site_perl/5.8.6/i686-linux-thread-multi
>     /usr/eBDAS/system-1.0//lib/perl5/site_perl/5.8.6
>     /usr/eBDAS/system-1.0//lib/perl5/site_perl
>
>
>
> --
> *Marc Gracia*
> Oasys Soft
> Responsable de explotación y sistemas.
> e-mail : mgracia@oasyssoft.com <ma...@oasyssoft.com>
>


-- 
END 
---------------------------------------------------------
    What doesn't kill us can only make us stronger.
               Nothing is impossible.
				
Philip M. Gollucci (pgollucci@p6m7g8.com) 301.254.5198
Consultant / http://p6m7g8.net/Resume/resume.shtml
Senior Developer / Liquidity Services, Inc.
     http://www.liquidityservicesinc.com
        http://www.liquidation.com
        http://www.uksurplus.com
        http://www.govliquidation.com
        http://www.gowholesale.com



Re: Apache Request problems with tildes...

Posted by "Philip M. Gollucci" <pg...@p6m7g8.com>.
Forwarding to apreq-dev list.  I might be a ble to look at this but not 
until later.




Marc Gràcia wrote:

> Hi everybody, I think we've found a curious bug in libapreq2.
>
> There's a snippet of code on we basically are processing all post 
> parameters from a request:
>
>         if ($req->request_method() eq 'POST')
>         {
>                 my $hay_uploads=0;
>                 foreach my $param (keys %args)
>                 {
>                         my $upload = $ar->upload($param);
>                         if (defined $upload)
>                         {
>                             ....
>                         }
>                         ...
>                 }
>                 ...
>         }
>
> The problem is the value of a post parameter ends with an accentued 
> char (áó etc... I dont know if you can view that...) the full process 
> dies in the
>    
>     my $upload = $ar->upload($param);
>
>      line and an Internal Server Error  is showed in the browser. The 
> curious part is that this only happens if the value ENDS with the 
> tilded char, not if the char is in the middle of the value.
>
> We are using mod_perl-2.0.1 (also tried with 2.0 and various RC), and 
> libapreq2-2.05-dev.
> That do not happens with mod_perl-1.99 / libapreq2-2.04-dev
>
> Perl -V output...
>
> Summary of my perl5 (revision 5 version 8 subversion 6) configuration:
>   Platform:
>     osname=linux, osvers=eBD-system-1.0-r1, 
> archname=i686-linux-thread-multi
>     uname='linux ruperta 2.6.5-7.97-smp #1 smp fri jul 2 14:21:59 utc 
> 2004 i686 i686 i386 gnulinux '
>     config_args=''
>     hint=recommended, useposix=true, d_sigaction=define
>     usethreads=define use5005threads=undef useithreads=define 
> usemultiplicity=define
>     useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
>     use64bitint=undef use64bitall=undef uselongdouble=undef
>     usemymalloc=y, bincompat5005=undef
>   Compiler:
>     cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS 
> -fno-strict-aliasing -pipe -I/usr/eBDAS/system-1.0/include 
> -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
>     optimize='-O3 -mcpu=pentium',
>     cppflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS 
> -fno-strict-aliasing -pipe -I/usr/eBDAS/system-1.0/include'
>     ccversion='', gccversion='3.3.3 (SuSE Linux)', gccosandvers=''
>     intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
>     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, prototype=define
>   Linker and Libraries:
>     ld='cc', ldflags ='-L/usr/eBDAS/system-1.0/lib'
>     libpth=/usr/eBDAS/system-1.0/lib /lib /usr/lib
>     libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
>     perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
>     libc=, so=so, useshrplib=false, libperl=libperl.a
>     gnulibc_version='2.3.3'
>   Dynamic Linking:
>     dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
>     cccdlflags='-fpic', lddlflags='-shared -L/usr/eBDAS/system-1.0/lib'
>
>
> Characteristics of this binary (from libperl):
>   Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES 
> PERL_IMPLICIT_CONTEXT
>   Built under linux
>   Compiled at May 17 2005 16:25:51
>   %ENV:
>     PERL5LIB="/usr/eBDAS/ebd-3.0.1/modules:"
>   @INC:
>     /usr/eBDAS/ebd-3.0.1/modules
>     /usr/eBDAS/system-1.0/lib/perl5/5.8.6/i686-linux-thread-multi
>     /usr/eBDAS/system-1.0/lib/perl5/5.8.6
>     
> /usr/eBDAS/system-1.0//lib/perl5/site_perl/5.8.6/i686-linux-thread-multi
>     /usr/eBDAS/system-1.0//lib/perl5/site_perl/5.8.6
>     /usr/eBDAS/system-1.0//lib/perl5/site_perl
>
>
>
> --
> *Marc Gracia*
> Oasys Soft
> Responsable de explotación y sistemas.
> e-mail : mgracia@oasyssoft.com <ma...@oasyssoft.com>
>


-- 
END 
---------------------------------------------------------
    What doesn't kill us can only make us stronger.
               Nothing is impossible.
				
Philip M. Gollucci (pgollucci@p6m7g8.com) 301.254.5198
Consultant / http://p6m7g8.net/Resume/resume.shtml
Senior Developer / Liquidity Services, Inc.
     http://www.liquidityservicesinc.com
        http://www.liquidation.com
        http://www.uksurplus.com
        http://www.govliquidation.com
        http://www.gowholesale.com