adjusted to the new dns cache function to hide more hostip internals
authorDaniel Stenberg <daniel@haxx.se>
Tue, 30 Mar 2004 13:02:31 +0000 (13:02 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Tue, 30 Mar 2004 13:02:31 +0000 (13:02 +0000)
lib/easy.c
lib/hostip.h
lib/http.c
lib/multi.c
lib/share.c

index d1e7ef4..bc91f48 100644 (file)
@@ -271,7 +271,7 @@ CURLcode curl_easy_perform(CURL *curl)
     }
 
     if (!data->hostcache) {
-      data->hostcache = Curl_hash_alloc(7, Curl_freednsinfo);
+      data->hostcache = Curl_mk_dnscache();
 
       if(!data->hostcache)
         /* While we possibly could survive and do good without a host cache,
index 64d4022..b7d212d 100644 (file)
@@ -74,8 +74,8 @@ void Curl_scan_cache_used(void *user, void *ptr);
 /* free name info */
 void Curl_freeaddrinfo(Curl_addrinfo *freeaddr);
 
-/* free cached name info */
-void Curl_freednsinfo(void *freethis);
+/* make a new dns cache and return the handle */
+curl_hash *Curl_mk_dnscache(void);
 
 /* prune old entries from the DNS cache */
 void Curl_hostcache_prune(struct SessionHandle *data);
index a7961cb..41b1ef7 100644 (file)
@@ -398,17 +398,14 @@ CURLcode Curl_http_auth(struct connectdata *conn,
         *availp |= CURLAUTH_DIGEST;
         if(data->state.authwant == CURLAUTH_DIGEST) {
           /* Digest authentication is activated */
-          CURLdigest dig = CURLDIGEST_BAD;
-
-          if(data->state.digest.nonce)
-            infof(data, "Authentication problem. Ignoring this.\n");
-          else
-            dig = Curl_input_digest(conn, start);
+          CURLdigest dig = Curl_input_digest(conn, start);
           
           if(CURLDIGEST_FINE == dig)
             /* We act on it. Store our new url, which happens to be
                the same one we already use! */
             conn->newurl = strdup(data->change.url); /* clone string */
+          else
+            infof(data, "Authentication problem. Ignoring this.\n");
         }
         else
           if(data->state.authwant & CURLAUTH_DIGEST) {
index 18bfba2..ddc4b16 100644 (file)
@@ -122,7 +122,7 @@ CURLM *curl_multi_init(void)
     multi->type = CURL_MULTI_HANDLE;
   }
 
-  multi->hostcache = Curl_hash_alloc(7, Curl_freednsinfo);
+  multi->hostcache = Curl_mk_dnscache();
   if(!multi->hostcache) {
     /* failure, free mem and bail out */
     free(multi);
index ff1aef2..e554339 100644 (file)
@@ -73,7 +73,7 @@ curl_share_setopt(CURLSH *sh, CURLSHoption option, ...)
     {
       case CURL_LOCK_DATA_DNS:
         if (!share->hostcache) {
-          share->hostcache = Curl_hash_alloc(7, Curl_freednsinfo);
+          share->hostcache = Curl_mk_dnscache();
         }
         break;