ebtables: Fix segfault by linking with no-as-needed

Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Khem Raj 2012-12-18 01:51:21 -08:00
parent 9aa5364601
commit eca536954a
2 changed files with 27 additions and 1 deletions

View File

@ -0,0 +1,25 @@
link ebtables with --no-as-needed and adjust the link order to fix runtime crash
Program terminated with signal 11, Segmentation fault.
#0 0x00007ffaa837fb53 in ebt_initialize_entry () from /lib64/ebtables/libebtc.so
(gdb) bt
#0 0x00007ffaa837fb53 in ebt_initialize_entry () from /lib64/ebtables/libebtc.so
#1 0x00007ffaa83824dc in do_command () from /lib64/ebtables/libebtc.so
#2 0x000000000040065c in ?? ()
#3 0x00007ffaa7fed755 in __libc_start_main () from /lib64/libc.so.6
#4 0x0000000000400691 in ?? ()
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Index: ebtables-v2.0.10-4/Makefile
===================================================================
--- ebtables-v2.0.10-4.orig/Makefile 2011-12-15 12:02:47.000000000 -0800
+++ ebtables-v2.0.10-4/Makefile 2012-12-17 22:09:45.065973753 -0800
@@ -90,7 +90,7 @@
$(CC) -shared $(LDFLAGS) -Wl,-soname,libebtc.so -o libebtc.so -lc $(OBJECTS2)
ebtables: $(OBJECTS) ebtables-standalone.o libebtc.so
- $(CC) $(CFLAGS) $(CFLAGS_SH_LIB) $(LDFLAGS) -o $@ ebtables-standalone.o -I$(KERNEL_INCLUDES) -L. -Lextensions -lebtc $(EXT_LIBSI) \
+ $(CC) $(CFLAGS) $(CFLAGS_SH_LIB) $(LDFLAGS) -o $@ ebtables-standalone.o -I$(KERNEL_INCLUDES) -L. -Lextensions -Wl,--no-as-needed $(EXT_LIBSI) -lebtc \
-Wl,-rpath,$(LIBDIR)
ebtablesu: ebtablesu.c

View File

@ -2,12 +2,13 @@ SUMMARY = "Utility for basic Ethernet frame filtering on a Linux bridge, MAC NAT
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=53b4a999993871a28ab1488fdbd2e73e"
SECTION = "console/network"
PR = "r0"
PR = "r1"
SRC_URI = "${SOURCEFORGE_MIRROR}/ebtables/ebtables-v${PV}.tar.gz \
file://installnonroot.patch \
file://01debian_defaultconfig.patch \
file://ebtables.init \
file://no-as-needed.patch \
"
SRC_URI[md5sum] = "506742a3d44b9925955425a659c1a8d0"