diff --git a/include/proto/dns.h b/include/proto/dns.h
index 8c3ef8c..12f0393 100644
--- a/include/proto/dns.h
+++ b/include/proto/dns.h
@@ -33,8 +33,8 @@
 int dns_init_resolvers(int close_socket);
 uint16_t dns_rnd16(void);
 int dns_validate_dns_response(unsigned char *resp, unsigned char *bufend, struct dns_response_packet *dns_p);
-int dns_get_ip_from_response(struct dns_response_packet *dns_p,
-                             struct dns_resolution *resol, void *currentip,
+int dns_get_ip_from_response(struct dns_response_packet *dns_p, struct dns_resolution *resol,
+                             struct dns_options *dns_opts, void *currentip,
                              short currentip_sin_family,
                              void **newip, short *newip_sin_family);
 void dns_resolve_send(struct dgram_conn *dgram);
diff --git a/include/types/dns.h b/include/types/dns.h
index f28398d..c86eb4d 100644
--- a/include/types/dns.h
+++ b/include/types/dns.h
@@ -218,7 +218,6 @@
  */
 struct dns_resolution {
 	struct list list;		/* resolution list */
-	struct dns_resolvers *resolvers;	/* resolvers section associated to this resolution */
 	void *requester;		/* owner of this name resolution */
 	int (*requester_cb)(struct dns_resolution *, struct dns_nameserver *, struct dns_response_packet *);
 					/* requester callback for valid response */
@@ -226,7 +225,6 @@
 					/* requester callback, for error management */
 	char *hostname_dn;		/* server hostname in domain name label format */
 	int hostname_dn_len;		/* server domain name label len */
-	struct dns_options *opts;       /* IP selection options inherited from the configuration file. */
 	unsigned int last_resolution;	/* time of the lastest valid resolution */
 	unsigned int last_sent_packet;	/* time of the latest DNS packet sent */
 	unsigned int last_status_change;	/* time of the latest DNS resolution status change */
@@ -273,6 +271,7 @@
 	DNS_RESP_TRUNCATED,		/* DNS response is truncated */
 	DNS_RESP_NO_EXPECTED_RECORD,	/* No expected records were found in the response */
 	DNS_RESP_QUERY_COUNT_ERROR,	/* we did not get the expected number of queries in the response */
+	DNS_RESP_INTERNAL,		/* internal resolver error */
 };
 
 /* return codes after searching an IP in a DNS response buffer, using a family preference */
diff --git a/include/types/server.h b/include/types/server.h
index bf4eae1..7c6df5a 100644
--- a/include/types/server.h
+++ b/include/types/server.h
@@ -255,7 +255,10 @@
 	struct check agent;                     /* agent specific configuration */
 
 	char *resolvers_id;			/* resolvers section used by this server */
+	struct dns_resolvers *resolvers;	/* pointer to the resolvers structure used by this server */
 	char *hostname;				/* server hostname */
+	char *hostname_dn;			/* server hostname in Domain Name format */
+	int hostname_dn_len;			/* sting lenght of the server hostname in Domain Name format */
 	char *lastaddr;				/* the address string provided by the server-state file */
 	struct dns_resolution *resolution;	/* server name resolution */
 	struct dns_options dns_opts;
