DNS: Create a system-level DNS resolver
authorAshley Sanders <asanders@digium.com>
Tue, 7 Jul 2015 20:03:34 +0000 (15:03 -0500)
committerAshley Sanders <asanders@digium.com>
Wed, 8 Jul 2015 02:31:49 +0000 (21:31 -0500)
commit3cdfd39af7c632403bff34fdbf2c4945cd02bb79
tree524730d0dcaf6057306c4b8c1976f020cecacce1
parentc12ace3ab31bd61606252f5a3721ce720d2ad209
DNS: Create a system-level DNS resolver

Prior to this patch, the DNS core present in master had no default system-level
resolver implementation. Therefore, it was not possible for the DNS core to
perform resolutions unless the libunbound library was installed and the
res_resolver_unbound module was loaded.

This patch introduces a system-level DNS resolver implementation that will
register itself with the lowest consideration priority available (to ensure
that it is to be used only as a last resort). The resolver relies on low-level
DNS search functions to perform a rudimentary DNS search based on a provided
query and then supplies the search results to the DNS core.

ASTERISK-25146 #close
Reported By: Joshua Colp

Change-Id: I3b36ea17b889a98df4f8d80d50bb7ee175afa077
include/asterisk/_private.h
include/asterisk/dns.h
main/asterisk.c
main/dns.c
main/dns_system_resolver.c [new file with mode: 0755]