Excellent, the patch solves the crash :-) However, there are still invalid writes (see attachment). Frédéric -- Frédéric Gobry SMARTDATA http://www.smartdata.ch/ PGP: 5B44F4A5 Lausanne - Switzerland +41 21 693 84 98
==25377== Memcheck, a.k.a. Valgrind, a memory error detector for x86-linux. ==25377== Copyright (C) 2002-2003, and GNU GPL'd, by Julian Seward. ==25377== Using valgrind-20030725, a program supervision framework for x86-linux. ==25377== Copyright (C) 2000-2003, and GNU GPL'd, by Julian Seward. ==25377== Estimated CPU clock rate is 600 MHz ==25377== For more details, rerun with: -v ==25377== ==25377== Conditional jump or move depends on uninitialised value(s) ==25377== at 0x41008ABA: _dl_relocate_object_internal (in /lib/ld-2.3.2.so) ==25377== by 0x4111DD70: (within /lib/libc-2.3.2.so) ==25377== by 0x4100B115: _dl_catch_error_internal (in /lib/ld-2.3.2.so) ==25377== by 0x4111DFDB: _dl_open (in /lib/libc-2.3.2.so) ==25377== ==25377== Conditional jump or move depends on uninitialised value(s) ==25377== at 0x41008B05: _dl_relocate_object_internal (in /lib/ld-2.3.2.so) ==25377== by 0x4111DD70: (within /lib/libc-2.3.2.so) ==25377== by 0x4100B115: _dl_catch_error_internal (in /lib/ld-2.3.2.so) ==25377== by 0x4111DFDB: _dl_open (in /lib/libc-2.3.2.so) ==25378== ==25378== Invalid write of size 4 ==25378== at 0x805DFF1: (within /bin/zsh4) ==25378== by 0x805E513: execute (in /bin/zsh4) ==25378== by 0x8061831: (within /bin/zsh4) ==25378== by 0x805FE2C: (within /bin/zsh4) ==25378== Address 0x40C96110 is 0 bytes after a block of size 176 alloc'd ==25378== at 0x40015CE9: realloc (vg_replace_malloc.c:299) ==25378== by 0x4104258C: (within /lib/libc-2.3.2.so) ==25378== by 0x410424B7: putenv (in /lib/libc-2.3.2.so) ==25378== by 0x808955B: addenv (in /bin/zsh4) ==25379== ==25379== Invalid write of size 4 ==25379== at 0x805DFF1: (within /bin/zsh4) ==25379== by 0x805E513: execute (in /bin/zsh4) ==25379== by 0x8061831: (within /bin/zsh4) ==25379== by 0x805FE2C: (within /bin/zsh4) ==25379== Address 0x40C96110 is 0 bytes after a block of size 176 alloc'd ==25379== at 0x40015CE9: realloc (vg_replace_malloc.c:299) ==25379== by 0x4104258C: (within /lib/libc-2.3.2.so) ==25379== by 0x410424B7: putenv (in /lib/libc-2.3.2.so) ==25379== by 0x808955B: addenv (in /bin/zsh4) ==25380== ==25380== Invalid write of size 4 ==25380== at 0x805DFF1: (within /bin/zsh4) ==25380== by 0x805E513: execute (in /bin/zsh4) ==25380== by 0x8061831: (within /bin/zsh4) ==25380== by 0x805FE2C: (within /bin/zsh4) ==25380== Address 0x40C96110 is 0 bytes after a block of size 176 alloc'd ==25380== at 0x40015CE9: realloc (vg_replace_malloc.c:299) ==25380== by 0x4104258C: (within /lib/libc-2.3.2.so) ==25380== by 0x410424B7: putenv (in /lib/libc-2.3.2.so) ==25380== by 0x808955B: addenv (in /bin/zsh4) ==25381== discard syms in /lib/libnss_compat-2.3.2.so due to munmap() ==25381== discard syms in /lib/libnss_nis-2.3.2.so due to munmap() ==25381== discard syms in /lib/libnss_files-2.3.2.so due to munmap() ==25381== ==25381== ERROR SUMMARY: 14 errors from 2 contexts (suppressed: 0 from 0) ==25381== malloc/free: in use at exit: 241444 bytes in 10216 blocks. ==25381== malloc/free: 15820 allocs, 5604 frees, 1865417 bytes allocated. ==25381== For a detailed leak analysis, rerun with: --leak-check=yes ==25381== For counts of detected errors, rerun with: -v ==25382== ==25382== Invalid write of size 4 ==25382== at 0x805DFF1: (within /bin/zsh4) ==25382== by 0x805E513: execute (in /bin/zsh4) ==25382== by 0x8061831: (within /bin/zsh4) ==25382== by 0x805FE2C: (within /bin/zsh4) ==25382== Address 0x40C96110 is 0 bytes after a block of size 176 alloc'd ==25382== at 0x40015CE9: realloc (vg_replace_malloc.c:299) ==25382== by 0x4104258C: (within /lib/libc-2.3.2.so) ==25382== by 0x410424B7: putenv (in /lib/libc-2.3.2.so) ==25382== by 0x808955B: addenv (in /bin/zsh4) ==25383== ==25383== Invalid write of size 4 ==25383== at 0x805DFF1: (within /bin/zsh4) ==25383== by 0x805E513: execute (in /bin/zsh4) ==25383== by 0x8061831: (within /bin/zsh4) ==25383== by 0x805FE2C: (within /bin/zsh4) ==25383== Address 0x40C96110 is 0 bytes after a block of size 176 alloc'd ==25383== at 0x40015CE9: realloc (vg_replace_malloc.c:299) ==25383== by 0x4104258C: (within /lib/libc-2.3.2.so) ==25383== by 0x410424B7: putenv (in /lib/libc-2.3.2.so) ==25383== by 0x808955B: addenv (in /bin/zsh4) ==25377== ==25377== Conditional jump or move depends on uninitialised value(s) ==25377== at 0x4210E154: __memp_fopen_int_4001 (in /usr/lib/libdb-4.1.so) ==25377== by 0x4210DB93: (within /usr/lib/libdb-4.1.so) ==25377== by 0x420C73D3: __db_dbenv_setup_4001 (in /usr/lib/libdb-4.1.so) ==25377== by 0x420D6E8F: __db_dbopen_4001 (in /usr/lib/libdb-4.1.so) ==25377== ==25377== Conditional jump or move depends on uninitialised value(s) ==25377== at 0x4100896A: _dl_relocate_object_internal (in /lib/ld-2.3.2.so) ==25377== by 0x4111DD70: (within /lib/libc-2.3.2.so) ==25377== by 0x4100B115: _dl_catch_error_internal (in /lib/ld-2.3.2.so) ==25377== by 0x4111DFDB: _dl_open (in /lib/libc-2.3.2.so) ==25377== ==25377== Conditional jump or move depends on uninitialised value(s) ==25377== at 0x41008976: _dl_relocate_object_internal (in /lib/ld-2.3.2.so) ==25377== by 0x4111DD70: (within /lib/libc-2.3.2.so) ==25377== by 0x4100B115: _dl_catch_error_internal (in /lib/ld-2.3.2.so) ==25377== by 0x4111DFDB: _dl_open (in /lib/libc-2.3.2.so) ==25377== ==25377== Syscall param open(pathname) contains uninitialised or unaddressable byte(s) ==25377== at 0x410E1778: __libc_open (in /lib/libc-2.3.2.so) ==25377== by 0x41081207: _IO_file_fopen (in /lib/libc-2.3.2.so) ==25377== by 0x4107745C: (within /lib/libc-2.3.2.so) ==25377== by 0x410774BD: _IO_fopen (in /lib/libc-2.3.2.so) ==25377== Address 0x0 is not stack'd, malloc'd or free'd ==25377== ==25377== Conditional jump or move depends on uninitialised value(s) ==25377== at 0x423E2008: gcry_mpi_print (in /usr/lib/libgcrypt.so.1.5.1) ==25377== by 0x423BA982: (within /usr/lib/libgcrypt.so.1.5.1) ==25377== by 0x423BAD7E: gcry_sexp_build (in /usr/lib/libgcrypt.so.1.5.1) ==25377== by 0x42320A14: (within /usr/lib/libgnutls.so.7.0.9) ==25377== ==25377== Conditional jump or move depends on uninitialised value(s) ==25377== at 0x423E2008: gcry_mpi_print (in /usr/lib/libgcrypt.so.1.5.1) ==25377== by 0x423BA982: (within /usr/lib/libgcrypt.so.1.5.1) ==25377== by 0x423BAD7E: gcry_sexp_build (in /usr/lib/libgcrypt.so.1.5.1) ==25377== by 0x42320A34: (within /usr/lib/libgnutls.so.7.0.9) ==25377== ==25377== Conditional jump or move depends on uninitialised value(s) ==25377== at 0x423E2008: gcry_mpi_print (in /usr/lib/libgcrypt.so.1.5.1) ==25377== by 0x423BA982: (within /usr/lib/libgcrypt.so.1.5.1) ==25377== by 0x423BAD7E: gcry_sexp_build (in /usr/lib/libgcrypt.so.1.5.1) ==25377== by 0x423C13C2: gcry_pk_encrypt (in /usr/lib/libgcrypt.so.1.5.1) ==25377== ==25377== Conditional jump or move depends on uninitialised value(s) ==25377== at 0x423E1F6C: gcry_mpi_print (in /usr/lib/libgcrypt.so.1.5.1) ==25377== by 0x4232029C: _gnutls_mpi_print (in /usr/lib/libgnutls.so.7.0.9) ==25377== by 0x4232FF1B: _gnutls_gen_dh_common_client_kx (in /usr/lib/libgnutls.so.7.0.9) ==25377== by 0x4231BF2B: _gnutls_send_client_kx_message (in /usr/lib/libgnutls.so.7.0.9) ==25377== discard syms in /lib/libnss_compat-2.3.2.so due to munmap() ==25377== discard syms in /lib/libnss_nis-2.3.2.so due to munmap() ==25377== discard syms in /lib/libnss_ldap-2.3.2.so due to munmap() ==25377== discard syms in /usr/lib/libldap.so.2.0.122 due to munmap() ==25377== discard syms in /usr/lib/liblber.so.2.0.122 due to munmap() ==25377== discard syms in /usr/lib/libdb-4.1.so due to munmap() ==25377== discard syms in /usr/lib/libsasl2.so.2.0.15 due to munmap() ==25377== discard syms in /usr/lib/libgnutls.so.7.0.9 due to munmap() ==25377== discard syms in /lib/libcrypt-2.3.2.so due to munmap() ==25377== discard syms in /lib/libnss_files-2.3.2.so due to munmap() ==25377== discard syms in /lib/libnss_dns-2.3.2.so due to munmap() ==25377== ==25377== ERROR SUMMARY: 62 errors from 10 contexts (suppressed: 0 from 0) ==25377== malloc/free: in use at exit: 1786659 bytes in 12714 blocks. ==25377== malloc/free: 28010 allocs, 15296 frees, 3831552 bytes allocated. ==25377== For a detailed leak analysis, rerun with: --leak-check=yes ==25377== For counts of detected errors, rerun with: -v
Attachment:
pgpxXNxwJg375.pgp
Description: PGP signature