Subject: | *** glibc detected *** /usr/bin/perl: free(): invalid next size (normal): 0x00000000195b1bf0 *** |
Date: | Wed, 17 Dec 2014 10:32:25 +0100 |
To: | bug-Convert-UUlib [...] rt.cpan.org |
From: | Krzysztof Wojtaś <krzysztof.wojtas [...] netart.pl> |
LSB Version:
:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID: CentOS
Description: CentOS release 5.10 (Final)
Release: 5.10
Codename: Final
perl, v5.8.8 built for x86_64-linux-thread-multi
Linux 2.6.18.8-hdb #1 SMP Fri Oct 8 15:50:04 CEST 2010 x86_64 x86_64
x86_64 GNU/Linux
perl-Convert-UUlib-1.4
Example file:
#!/usr/bin/perl
use Convert::UUlib ':all';
LoadFile('./test_file');
CleanUp();
Content test_file:
:00000000-0004040000000000dafe0000dafe0000b4d40000bad40000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe000086450000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe00005efe0000dafe0000dafe0000dafe0000dafe0000dafe0000bc8f0100dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000dafe0000daf
======= Backtrace: =========
/lib64/libc.so.6[0x342c2714af]
/lib64/libc.so.6(cfree+0x4b)[0x342c2757ab]
/usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi/auto/Convert/UUlib/UUlib.so(UUCleanUp+0x1f8)[0x2b10f0d32c08]
/usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi/auto/Convert/UUlib/UUlib.so(XS_Convert__UUlib_CleanUp+0x7e)[0x2b10f0d3159e]
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so(Perl_pp_entersub+0x3f6)[0x3433690ad6]
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so(Perl_runops_standard+0xe)[0x343368a37e]
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so(perl_run+0x30a)[0x34336380ba]
/usr/bin/perl(main+0xfc)[0x4017bc]
/lib64/libc.so.6(__libc_start_main+0xf4)[0x342c21d9f4]
/usr/bin/perl[0x401609]
(gdb) bt
#0 0x000000342c22ffc5 in raise (sig=<value optimized out>) at
../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1 0x000000342c231a70 in abort () at abort.c:88
#2 0x000000342c26994b in __libc_message (do_abort=2, fmt=0x342c323828
"*** glibc detected *** %s: %s: 0x%s ***\n") at
../sysdeps/unix/sysv/linux/libc_fatal.c:170
#3 0x000000342c2714af in malloc_printerr (av=0x342c5549e0, p=0x6d64e0,
have_lock=0) at malloc.c:6232
#4 _int_free (av=0x342c5549e0, p=0x6d64e0, have_lock=0) at malloc.c:4759
#5 0x000000342c2757ab in __libc_free (mem=<value optimized out>) at
malloc.c:3670
#6 0x00002aaaae0c7c08 in UUCleanUp () at uulib.c:1365
#7 0x00002aaaae0c659e in XS_Convert__UUlib_CleanUp (my_perl=<value
optimized out>, cv=0x6c95e0) at UUlib.xs:291
#8 0x0000003433690ad6 in Perl_pp_entersub () from
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so
#9 0x000000343368a37e in Perl_runops_standard () from
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so
#10 0x00000034336380ba in perl_run () from
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so
#11 0x00000000004017bc in main ()
valgrind:
==965== Invalid write of size 1
==965== at 0x860877A: UUDecodeLine (uunconc.c:691)
==965== by 0x86121AA: ScanData (uuscan.c:1106)
==965== by 0x86129AF: ScanPart (uuscan.c:3141)
==965== by 0x8603D80: UULoadFileWithPartNo (uulib.c:788)
==965== by 0x85FFB5F: XS_Convert__UUlib_LoadFile (UUlib.xs:382)
==965== by 0x3433690AD5: Perl_pp_entersub (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x343368A37D: Perl_runops_standard (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x34336380B9: perl_run (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x4017BB: main (in /usr/bin/perl)
==965== Address 0x4e4cffc is 0 bytes after a block of size 300 alloc'd
==965== at 0x4A0610C: malloc (vg_replace_malloc.c:195)
==965== by 0x8602745: UUInitialize (uulib.c:399)
==965== by 0x860169D: XS_Convert__UUlib_Initialize (UUlib.xs:281)
==965== by 0x3433690AD5: Perl_pp_entersub (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x343368A37D: Perl_runops_standard (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x343363771F: Perl_call_sv (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x3433637A98: Perl_call_list (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x3433665673: Perl_newATTRSUB (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x3433663CF5: Perl_utilize (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x3433656D38: Perl_yyparse (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x3433635D91: ??? (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x34336385D8: perl_parse (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965==
==965== Invalid write of size 1
==965== at 0x8608786: UUDecodeLine (uunconc.c:692)
==965== by 0x86121AA: ScanData (uuscan.c:1106)
==965== by 0x86129AF: ScanPart (uuscan.c:3141)
==965== by 0x8603D80: UULoadFileWithPartNo (uulib.c:788)
==965== by 0x85FFB5F: XS_Convert__UUlib_LoadFile (UUlib.xs:382)
==965== by 0x3433690AD5: Perl_pp_entersub (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x343368A37D: Perl_runops_standard (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x34336380B9: perl_run (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x4017BB: main (in /usr/bin/perl)
==965== Address 0x4e4cffd is 1 bytes after a block of size 300 alloc'd
==965== at 0x4A0610C: malloc (vg_replace_malloc.c:195)
==965== by 0x8602745: UUInitialize (uulib.c:399)
==965== by 0x860169D: XS_Convert__UUlib_Initialize (UUlib.xs:281)
==965== by 0x3433690AD5: Perl_pp_entersub (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x343368A37D: Perl_runops_standard (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x343363771F: Perl_call_sv (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x3433637A98: Perl_call_list (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x3433665673: Perl_newATTRSUB (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x3433663CF5: Perl_utilize (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x3433656D38: Perl_yyparse (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x3433635D91: ??? (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x34336385D8: perl_parse (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965==
==965== Invalid write of size 1
==965== at 0x860878E: UUDecodeLine (uunconc.c:693)
==965== by 0x86121AA: ScanData (uuscan.c:1106)
==965== by 0x86129AF: ScanPart (uuscan.c:3141)
==965== by 0x8603D80: UULoadFileWithPartNo (uulib.c:788)
==965== by 0x85FFB5F: XS_Convert__UUlib_LoadFile (UUlib.xs:382)
==965== by 0x3433690AD5: Perl_pp_entersub (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x343368A37D: Perl_runops_standard (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x34336380B9: perl_run (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x4017BB: main (in /usr/bin/perl)
==965== Address 0x4e4cffe is 2 bytes after a block of size 300 alloc'd
==965== at 0x4A0610C: malloc (vg_replace_malloc.c:195)
==965== by 0x8602745: UUInitialize (uulib.c:399)
==965== by 0x860169D: XS_Convert__UUlib_Initialize (UUlib.xs:281)
==965== by 0x3433690AD5: Perl_pp_entersub (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x343368A37D: Perl_runops_standard (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x343363771F: Perl_call_sv (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x3433637A98: Perl_call_list (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x3433665673: Perl_newATTRSUB (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x3433663CF5: Perl_utilize (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x3433656D38: Perl_yyparse (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x3433635D91: ??? (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965== by 0x34336385D8: perl_parse (in
/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE/libperl.so)
==965==
Possible cause of the problem:
ranges exceeding the size of the array d
./uulib/uunconc.c +691
Krzysztof Wojtaś
Message body is not shown because it is too large.