aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormandree <mandree@FreeBSD.org>2012-04-01 19:18:18 +0800
committermandree <mandree@FreeBSD.org>2012-04-01 19:18:18 +0800
commit70e2fcf9c080f0f76beb89225590c20170680b57 (patch)
tree18116bd50dda01484ea54df49b425969326142ea
parentcba706d2e309f2c51ac8d2d65039f7f527288c45 (diff)
downloadfreebsd-ports-gnome-70e2fcf9c080f0f76beb89225590c20170680b57.tar.gz
freebsd-ports-gnome-70e2fcf9c080f0f76beb89225590c20170680b57.tar.zst
freebsd-ports-gnome-70e2fcf9c080f0f76beb89225590c20170680b57.zip
Fix a rare configuration-dependent crash. Simon Kelley, upstream
maintainer, wrote in message <4F70361B.7080306@thekelleys.org.uk>: A bug has been found in dnsmasq 2.60 that can cause crashes. This is configuration dependent: it either crashes frequently or not at all. The configuration required is one which allows dnsmasq to receive DHCPINFORM requests for which there is no valid dhcp-range. This is rare. Adding the patch he offers for download. Feature safe: yes
-rw-r--r--dns/dnsmasq/Makefile1
-rw-r--r--dns/dnsmasq/files/patch-src__rfc2131.c12
2 files changed, 13 insertions, 0 deletions
diff --git a/dns/dnsmasq/Makefile b/dns/dnsmasq/Makefile
index 226f037ea69a..ecf71e7b59e5 100644
--- a/dns/dnsmasq/Makefile
+++ b/dns/dnsmasq/Makefile
@@ -7,6 +7,7 @@
PORTNAME= dnsmasq
DISTVERSION= 2.60
+PORTREVISION= 1
PORTEPOCH= 1
CATEGORIES= dns ipv6
MASTER_SITES= http://www.thekelleys.org.uk/dnsmasq/ \
diff --git a/dns/dnsmasq/files/patch-src__rfc2131.c b/dns/dnsmasq/files/patch-src__rfc2131.c
new file mode 100644
index 000000000000..dd3174bfb035
--- /dev/null
+++ b/dns/dnsmasq/files/patch-src__rfc2131.c
@@ -0,0 +1,12 @@
+--- ./src/rfc2131.c.orig 2012-03-04 21:04:22.000000000 +0100
++++ ./src/rfc2131.c 2012-04-01 13:14:33.000000000 +0200
+@@ -2095,7 +2095,8 @@
+ struct dhcp_netid_list *id_list;
+
+ /* filter options based on tags, those we want get DHOPT_TAGOK bit set */
+- context->netid.next = NULL;
++ if (context)
++ context->netid.next = NULL;
+ tagif = option_filter(netid, context && context->netid.net ? &context->netid : NULL, config_opts);
+
+ /* logging */