Bug 810006 - bad library build: ebt_errormsg not resolved
Summary: bad library build: ebt_errormsg not resolved
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: ebtables
Version: 17
Hardware: x86_64
OS: Linux
unspecified
unspecified
Target Milestone: ---
Assignee: Tom "spot" Callaway
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-04-04 21:04 UTC by John Reiser
Modified: 2012-04-18 22:46 UTC (History)
2 users (show)

Fixed In Version: ebtables-2.0.10-5.fc17
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-04-18 22:46:05 UTC
Type: Bug


Attachments (Terms of Use)

Description John Reiser 2012-04-04 21:04:41 UTC
Description of problem: In /var/log/prelink/prelink.log, prelink reports:
/usr/sbin/prelink: Warning: /lib64/ebtables/libebt_ip6.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebt_802_3.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebt_nat.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebt_arp.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebt_arpreply.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebt_ip.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebt_standard.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebt_log.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebt_redirect.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebt_vlan.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebt_mark_m.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebt_mark.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebt_pkttype.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebt_stp.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebt_among.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebt_limit.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebt_ulog.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebt_nflog.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebtable_filter.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebtable_nat.so has undefined non-weak symbols
/usr/sbin/prelink: Warning: /lib64/ebtables/libebtable_broute.so has undefined non-weak symbols

The symbol ebt_errormsg is defined in ebtables/libebtc.so.  An app which uses any of the other libebtable_*.so without also using libebtc.so will crash when the app references ebt_errormsg.  The other libraries rely on libebtc to supply the definition of ebt_errormsg, so each of those other libraries should record the DT_NEEDED dependency (build with "-lebtables/libebtc.so").


Version-Release number of selected component (if applicable):
ebtables-2.0.10-4.fc17.x86_64


How reproducible: every time


Steps to Reproduce:
1. for i in /lib64/ebtables/lib*.so; do readelf --symbols $i | grep ebt_errormsg && echo $i; done

2. ldd /lib64/ebtables/libebt_802_3.so  #  etc.
3.
  
Actual results:
1. Defined in libebtc.so, UNDefined everywhere else:
     7: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND ebt_errormsg
/lib64/ebtables/libebt_802_3.so
    19: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND ebt_errormsg
/lib64/ebtables/libebt_among.so
    10: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND ebt_errormsg
/lib64/ebtables/libebt_arpreply.so
    17: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND ebt_errormsg
/lib64/ebtables/libebt_arp.so
   108: 0000003d9ce12f60   128 OBJECT  GLOBAL DEFAULT   24 ebt_errormsg
/lib64/ebtables/libebtc.so
    19: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND ebt_errormsg
/lib64/ebtables/libebt_ip6.so
    15: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND ebt_errormsg
/lib64/ebtables/libebt_ip.so
    11: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND ebt_errormsg
/lib64/ebtables/libebt_limit.so
    13: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND ebt_errormsg
/lib64/ebtables/libebt_log.so
     7: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND ebt_errormsg
/lib64/ebtables/libebt_mark_m.so
     8: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND ebt_errormsg
/lib64/ebtables/libebt_mark.so
    10: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND ebt_errormsg
/lib64/ebtables/libebt_nat.so
    10: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND ebt_errormsg
/lib64/ebtables/libebt_nflog.so
     9: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND ebt_errormsg
/lib64/ebtables/libebt_pkttype.so
     8: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND ebt_errormsg
/lib64/ebtables/libebt_redirect.so
    16: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND ebt_errormsg
/lib64/ebtables/libebt_stp.so
    10: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND ebt_errormsg
/lib64/ebtables/libebt_ulog.so
     8: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND ebt_errormsg

2. No recorded dependency on libebtc.so:
$ ldd /lib64/ebtables/libebt_802_3.so
	linux-vdso.so.1 =>  (0x00007fffe3f06000)
	libc.so.6 => /lib64/libc.so.6 (0x0000003de3e00000)
	/lib64/ld-linux-x86-64.so.2 (0x0000003de3a00000)

Expected results: Each library which uses ebt_errormsg records a DT_NEEDED dependency on libebtc.so.


Additional info:

Comment 1 Fedora Update System 2012-04-10 18:33:07 UTC
ebtables-2.0.10-5.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/ebtables-2.0.10-5.fc17

Comment 2 Fedora Update System 2012-04-12 01:08:22 UTC
Package ebtables-2.0.10-5.fc17:
* should fix your issue,
* was pushed to the Fedora 17 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing ebtables-2.0.10-5.fc17'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2012-5696/ebtables-2.0.10-5.fc17
then log in and leave karma (feedback).

Comment 3 Fedora Update System 2012-04-18 22:46:05 UTC
ebtables-2.0.10-5.fc17 has been pushed to the Fedora 17 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.