Skip to content

Instantly share code, notes, and snippets.

@wiedi
Created July 3, 2014 17:35
Show Gist options
  • Save wiedi/3e85738a237944d2ac1d to your computer and use it in GitHub Desktop.
Save wiedi/3e85738a237944d2ac1d to your computer and use it in GitHub Desktop.
Starting dhcpd with "dhcpd -6 -f" fails with a valid /etc/resolv.conf in irs_resconf_load with the error:
------
Internet Systems Consortium DHCP Server 4.3.0
Copyright 2004-2014 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
irs_resconf_load failed: 59.
Unable to complete ddns initialization
If you think you have received this message due to a bug rather
than a configuration issue please read the section on submitting
bugs on either our web page at www.isc.org or in the README file
before submitting a bug. These pages explain the proper
process and the information we find helpful for debugging..
exiting.
------
The error is generated in bind/bind-9.9.5/lib/irs/resconf.c:215 because a call to getaddrinfo() fails.
The error from getaddrinfo() is EAI_BADFLAGS in bind/bind-9.9.5/lib/irs/getaddrinfo.c:210
This is because the copy of getaddrinfo and netdb have different values for the flags used by the resconf.c code.
in bind/bind-9.9.5/lib/irs/include/irs/netdb.h.in:116 and line 120 the value of AI_NUMERICHOST gets redefined to 0x4.
bind/bind-9.9.5/lib/irs/resconf.c line 49 includes #include <netdb.h> which is form the system and defines AI_NUMERICHOST to 0x20.
So the values don't match when getaddrinfo is called and it quits.
A fix might be to include the correct netdb.h
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment