#
# Configuration for DNS Resolver
#
config DNS_RESOLVER
	tristate "DNS Resolver support"
	depends on NET && KEYS
	help
	  Saying Y here will include support for the DNS Resolver key type
	  which can be used to make upcalls to perform DNS lookups in
	  userspace.

	  DNS Resolver is used to query DNS server for information.  Examples
	  being resolving a UNC hostname element to an IP address for CIFS or
	  performing a DNS query for AFSDB records so that AFS can locate a
	  cell's volume location database servers.

	  DNS Resolver is used by the CIFS and AFS modules, and would support
	  SMB2 later.  DNS Resolver is supported by the userspace upcall
	  helper "/sbin/dns.resolver" via /etc/request-key.conf.

	  See <file:Documentation/networking/dns_resolver.txt> for further
	  information.

	  To compile this as a module, choose M here: the module will be called
	  dnsresolver.

	  If unsure, say N.
