To fix three regressions in 2.73:
1) The meaning of --conf-file without an argument changed from "don't
read any conf-file" to "read the default conf-file"
2) A resolv-file which was dangling symlink at startup causes
problems, up to and including a segmentation fault.
3) Under some circumstances, dnsmasq can use more file descriptors,
and this shows up that the code doesn't handle the limit (normally
1024) in the number of descriptors handled by the select() system call.
Git shortlog since rc #9:
Neil Jerram (6):
Fix logging of unknown interface in --bridge-interface, DHPCv4.
Extend --bridge-interface aliasing to DHCPv6.
Allow router advertisements to have the "off-link" bit set.
Upply --bridge-interface aliasing to solicited router advertisements.
Apply --bridge-interfaces to unsolicited router advertisements.
Documenation updates for --bridge-interface and "off-link".
Nicolas Cavallari (1):
Add Dbus methods to create and delete DHCP leases.
Simon Kelley (2):
Add a couple of missed logging strings to the catalogue.
Merge messages and fix makefile process to do this.
Relevant Git shortlog excerpt since -rc8:
Christian Demsar (1):
Man page typo.
John Hanks (1):
Add infiniband to example config file.
Simon Kelley (8):
Remove support for DNS Extended Label Types.
Select correct DHCP context when in PXE bootserver mode.
DHCPv6: DHCPCONFIRM should be OK for any address on link, not just dynamic addresses.
Handle corner cases in NSEC coverage checks.
swigger (1):
Correctly sanitise DNS header bits in answer when recreating query for retry.
Add CPE information [2].
Extract from shortlog, omitting irrelevant entries:
Nicolas Cavallari (1):
Constify some DHCP lease management functions.
Simon Kelley (10):
Don't remove RRSIG RR from answers to ANY queries when the do bit is not set.
Handle UDP packet loss when fragmentation of large packets is broken.
Check IPv4-mapped IPv6 addresses with --stop-rebind.
Tweak EDNS timeout code.
Pointer to mail-archive mailing list mirror in doc.html.
Allow T1 and T2 DHCPv4 options to be set.
Use correct DHCP context for PXE-proxy server-id.
Fix buffer overflow introduced in 2.73rc6.
PR: 199955 [2]
Submitted by: shun, amdmi3 [2]
Reviewed by: amdmi3 [2]
Security: 7927165a-0126-11e5-9d98-080027ef73ec
Git shortlog:
Johnny S. Lee (1):
Make get-version work when repo is a git submodule.
Simon Kelley (2):
Logs in DHCPv6 not suppressed by dhcp6-quiet.
Fix argument-order botch which broke DNSSEC for TCP queries.
Git shortlog since release candidate #4:
Moshe Levi (1):
Check IP address command line arg in dhcp_release.c
Simon Kelley (7):
Fix crash in auth code with odd configuration.
Auth: correct replies to NS and SOA in .arpa zones.
Note CVE-2015-3294
Log domain when reporting DNSSEC validation failure.
Revert 61b838dd574c51d96fef100285a0d225824534f9 and just quieten log inste
Handle domain names with '.' or /000 within labels.
Tweaks to previous, DNS label charset commit.
Stefan Tomanek (1):
Fix (srk induced) crash in new tftp_no_fail code.
Resolves checksum trouble.
Git shortlog between rc#3 and rc#4:
Simon Kelley (4):
Return INSECURE, rather than BOGUS when DS proved not to exist.
Fix compiler warning when not including DNSSEC.
Fix crash caused by looking up servers.bind when many servers defined.
Fix crash on receipt of certain malformed DNS requests.
Stefan Tomanek (2):
add --tftp-no-fail to ignore missing tftp root
Changes since rc1 (git shortlog):
+ Don't fail DNSSEC when a signed CNAME dangles into an unsigned zone.
+ Return SERVFAIL when validation abandoned.
+ Protect against broken DNSSEC upstreams.
+ DNSSEC fix for non-ascii characters in labels.
+ Allow control characters in names in the cache, handle when logging.
Changes from previous 2.73test6 (taken from CHANGELOG's Git repo):
Don't reply to DHCPv6 SOLICIT messages if we're not
configured to do stateful DHCPv6. Thanks to Win King Wan
for the patch.
Fix broken DNSSEC validation of ECDSA signatures.
Add --dnssec-timestamp option, which provides an automatic
way to detect when the system time becomes valid after boot
on systems without an RTC, whilst allowing DNS queries before the
clock is valid so that NTP can run. Thanks to
Kevin Darbyshire-Bryant for developing this idea.
Changes since test3, from CHANGELOG file:
Add --log-queries=extra option, which makes logs easier
to search automatically.
Add --min-cache-ttl option. I've resisted this for a long
time, on the grounds that disbelieving TTLs is never a
good idea, but I've been persuaded that there are
sometimes reasons to do it. (Step forward, GFW).
To avoid misuse, there's a hard limit on the TTL
floor of one hour. Thansk to RinSatsuki for the patch.
Cope with multiple interfaces with the same link-local
address. (IPv6 addresses are scoped, so this is allowed.)
Thanks to Cory Benfield for help with this.
Add --dhcp-hostsdir. This allows addition of new host
configurations to a running dnsmasq instance much more
cheaply than having dnsmasq re-read all its existing
configuration each time.
Remove @dir* stuff from pkg-plist. @sample isn't documented properly
and isn't up to handling files with non-.sample suffix, so stay
away from that part of pkg-plist.
ChangeLog: http://www.thekelleys.org.uk/dnsmasq/CHANGELOG
+ Fix bug when resulted in NXDOMAIN answers instead of NODATA in some
circumstances.
+ Fix bug which caused dnsmasq to become unresponsive if it failed to
send packets due to a network interface disappearing.
+ Fix problem with --local-service option on big-endian platforms.
- Add USES=libtool and bump dependent ports
- Add INSTALL_TARGET=install-strip
- Always install libidn-components.png because it is used by libidn.info
- Add -lintl to Libs.private instead of Libs in libidn.pc
Git shortlog between 2.69 rc1 and rc2:
Simon Kelley (7):
Add dnssec-check-unsigned to example config file.
Reorder sanity checks on UDP packet reception, to cope with failed recvfro
SERVFAIL is an expected error return, don't try all servers.
Terminate DS-search when reaching the root via cache entries.
Cache stats availble in CHAOS .bind domain.
Ensure ->sentto is valid for DNSSEC forwards. Otherwise retries SEGV.
Add --dnssec-no-timecheck
Tomas Hozza (2):
Memory leak in error path.
Handle failure of hash_questions()
Wang Jian (1):
Log IPSET actions.
Git shortlog since test release #9:
Speeling.
Strip DNSSEC RRs when query doesn't have DO bit set.
Return INSECURE when validation fails with proved non-existent DS.
Negative caching for DS records.
Check that unsigned replies come from unsigned zones if --dnssec-check-uns
Tidy.
Fix off-by-one overwrite.
Don't free blockdata for negative DS cache entries.
Handle replies with no answers and no NS in validate_reply.
Tweak tuning params.
Don't cache secure replies which we've messsed with.
Mass edit of INSECURE->BOGUS returns for server failure/bad input.
Can have local DS records (trust anchors).
Relevant excerpt from git shortlog between test8 and test9:
Add RFC-6605 ECDSA DNSSEC verification.
Don't mess with the TTL of DNSSEC RRs.
No CD in forwarded queries unless dnssec-debug for TCP too.
Log BOGUS validation result when upstream sends SERVFAIL.
--rev-server option. Syntactic sugar for PTR queries.
Omit ECC from DNSSEC if nettle library is old.
Add --servers-file option.
NSEC3 validation. First pass.
Check signer name in RRSIGs.
An NSEC record cannot attest to its own non-existance!
ee41586 Use DS records as trust anchors, not DNSKEYs.
83349b8 Further tidying of AD and DO bit handling.
7fa836e Handle validation when more one key is needed.
1633e30 Fix Byte-order botch: broke DNSSEC on big-endian platforms.
c8ca33f Fix DNSSEC caching problems: incomplete RRSIG RRsets.
e243c07 AD bit in queries handled as RFC6840 p5.7
Note the +AD flag may now be missing on the first response for a given domain,
re-querying within the cache TTL would deliver it. Bug has been reported.
- Implement dynamic interface discovery on *BSD
- Fix endless loop with some bogu-nxdomain. Another F_CONFIG botch.
- Ignore ",," in dhcp-host, rather than treating it as ",0,"
Invent an additional .0 so we can later have 2.69rc... releases without
touching PORTEPOCH.
Fixes bind-interfaces with IPv6 on FreeBSD.
version 2.68
Use random addresses for DHCPv6 temporary address
allocations, instead of algorithmically determined stable
addresses.
Fix bug which meant that the DHCPv6 DUID was not available
in DHCP script runs during the lifetime of the dnsmasq
process which created the DUID de-novo. Once the DUID was
created and stored in the lease file and dnsmasq
restarted, this bug disappeared.
Fix bug introduced in 2.67 which could result in erroneous
NXDOMAIN returns to CNAME queries.
Fix build failures on MacOS X and openBSD.
Allow subnet specifications in --auth-zone to be interface
names as well as address literals. This makes it possible
to configure authoritative DNS when local address ranges
are dynamic and works much better than the previous
work-around which exempted contructed DHCP ranges from the
IP address filtering. As a consequence, that work-around
is removed. Under certain circumstances, this change wil
break existing configuration: if you're relying on the
contructed-range exception, you need to change --auth-zone
to specify the same interface as is used to construct your
DHCP ranges, probably with a trailing /6 like this:
--auth-zone=example.com,eth0/6 to limit the addresses to
IPv6 addresses of eth0.
Fix problems when advertising deleted IPv6 prefixes. If
the prefix is deleted (rather than replaced), it doesn't
get advertised with zero preferred time. Thanks to Tsachi
for the bug report.
Fix segfault with some locally configured CNAMEs. Thanks
to Andrew Childs for spotting the problem.
Fix memory leak on re-reading /etc/hosts and friends,
introduced in 2.67.
Check the arrival interface of incoming DNS and TFTP
requests via IPv6, even in --bind-interfaces mode. This
isn't possible for IPv4 and can generate scary warnings,
but as it's always possible for IPv6 (the API always
exists) then we should do it always.
Tweak the rules on prefix-lengths in --dhcp-range for
IPv6. The new rule is that the specified prefix length
must be larger than or equal to the prefix length of the
corresponding address on the local interface.
non-local addresses. Important upstream changes between -rc4 and -rc5:
- Don't overwrite errno before generating message.
- Garbage collect listening sockets when their address is deleted.
- Only set scope_id in addresses to bind() for linklocal addresses.
- Check arrival interface of IPv6 requests, even in --bind-interfaces.
- Relax rules in prefix length in (IPv6) dhcp-range.
Upstream changes:
- Add missing malloc() return-code check.
- Do immediate RA when a prefix goes from old->current.
- Fixes to various compiler warnings.
2543906 Segfault with some CNAMEs. Also memory leak on reload of /etc/hosts.
241fa9c Remove arc4random, we have a good RNG and it's a portability problem.
e142a83 Merge messages to .po files.
Changelog: <http://www.thekelleys.org.uk/dnsmasq/CHANGELOG>
Enable NLS and IPV6 options by default.
Use shebangfix on files that need it.
Mark dnsmasq-devel (older than release) IGNORE.
REVERT: Add --force-fast-ra option. Another thanks to Uwe Schindler.
NEW:
+ Update Spanish transalation. Thanks to Vicente Soriano.
+ Add --ra-param option. Thanks to Vladislav Grishenko for
+ inspiration on this.
+ Add --add-subnet configuration, to tell upstream DNS
+ servers where the original client is. Thanks to DNSthingy
+ for sponsoring this feature.
+ Add --quiet-dhcp, --quiet-dhcp6 and --quiet-ra. Thanks to
+ Kevin Darbyshire-Bryant for the initial patch.
+ Allow A/AAAA records created by --interface-name to be the
+ target of --cname. Thanks to Hadmut Danisch for the
+ suggestion.
+ Avoid treating a --dhcp-host which has an IPv6 address
+ as eligable for use with DHCPv4 on the grounds that it has
+ no address, and vice-versa. Thanks to Yury Konovalov for
+ spotting the problem.
+ Do a better job caching dangling CNAMEs. Thanks to Yves
+ Dorfsman for spotting the problem.
Fix shebang lines of two Perl scripts.