util: dnsmasq: mandate at least version 2.67

All the capabilities should be supported in 2.67.
Make this the minimum version, since even the oldest
distros we support have moved on:

Debian 8: 2.72
CentOS 7: 2.76
Ubuntu 18.04: 2.79

Signed-off-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Laine Stump <laine@redhat.com>
This commit is contained in:
Ján Tomko 2021-12-14 17:36:23 +01:00
parent 6b59d6cac1
commit 80d1a5ff2e

View File

@ -49,6 +49,9 @@ VIR_LOG_INIT("util.dnsmasq");
#define DNSMASQ_HOSTSFILE_SUFFIX "hostsfile"
#define DNSMASQ_ADDNHOSTSFILE_SUFFIX "addnhosts"
#define DNSMASQ_MIN_MAJOR 2
#define DNSMASQ_MIN_MINOR 67
static void
dhcphostFreeContent(dnsmasqDhcpHost *host)
{
@ -627,6 +630,15 @@ dnsmasqCapsSetFromBuffer(dnsmasqCaps *caps, const char *buf)
if (virParseVersionString(p, &caps->version, true) < 0)
goto error;
if (caps->version < DNSMASQ_MIN_MAJOR * 1000000 + DNSMASQ_MIN_MINOR * 1000) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
_("dnsmasq version >= %u.%u required but %lu.%lu found"),
DNSMASQ_MIN_MAJOR, DNSMASQ_MIN_MINOR,
caps->version / 1000000,
caps->version % 1000000 / 1000);
goto error;
}
if (strstr(buf, "--bind-dynamic"))
dnsmasqCapsSet(caps, DNSMASQ_CAPS_BIND_DYNAMIC);