apr-bugs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bugzi...@apache.org
Subject DO NOT REPLY [Bug 51244] Incorrect aprlib will be used for aprutil
Date Mon, 23 May 2011 11:40:05 GMT
https://issues.apache.org/bugzilla/show_bug.cgi?id=51244

--- Comment #2 from Krisztian Banhidy <krisztian.banhidy@it-services.hu> 2011-05-23
11:40:05 UTC ---
(In reply to comment #1)
> Can you please clarify:
> 
> - which piece of software "uses the wrong apr-util" (e.g. httpd?)
> - how did you compile that software (configure line)
> - what does ldd show for that software with and without setting LD_LIBRARY_PATH
> - what does "objdump -p" show for that software, especially the entries
> "NEEDED" and "RPATH"
> 
> Regards,
> 
> Rainer

objdump is:
[root@kbanhidy2 apache]# objdump -p /pkg/products/apache/2.2.18/bin/httpd

/pkg/products/apache/2.2.18/bin/httpd:     file format elf64-x86-64

Program Header:
    PHDR off    0x0000000000000040 vaddr 0x0000000000000040 paddr
0x0000000000000040 align 2**3
         filesz 0x00000000000001c0 memsz 0x00000000000001c0 flags r-x
  INTERP off    0x0000000000000200 vaddr 0x0000000000000200 paddr
0x0000000000000200 align 2**0
         filesz 0x000000000000001c memsz 0x000000000000001c flags r--
    LOAD off    0x0000000000000000 vaddr 0x0000000000000000 paddr
0x0000000000000000 align 2**21
         filesz 0x00000000000674ac memsz 0x00000000000674ac flags r-x
    LOAD off    0x0000000000068000 vaddr 0x0000000000268000 paddr
0x0000000000268000 align 2**21
         filesz 0x0000000000004b60 memsz 0x0000000000007f80 flags rw-
 DYNAMIC off    0x00000000000693f0 vaddr 0x00000000002693f0 paddr
0x00000000002693f0 align 2**3
         filesz 0x0000000000000230 memsz 0x0000000000000230 flags rw-
    NOTE off    0x000000000000021c vaddr 0x000000000000021c paddr
0x000000000000021c align 2**2
         filesz 0x0000000000000020 memsz 0x0000000000000020 flags r--
EH_FRAME off    0x00000000000609c8 vaddr 0x00000000000609c8 paddr
0x00000000000609c8 align 2**2
         filesz 0x0000000000001534 memsz 0x0000000000001534 flags r--
   STACK off    0x0000000000000000 vaddr 0x0000000000000000 paddr
0x0000000000000000 align 2**3
         filesz 0x0000000000000000 memsz 0x0000000000000000 flags rw-

Dynamic Section:
  NEEDED      libm.so.6
  NEEDED      libaprutil-1.so.0
  NEEDED      libexpat.so.0
  NEEDED      libapr-1.so.0
  NEEDED      libuuid.so.1
  NEEDED      librt.so.1
  NEEDED      libcrypt.so.1
  NEEDED      libpthread.so.0
  NEEDED      libdl.so.2
  NEEDED      libc.so.6
  RPATH      
/pkg/products/apache/2.2.18/apr-util/lib:/usr/lib64:/pkg/products/apache/2.2.18/apr/lib
  INIT        0x25b10
  FINI        0x563d8
  GNU_HASH    0x240
  STRTAB      0x114b8
  SYMTAB      0x3400
  STRSZ       0x82f6
  SYMENT      0x18
  DEBUG       0x0
  PLTGOT      0x269880
  PLTRELSZ    0x1aa0
  PLTREL      0x7
  JMPREL      0x24070
  RELA        0x1aab8
  RELASZ      0x95b8
  RELAENT     0x18
  VERNEED     0x1aa68
  VERNEEDNUM  0x2
  VERSYM      0x197ae
  RELACOUNT   0x1ae

Version References:
  required from libpthread.so.0:
    0x09691a75 0x00 04 GLIBC_2.2.5
  required from libc.so.6:
    0x0d696913 0x00 03 GLIBC_2.3
    0x09691a75 0x00 02 GLIBC_2.2.5

[root@kbanhidy2 apache]# ldd /pkg/products/apache/2.2.18/bin/httpd
        libm.so.6 => /lib64/libm.so.6 (0x00002b00c162c000)
        libaprutil-1.so.0 =>
/pkg/products/apache/2.2.18/apr-util/lib/libaprutil-1.so.0 (0x00002b00c18af000)
        libexpat.so.0 => /lib64/libexpat.so.0 (0x00002b00c1ad0000)
        libapr-1.so.0 => /usr/lib64/libapr-1.so.0 (0x00002b00c1cf3000)
        libuuid.so.1 => /lib64/libuuid.so.1 (0x00002b00c1f1a000)
        librt.so.1 => /lib64/librt.so.1 (0x00002b00c211e000)
        libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00002b00c2328000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00002b00c2560000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00002b00c277b000)
        libc.so.6 => /lib64/libc.so.6 (0x00002b00c2980000)
        /lib64/ld-linux-x86-64.so.2 (0x00002b00c140f000)

When checking libaprutil-1.so I see following:

[root@kbanhidy2 apache]# objdump -p
/pkg/products/apache/2.2.18/apr-util/lib/libaprutil-1.so

/pkg/products/apache/2.2.18/apr-util/lib/libaprutil-1.so:     file format
elf64-x86-64

Program Header:
    LOAD off    0x0000000000000000 vaddr 0x0000000000000000 paddr
0x0000000000000000 align 2**21
         filesz 0x000000000001f6e4 memsz 0x000000000001f6e4 flags r-x
    LOAD off    0x000000000001f6e8 vaddr 0x000000000021f6e8 paddr
0x000000000021f6e8 align 2**21
         filesz 0x0000000000000fc8 memsz 0x0000000000001090 flags rw-
 DYNAMIC off    0x000000000001fa18 vaddr 0x000000000021fa18 paddr
0x000000000021fa18 align 2**3
         filesz 0x0000000000000210 memsz 0x0000000000000210 flags rw-
EH_FRAME off    0x000000000001be34 vaddr 0x000000000001be34 paddr
0x000000000001be34 align 2**2
         filesz 0x0000000000000bec memsz 0x0000000000000bec flags r--
   STACK off    0x0000000000000000 vaddr 0x0000000000000000 paddr
0x0000000000000000 align 2**3
         filesz 0x0000000000000000 memsz 0x0000000000000000 flags rw-

Dynamic Section:
  NEEDED      libexpat.so.0
  NEEDED      libapr-1.so.0
  NEEDED      libuuid.so.1
  NEEDED      librt.so.1
  NEEDED      libcrypt.so.1
  NEEDED      libpthread.so.0
  NEEDED      libdl.so.2
  NEEDED      libc.so.6
  SONAME      libaprutil-1.so.0
  RPATH       /usr/lib64:/pkg/products/apache/2.2.18/apr/lib
  INIT        0x7dc8
  FINI        0x1a7c8
  GNU_HASH    0x158
  STRTAB      0x3570
  SYMTAB      0xb28
  STRSZ       0x2180
  SYMENT      0x18
  PLTGOT      0x21fcd0
  PLTRELSZ    0x1830
  PLTREL      0x7
  JMPREL      0x6598
  RELA        0x5ae8
  RELASZ      0xab0
  RELAENT     0x18
  VERNEED     0x5a78
  VERNEEDNUM  0x3
  VERSYM      0x56f0
  RELACOUNT   0x3c

Version References:
  required from libpthread.so.0:
    0x09691a75 0x00 05 GLIBC_2.2.5
  required from libcrypt.so.1:
    0x09691a75 0x00 04 GLIBC_2.2.5
  required from libc.so.6:
    0x0d696913 0x00 03 GLIBC_2.3
    0x09691a75 0x00 02 GLIBC_2.2.5

[root@kbanhidy2 apache]# ldd
/pkg/products/apache/2.2.18/apr-util/lib/libaprutil-1.so
        libexpat.so.0 => /lib64/libexpat.so.0 (0x00002aea8f545000)
        libapr-1.so.0 => /usr/lib64/libapr-1.so.0 (0x00002aea8f767000)
        libuuid.so.1 => /lib64/libuuid.so.1 (0x00002aea8f98e000)
        librt.so.1 => /lib64/librt.so.1 (0x00002aea8fb93000)
        libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00002aea8fd9c000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00002aea8ffd4000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00002aea901f0000)
        libc.so.6 => /lib64/libc.so.6 (0x00002aea903f4000)
        /lib64/ld-linux-x86-64.so.2 (0x000000343be00000)

So hence problems with APR-UTIL.

Tested APR 1.4.2 with APR-UTIL 1.3.11 and 1.3.12, libapr-1.so is linked
correctly.
Tested APR 1.4.4 with APR-UTIL 1.3.11 and 1.3.12, libapr-1.so is linked to
/usr/lib64.
Tested APR 1.4.5 with APR-UTIL 1.3.11 libapr-1.so is linked to /usr/lib64.

LDD -s same when Ld_LIBRARY_PATH is set and same when not set.

apr compile
./configure --prefix=$home/$ver/apr --enable-threads --enable-dso
--enable-other-child

apr-util compile
./configure --prefix=$home/$ver/apr-util --enable-util-dso
--with-apr=$home/$ver/apr --with-apr-iconv=../apr-iconv --with-ldap=ldap
--with-ldap-lib=/usr/lib --with-ldap-include=/usr/include/

httpd compile
./configure --prefix=$home/$ver --with-ldap --enable-pie --enable-modules=all
--enable-MODULE=shared --enable-auth-anon --enable-auth-dbm
--enable-auth-digest --enable-authnz-ldap --enable-cache --enable-cern-meta
--enable-charset-lite --enable-dav --enable-dav-fs --enable-dav-lock
--enable-deflate --enable-disk-cache --enable-expires --enable-ext-filter
--enable-file-cache --enable-headers --enable-ldap --enable-logio
--enable-mem-cache --enable-mime-magic --enable-isapi --enable-proxy
--enable-proxy-ajp --enable-proxy-balancer --enable-proxy-connect
--enable-proxy-ftp --enable-proxy-http --enable-rewrite --enable-so
--enable-speling --enable-unique-id --enable-usertrack --enable-vhost-alias
--enable-suexec --enable-ssl=shared --enable-ssl --with-apr=$home/$ver/apr
--with-ssl=$home/$ver/openssl --with-apr-util=$home/$ver/apr-util
--with-mpm=prefork --enable-mods-shared=all --enable-security

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@apr.apache.org
For additional commands, e-mail: bugs-help@apr.apache.org


Mime
View raw message