#
-# Copyright (C) 2006-2009 OpenWrt.org
+# Copyright (C) 2006-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
include $(TOPDIR)/rules.mk
PKG_NAME:=dnsmasq
-PKG_VERSION:=2.51
-PKG_RELEASE:=3
+PKG_VERSION:=2.52
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://thekelleys.org.uk/dnsmasq
-PKG_MD5SUM:=97465261a6de5258a3c3edfe51ca16a4
+PKG_MD5SUM:=1bb32fffdb4f977ead607802b5d701d0
include $(INCLUDE_DIR)/package.mk
-Index: dnsmasq-2.51/src/config.h
-===================================================================
---- dnsmasq-2.51.orig/src/config.h
-+++ dnsmasq-2.51/src/config.h
-@@ -270,8 +270,9 @@ NOTES:
+--- a/src/config.h
++++ b/src/config.h
+@@ -269,8 +269,9 @@ NOTES:
/* We assume that systems which don't have IPv6
headers don't have ntop and pton either */
-#if defined(INET6_ADDRSTRLEN) && defined(IPV6_V6ONLY) && !defined(NO_IPV6)
+#if defined(INET6_ADDRSTRLEN) && !defined(NO_IPV6)
# define HAVE_IPV6
-+# define IPV6_V6ONLY 26
++# define IPV6_V6ONLY 26
# define ADDRSTRLEN INET6_ADDRSTRLEN
# if defined(SOL_IPV6)
# define IPV6_LEVEL SOL_IPV6
+++ /dev/null
-Index: dnsmasq-2.51/src/netlink.c
-===================================================================
---- dnsmasq-2.51.orig/src/netlink.c
-+++ dnsmasq-2.51/src/netlink.c
-@@ -129,6 +129,7 @@ int iface_enumerate(void *parm, int (*ip
- ssize_t len;
- static unsigned int seq = 0;
- int family = AF_INET;
-+ int ipv4_done = 0;
-
- struct {
- struct nlmsghdr nlh;
-@@ -207,9 +208,12 @@ int iface_enumerate(void *parm, int (*ip
- rta = RTA_NEXT(rta, len1);
- }
-
-- if (addr.s_addr && ipv4_callback)
-+ if (addr.s_addr && ipv4_callback) {
- if (!((*ipv4_callback)(addr, ifa->ifa_index, netmask, broadcast, parm)))
- return 0;
-+ else
-+ ipv4_done = 1;
-+ }
- }
- #ifdef HAVE_IPV6
- else if (ifa->ifa_family == AF_INET6)
-@@ -225,7 +229,7 @@ int iface_enumerate(void *parm, int (*ip
-
- if (addrp && ipv6_callback)
- if (!((*ipv6_callback)(addrp, ifa->ifa_index, ifa->ifa_index, parm)))
-- return 0;
-+ return ipv4_done;
- }
- #endif
- }
-Index: dnsmasq-2.51/src/network.c
-===================================================================
---- dnsmasq-2.51.orig/src/network.c
-+++ dnsmasq-2.51/src/network.c
-@@ -302,7 +302,7 @@ static int create_ipv6_listener(struct l
- bind(tcpfd, (struct sockaddr *)&addr, sa_len(&addr)) == -1 ||
- listen(tcpfd, 5) == -1 ||
- bind(fd, (struct sockaddr *)&addr, sa_len(&addr)) == -1)
-- return 0;
-+ return 1;
-
- l = safe_malloc(sizeof(struct listener));
- l->fd = fd;