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 : [EMAIL PROTECTED]

--
Marc Gracia
Oasys Soft
Responsable de explotación y sistemas.
e-mail : [EMAIL PROTECTED]

Reply via email to