From 813846518bb409f778cbbbccae87240a3414e6d4 Mon Sep 17 00:00:00 2001 From: Renato Botelho Date: Wed, 4 Oct 2017 13:56:16 -0300 Subject: Revert "Revert "Fix up pxelogic.0 suffix logic."" This reverts commit 74d82497c9a79972fbae0119332b5b95b98ccce0. --- dns/dnsmasq/Makefile | 2 +- dns/dnsmasq/files/patch-src_rfc2131.c | 30 ++++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 dns/dnsmasq/files/patch-src_rfc2131.c diff --git a/dns/dnsmasq/Makefile b/dns/dnsmasq/Makefile index 908dee5..d67fc6e 100644 --- a/dns/dnsmasq/Makefile +++ b/dns/dnsmasq/Makefile @@ -3,7 +3,7 @@ PORTNAME= dnsmasq DISTVERSION= 2.77 -PORTREVISION= 0 # leave this in even if 0 to avoid PORTEPOCH bumps +PORTREVISION= 1 # leave this in even if 0 to avoid PORTEPOCH bumps 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 0000000..2e4ab8d --- /dev/null +++ b/dns/dnsmasq/files/patch-src_rfc2131.c @@ -0,0 +1,30 @@ +commit 2446514e716075cfe2be35e2a9b9de4eacdbac99 +Author: Chris Novakovic +Date: Tue Jun 6 23:02:59 2017 +0100 + + Fix logic of appending "." to PXE basename + + Commit f77700aa, which fixes a compiler warning, also breaks the + behaviour of prepending "." to basenames in --pxe-service: in + situations where the basename contains a ".", the "." suffix is + erroneously added, and in situations where the basename doesn't contain + a ".", the "." suffix is erroneously omitted. + + A patch against the git HEAD is attached that inverts this logic and + restores the expected behaviour of --pxe-service. + +--- src/rfc2131.c.orig 2017-05-22 21:58:46 UTC ++++ src/rfc2131.c +@@ -836,10 +836,10 @@ size_t dhcp_reply(struct dhcp_context *c + + if (strchr(service->basename, '.')) + snprintf((char *)mess->file, sizeof(mess->file), +- "%s.%d", service->basename, layer); ++ "%s", service->basename); + else + snprintf((char *)mess->file, sizeof(mess->file), +- "%s", service->basename); ++ "%s.%d", service->basename, layer); + + option_put(mess, end, OPTION_MESSAGE_TYPE, 1, DHCPACK); + option_put(mess, end, OPTION_SERVER_IDENTIFIER, INADDRSZ, htonl(context->local.s_addr)); -- cgit v1.1