From 386edc3045049c84fad80a01378c764639845ca2 Mon Sep 17 00:00:00 2001 From: cyrus Date: Tue, 14 Apr 2015 08:31:53 +0000 Subject: [PATCH] odhcpd: avoid illegal memory access in some corner cases Signed-off-by: Steven Barth git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45428 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/network/ipv6/odhcp6c/Makefile | 15 +++------------ package/network/ipv6/odhcp6c/files/dhcpv6.script | 8 ++++++++ package/network/services/odhcpd/Makefile | 4 ++-- 3 files changed, 13 insertions(+), 14 deletions(-) diff --git a/package/network/ipv6/odhcp6c/Makefile b/package/network/ipv6/odhcp6c/Makefile index 61f9574c14..ce36cb76ff 100644 --- a/package/network/ipv6/odhcp6c/Makefile +++ b/package/network/ipv6/odhcp6c/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2012-2014 OpenWrt.org +# Copyright (C) 2012-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,24 +8,20 @@ include $(TOPDIR)/rules.mk PKG_NAME:=odhcp6c -PKG_VERSION:=2015-04-10 +PKG_VERSION:=2015-04-13 PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE_URL:=https://github.com/sbyx/odhcp6c.git PKG_SOURCE_PROTO:=git -PKG_SOURCE_VERSION:=c3bbeced0f204b6b9571148ae84227105baaf179 +PKG_SOURCE_VERSION:=19c64c524614ea7fdbcedcc50d6980f096ccadb9 PKG_MAINTAINER:=Steven Barth PKG_LICENSE:=GPL-2.0 include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/cmake.mk -ifneq ($(CONFIG_PACKAGE_odhcp6c_ext_prefix_class),0) - CMAKE_OPTIONS += -DEXT_PREFIX_CLASS=$(CONFIG_PACKAGE_odhcp6c_ext_prefix_class) -endif - ifneq ($(CONFIG_PACKAGE_odhcp6c_ext_cer_id),0) CMAKE_OPTIONS += -DEXT_CER_ID=$(CONFIG_PACKAGE_odhcp6c_ext_cer_id) endif @@ -38,11 +34,6 @@ define Package/odhcp6c endef define Package/odhcp6c/config - config PACKAGE_odhcp6c_ext_prefix_class - int "Prefix Class Extension ID (0 = disabled)" - depends on PACKAGE_odhcp6c - default 0 - config PACKAGE_odhcp6c_ext_cer_id int "CER-ID Extension ID (0 = disabled)" depends on PACKAGE_odhcp6c diff --git a/package/network/ipv6/odhcp6c/files/dhcpv6.script b/package/network/ipv6/odhcp6c/files/dhcpv6.script index 8cfa929002..be74b01e4e 100755 --- a/package/network/ipv6/odhcp6c/files/dhcpv6.script +++ b/package/network/ipv6/odhcp6c/files/dhcpv6.script @@ -20,6 +20,14 @@ setup_interface () { proto_add_dns_server "$dns" done + for radomain in $RA_DOMAINS; do + local duplicate=0 + for domain in $DOMAINS; do + [ "$radomain" = "$domain" ] && duplicate=1 + done + [ "$duplicate" = 0 ] && DOMAINS="$DOMAINS $radomain" + done + for domain in $DOMAINS; do proto_add_dns_search "$domain" done diff --git a/package/network/services/odhcpd/Makefile b/package/network/services/odhcpd/Makefile index 3e9841f3f5..a3817c0a27 100644 --- a/package/network/services/odhcpd/Makefile +++ b/package/network/services/odhcpd/Makefile @@ -8,14 +8,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:=odhcpd -PKG_VERSION:=2015-04-10 +PKG_VERSION:=2015-04-13 PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE_URL:=git://github.com/sbyx/odhcpd.git PKG_SOURCE_PROTO:=git -PKG_SOURCE_VERSION:=e23972527f93a3d2a5412400384519ff550708b7 +PKG_SOURCE_VERSION:=a06dd6481cd046e4856774ac32cdc11f4bc721e2 PKG_MAINTAINER:=Steven Barth PKG_LICENSE:=GPL-2.0 -- 2.11.0