#ifndef __DNSINFO_CREATE_H__
#define __DNSINFO_CREATE_H__
#include <AvailabilityMacros.h>
#include <sys/cdefs.h>
#include <stdint.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <dnsinfo.h>
#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1040
typedef const struct __dns_create_config * dns_create_config_t;
typedef const struct __dns_create_resolver * dns_create_resolver_t;
__BEGIN_DECLS
dns_create_config_t _dns_configuration_create ();
void _dns_configuration_add_resolver (dns_create_config_t *_config, dns_create_resolver_t _resolver);
_Bool _dns_configuration_store (dns_create_config_t *_config);
void _dns_configuration_free (dns_create_config_t *_config);
dns_create_resolver_t _dns_resolver_create();
void _dns_resolver_set_domain (dns_create_resolver_t *_resolver, const char *domain);
void _dns_resolver_add_nameserver (dns_create_resolver_t *_resolver, struct sockaddr *nameserver);
void _dns_resolver_set_port (dns_create_resolver_t *_resolver, uint32_t port); void _dns_resolver_add_search (dns_create_resolver_t *_resolver, const char *search);
void _dns_resolver_add_sortaddr (dns_create_resolver_t *_resolver, dns_sortaddr_t *sortaddr);
void _dns_resolver_set_options (dns_create_resolver_t *_resolver, const char *options);
void _dns_resolver_set_timeout (dns_create_resolver_t *_resolver, uint32_t timeout);
void _dns_resolver_set_order (dns_create_resolver_t *_resolver, uint32_t order);
void _dns_resolver_free (dns_create_resolver_t *_resolver);
__END_DECLS
#endif
#endif