mirror of
https://github.com/motioneye-project/motioneyeos.git
synced 2025-07-27 21:26:36 +00:00
bind: bump version and convert to Makefile.autotools.in
Patch by Gustavo Zacarias <gustavo@zacarias.com.ar> Closes #145. Current bind package is version 9.3.2 which is from the 9.3 branch and is EOLed. It has many security bugs probably fixed in 9.3.6-P1 but since it won't be supported for long it's probably metter to move on to a supported branch. CVE-2009-0025, CVE-2008-1447, CVE-2008-0122, CVE-2007-2926 and probably more. While at it migrate to Makefile.autotools.in too. Also introduced an option for/not to install userland tools (dig, host, nslookup, nsupdate). [ Peter: don't install into staging ]
This commit is contained in:
parent
2676c2029b
commit
1b276bb2b9
@ -22,3 +22,10 @@ config BR2_PACKAGE_BIND
|
|||||||
intended to be linked with applications requiring name service.
|
intended to be linked with applications requiring name service.
|
||||||
|
|
||||||
http://www.isc.org/sw/bind/
|
http://www.isc.org/sw/bind/
|
||||||
|
|
||||||
|
config BR2_PACKAGE_BIND_TOOLS
|
||||||
|
bool "Install tools"
|
||||||
|
depends on BR2_PACKAGE_BIND
|
||||||
|
help
|
||||||
|
Install tools (host, nslookup, dig, nsupdate)
|
||||||
|
|
||||||
|
@ -1,33 +0,0 @@
|
|||||||
---
|
|
||||||
lib/isc/unix/ifiter_ioctl.c | 7 ++++---
|
|
||||||
1 file changed, 4 insertions(+), 3 deletions(-)
|
|
||||||
|
|
||||||
Index: bind-9.3.2/lib/isc/unix/ifiter_ioctl.c
|
|
||||||
===================================================================
|
|
||||||
--- bind-9.3.2.orig/lib/isc/unix/ifiter_ioctl.c
|
|
||||||
+++ bind-9.3.2/lib/isc/unix/ifiter_ioctl.c
|
|
||||||
@@ -17,11 +17,12 @@
|
|
||||||
|
|
||||||
/* $Id: ifiter_ioctl.c,v 1.19.2.5.2.17 2005/10/14 02:13:07 marka Exp $ */
|
|
||||||
|
|
||||||
+#include <string.h>
|
|
||||||
+
|
|
||||||
/*
|
|
||||||
* Obtain the list of network interfaces using the SIOCGLIFCONF ioctl.
|
|
||||||
* See netintro(4).
|
|
||||||
*/
|
|
||||||
-
|
|
||||||
#if defined(SIOCGLIFCONF) && defined(SIOCGLIFADDR)
|
|
||||||
#ifdef ISC_PLATFORM_HAVEIF_LADDRCONF
|
|
||||||
#define lifc_len iflc_len
|
|
||||||
@@ -478,8 +479,8 @@
|
|
||||||
for (i = 0; i < 16; i++) {
|
|
||||||
unsigned char byte;
|
|
||||||
static const char hex[] = "0123456789abcdef";
|
|
||||||
- byte = ((index(hex, address[i * 2]) - hex) << 4) |
|
|
||||||
- (index(hex, address[i * 2 + 1]) - hex);
|
|
||||||
+ byte = ((strchr(hex, address[i * 2]) - hex) << 4) |
|
|
||||||
+ (strchr(hex, address[i * 2 + 1]) - hex);
|
|
||||||
addr6.s6_addr[i] = byte;
|
|
||||||
}
|
|
||||||
iter->current.af = AF_INET6;
|
|
14
package/bind/bind-9.5.1-P1-cross.patch
Normal file
14
package/bind/bind-9.5.1-P1-cross.patch
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
diff -Nura bind-9.5.1-P1/lib/dns/Makefile.in bind-9.5.1-P1.gencross/lib/dns/Makefile.in
|
||||||
|
--- bind-9.5.1-P1/lib/dns/Makefile.in 2007-09-11 22:09:08.000000000 -0300
|
||||||
|
+++ bind-9.5.1-P1.gencross/lib/dns/Makefile.in 2009-03-04 16:35:23.000000000 -0200
|
||||||
|
@@ -160,8 +160,8 @@
|
||||||
|
./gen -s ${srcdir} > code.h
|
||||||
|
|
||||||
|
gen: gen.c
|
||||||
|
- ${BUILD_CC} ${BUILD_CFLAGS} -I${top_srcdir}/lib/isc/include \
|
||||||
|
- ${BUILD_CPPFLAGS} ${BUILD_LDFLAGS} -o $@ ${srcdir}/gen.c ${BUILD_LIBS}
|
||||||
|
+ ${HOSTCC} ${HOST_CFLAGS} -I${top_srcdir}/lib/isc/include \
|
||||||
|
+ ${HOST_LDFLAGS} -o $@ ${srcdir}/gen.c
|
||||||
|
|
||||||
|
rbtdb64.@O@: rbtdb.c
|
||||||
|
|
23
package/bind/bind-9.5.1-P1-susv3-legacy.patch
Normal file
23
package/bind/bind-9.5.1-P1-susv3-legacy.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
diff -Nura bind-9.5.1-P1/lib/isc/unix/ifiter_ioctl.c bind-9.5.1-P1.nosusv3/lib/isc/unix/ifiter_ioctl.c
|
||||||
|
--- bind-9.5.1-P1/lib/isc/unix/ifiter_ioctl.c 2007-08-30 03:02:28.000000000 -0300
|
||||||
|
+++ bind-9.5.1-P1.nosusv3/lib/isc/unix/ifiter_ioctl.c 2009-03-04 16:31:20.000000000 -0200
|
||||||
|
@@ -17,6 +17,8 @@
|
||||||
|
|
||||||
|
/* $Id: ifiter_ioctl.c,v 1.58 2007/08/30 06:02:28 marka Exp $ */
|
||||||
|
|
||||||
|
+#include <string.h>
|
||||||
|
+
|
||||||
|
/*! \file
|
||||||
|
* \brief
|
||||||
|
* Obtain the list of network interfaces using the SIOCGLIFCONF ioctl.
|
||||||
|
@@ -479,8 +481,8 @@
|
||||||
|
for (i = 0; i < 16; i++) {
|
||||||
|
unsigned char byte;
|
||||||
|
static const char hex[] = "0123456789abcdef";
|
||||||
|
- byte = ((index(hex, address[i * 2]) - hex) << 4) |
|
||||||
|
- (index(hex, address[i * 2 + 1]) - hex);
|
||||||
|
+ byte = ((strchr(hex, address[i * 2]) - hex) << 4) |
|
||||||
|
+ (strchr(hex, address[i * 2 + 1]) - hex);
|
||||||
|
addr6.s6_addr[i] = byte;
|
||||||
|
}
|
||||||
|
iter->current.af = AF_INET6;
|
@ -1,11 +0,0 @@
|
|||||||
--- bind-9.3.2/lib/dns/Makefile.in
|
|
||||||
+++ bind-9.3.2/lib/dns/Makefile.in
|
|
||||||
@@ -156,7 +156,7 @@
|
|
||||||
./gen -s ${srcdir} > code.h
|
|
||||||
|
|
||||||
gen: gen.c
|
|
||||||
- ${CC} ${ALL_CFLAGS} ${LDFLAGS} -o $@ ${srcdir}/gen.c ${LIBS}
|
|
||||||
+ cc ${ALL_CFLAGS} -o $@ ${srcdir}/gen.c
|
|
||||||
|
|
||||||
rbtdb64.@O@: rbtdb.c
|
|
||||||
|
|
@ -3,99 +3,45 @@
|
|||||||
# bind
|
# bind
|
||||||
#
|
#
|
||||||
#############################################################
|
#############################################################
|
||||||
BIND_VERSION:=9.3.2
|
BIND_VERSION = 9.5.1-P1
|
||||||
BIND_SOURCE:=bind-$(BIND_VERSION).tar.gz
|
BIND_SOURCE = bind-$(BIND_VERSION).tar.gz
|
||||||
BIND_SITE:=ftp://ftp.isc.org/isc/bind9/$(BIND_VERSION)
|
BIND_SITE = ftp://ftp.isc.org/isc/bind9/$(BIND_VERSION)
|
||||||
BIND_DIR1:=$(TOOL_BUILD_DIR)/bind-$(BIND_VERSION)
|
BIND_LIBTOOL_PATCH = NO
|
||||||
BIND_DIR2:=$(BUILD_DIR)/bind-$(BIND_VERSION)
|
BIND_DEPENDENCIES = uclibc
|
||||||
BIND_CAT:=$(ZCAT)
|
BIND_INSTALL_STAGING = NO
|
||||||
BIND_BINARY:=bin/named/named
|
BIND_INSTALL_TARGET_OPT = DESTDIR=$(TARGET_DIR) install
|
||||||
BIND_TARGET_BINARY:=usr/sbin/named
|
BIND_TARGET_SBINS = lwresd named named-checkconf named-checkzone
|
||||||
|
BIND_TARGET_SBINS += named-compilezone rndc rndc-confgen
|
||||||
$(DL_DIR)/$(BIND_SOURCE):
|
BIND_TARGET_SBINS += dnssec-keygen dnssec-signzone
|
||||||
$(call DOWNLOAD,$(BIND_SITE),$(BIND_SOURCE))
|
BIND_TARGET_BINS = dig host nslookup nsupdate
|
||||||
|
BIND_TARGET_LIBS = libbind9.* libdns.* libisccc.* libisccfg.* libisc.* liblwres.*
|
||||||
bind-source: $(DL_DIR)/$(BIND_SOURCE)
|
BIND_CONF_ENV = BUILD_CC="$(TARGET_CC)" \
|
||||||
|
BUILD_CFLAGS="$(TARGET_CFLAGS)"
|
||||||
#############################################################
|
BIND_CONF_OPT = $(DISABLE_IPV6) \
|
||||||
#
|
|
||||||
# build bind for use on the target system
|
|
||||||
#
|
|
||||||
#############################################################
|
|
||||||
$(BIND_DIR2)/.unpacked: $(DL_DIR)/$(BIND_SOURCE)
|
|
||||||
$(BIND_CAT) $(DL_DIR)/$(BIND_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
|
|
||||||
toolchain/patch-kernel.sh $(BIND_DIR2) package/bind/ bind\*.patch
|
|
||||||
touch $@
|
|
||||||
|
|
||||||
$(BIND_DIR2)/Makefile: $(BIND_DIR2)/.unpacked
|
|
||||||
(cd $(BIND_DIR2); rm -rf config.cache; \
|
|
||||||
$(TARGET_CONFIGURE_OPTS) \
|
|
||||||
$(TARGET_CONFIGURE_ARGS) \
|
|
||||||
./configure \
|
|
||||||
--target=$(GNU_TARGET_NAME) \
|
|
||||||
--host=$(GNU_TARGET_NAME) \
|
|
||||||
--build=$(GNU_HOST_NAME) \
|
|
||||||
--prefix=/usr \
|
|
||||||
--libdir=/lib \
|
|
||||||
--libexecdir=/usr/lib \
|
|
||||||
--libdir=/lib \
|
|
||||||
--includedir=/include \
|
|
||||||
--sysconfdir=/etc \
|
--sysconfdir=/etc \
|
||||||
--localstatedir=/var \
|
--localstatedir=/var \
|
||||||
--without-openssl \
|
--with-randomdev=/dev/urandom \
|
||||||
--with-randomdev=/dev/random \
|
--with-openssl=no \
|
||||||
$(DISABLE_IPV6) \
|
--with-libxml2=no \
|
||||||
--with-libtool \
|
|
||||||
--with-pic \
|
--with-pic \
|
||||||
)
|
--with-libtool \
|
||||||
|
--disable-epoll \
|
||||||
|
--disable-threads
|
||||||
|
|
||||||
$(BIND_DIR2)/$(BIND_BINARY): $(BIND_DIR2)/Makefile
|
$(eval $(call AUTOTARGETS,package,bind))
|
||||||
$(MAKE) $(TARGET_CONFIGURE_OPTS) -j1 -C $(BIND_DIR2)
|
|
||||||
touch -c $@
|
|
||||||
|
|
||||||
#############################################################
|
$(BIND_HOOK_POST_INSTALL):
|
||||||
#
|
rm -f $(TARGET_DIR)/isc-config.sh
|
||||||
# install bind binaries
|
ifneq ($(BR2_PACKAGE_BIND_TOOLS),y)
|
||||||
#
|
rm -rf $(addprefix $(TARGET_DIR)/usr/bin/, $(BIND_TARGET_BINS))
|
||||||
#############################################################
|
endif
|
||||||
$(TARGET_DIR)/$(BIND_TARGET_BINARY): $(BIND_DIR2)/$(BIND_BINARY)
|
|
||||||
$(MAKE) $(TARGET_CONFIGURE_OPTS) -j1 MAKEDEFS="INSTALL_DATA=true" \
|
|
||||||
DESTDIR=$(TARGET_DIR) -C $(BIND_DIR2)/bin install
|
|
||||||
cd $(TARGET_DIR)/usr/man; rmdir --ignore-fail-on-non-empty man8 man5 `pwd`
|
|
||||||
$(INSTALL) -m 0755 -D package/bind/bind.sysvinit $(TARGET_DIR)/etc/init.d/S81named
|
$(INSTALL) -m 0755 -D package/bind/bind.sysvinit $(TARGET_DIR)/etc/init.d/S81named
|
||||||
|
|
||||||
bind-bin: $(TARGET_DIR)/$(BIND_TARGET_BINARY) bind-lib
|
$(BIND_TARGET_UNINSTALL):
|
||||||
|
$(call MESSAGE,"Uninstalling")
|
||||||
#############################################################
|
rm -rf $(addprefix $(TARGET_DIR)/usr/sbin/, $(BIND_TARGET_SBINS))
|
||||||
#
|
rm -rf $(addprefix $(TARGET_DIR)/usr/bin/, $(BIND_TARGET_BINS))
|
||||||
# install bind libraries
|
rm -rf $(addprefix $(TARGET_DIR)/usr/lib/, $(BIND_TARGET_LIBS))
|
||||||
#
|
rm -f $(TARGET_DIR)/etc/init.d/S81named
|
||||||
#############################################################
|
rm -f $(BIND_TARGET_INSTALL_TARGET) $(BIND_HOOK_POST_INSTALL)
|
||||||
$(STAGING_DIR)/lib/libdns.so: $(BIND_DIR2)/$(BIND_BINARY)
|
|
||||||
$(MAKE) $(TARGET_CONFIGURE_OPTS) -j1 DESTDIR=$(STAGING_DIR) -C $(BIND_DIR2)/lib install
|
|
||||||
|
|
||||||
$(TARGET_DIR)/lib/libdns.so: $(STAGING_DIR)/lib/libdns.so
|
|
||||||
mkdir -p $(TARGET_DIR)/lib
|
|
||||||
cd $(STAGING_DIR)/lib; \
|
|
||||||
cp -a libdns*so* libisc*so* libbind9*so* \
|
|
||||||
liblwres*so* $(TARGET_DIR)/lib
|
|
||||||
|
|
||||||
bind-lib: $(STAGING_DIR)/lib/libdns.so $(TARGET_DIR)/lib/libdns.so
|
|
||||||
|
|
||||||
bind: uclibc bind-bin bind-lib
|
|
||||||
|
|
||||||
bind-clean:
|
|
||||||
-$(MAKE) -C $(BIND_DIR2) clean
|
|
||||||
|
|
||||||
bind-dirclean:
|
|
||||||
rm -rf $(BIND_DIR2)
|
|
||||||
|
|
||||||
#############################################################
|
|
||||||
#
|
|
||||||
# Toplevel Makefile options
|
|
||||||
#
|
|
||||||
#############################################################
|
|
||||||
ifeq ($(BR2_PACKAGE_BIND),y)
|
|
||||||
TARGETS+=bind
|
|
||||||
endif
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user