aboutsummaryrefslogtreecommitdiff
path: root/lib/urldata.h
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2010-11-05 22:31:40 +0100
committerDaniel Stenberg <daniel@haxx.se>2010-11-08 08:56:21 +0100
commit1b24b89cca3c06e36b69969af8edeeaca659515b (patch)
treebaa8fdb1a290d28e7bf7ca54ca8fd482dc98c3dc /lib/urldata.h
parentdc3e7df1c99c2ee9dae06453adbb94fe9584bf75 (diff)
CURLOPT_RESOLVE: added
CURLOPT_RESOLVE is a new option that sends along a curl_slist with name:port:address sets that will populate the DNS cache with entries so that request can be "fooled" to use another host than what otherwise would've been used. Previously we've encouraged the use of Host: for that when dealing with HTTP, but this new feature has the added bonus that it allows the name from the URL to be used for TLS SNI and server certificate name checks as well. This is a first change. Surely more will follow to make it decent.
Diffstat (limited to 'lib/urldata.h')
-rw-r--r--lib/urldata.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/urldata.h b/lib/urldata.h
index 4d6059152..489ab16aa 100644
--- a/lib/urldata.h
+++ b/lib/urldata.h
@@ -1186,6 +1186,8 @@ struct DynamicStatic {
bool referer_alloc; /* referer sting is malloc()ed */
struct curl_slist *cookielist; /* list of cookie files set by
curl_easy_setopt(COOKIEFILE) calls */
+ struct curl_slist *resolve; /* set to point to the set.resolve list when
+ this should be dealt with in pretransfer */
};
/*
@@ -1332,6 +1334,8 @@ struct UserDefined {
struct curl_slist *source_postquote; /* in 3rd party transfer mode - after
the transfer on source host */
struct curl_slist *telnet_options; /* linked list of telnet options */
+ struct curl_slist *resolve; /* list of names to add/remove from
+ DNS cache */
curl_TimeCond timecondition; /* kind of time/date comparison */
time_t timevalue; /* what time to compare with */
Curl_HttpReq httpreq; /* what kind of HTTP request (if any) is this */