created arg recursion_count to async_resolve and many other to avoid infinite loops
authorChristian Herdtweck <christian.herdtweck@intra2net.com>
Mon, 4 May 2015 14:09:10 +0000 (16:09 +0200)
committerChristian Herdtweck <christian.herdtweck@intra2net.com>
Mon, 4 May 2015 14:57:59 +0000 (16:57 +0200)
commitcd71d0950be00b310190dce9a37c479dcfb66fab
treead8ca88c2ea2750eb742d580849d03f37239f651
parentf833126b51898c1092d3f782924b24ec1c5ca4ae
created arg recursion_count to async_resolve and many other to avoid infinite loops

* arg recursion_count replaces cname_count which up to now identified problems in post-processing
* created simple loop test
* added option to configure recursion depth limit to DnsMaster

minor other changes:
* corrected docu for resolved-ip-ttl-threshold option: is not milliseconds but seconds
* add test to ResolverBase: check number of callbacks and warn if suspiciously many
18 files changed:
src/config/option/resolvedipttlthresholdoption.cpp
src/dns/dnscache.cpp
src/dns/dnsmaster.cpp
src/dns/dnsmaster.h
src/dns/dnsresolver.cpp
src/dns/dnsresolver.h
src/dns/ippseudoresolver.h
src/dns/resolverbase.cpp
src/dns/resolverbase.h
src/host/pingscheduler.cpp
src/host/pingscheduler.h
src/main.cpp
test/data/icmp_destinationunreachable.pcap
test/data/icmp_echoreply.pcap
test/data/icmp_echorequest.pcap
test/data/icmp_timeexceeded.pcap
test/test_dns.cpp
test/test_icmppacket.cpp