aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2003-08-11 09:56:06 +0000
committerDaniel Stenberg <daniel@haxx.se>2003-08-11 09:56:06 +0000
commit96e217b49628a7dd19ad4be66b1842dcf0940309 (patch)
tree35ab1caf61deeaab7eb7c1171aa91652d68de00a
parent2dd1518d630e3fa0857d3086c75948bf26f6c833 (diff)
the new cookie functions that require 'data' passed in
-rw-r--r--lib/cookie.h8
-rw-r--r--lib/easy.c3
-rw-r--r--lib/sendf.c4
-rw-r--r--lib/share.c2
-rw-r--r--lib/transfer.c6
-rw-r--r--lib/url.c4
6 files changed, 17 insertions, 10 deletions
diff --git a/lib/cookie.h b/lib/cookie.h
index a3a54c717..9be196aba 100644
--- a/lib/cookie.h
+++ b/lib/cookie.h
@@ -68,14 +68,18 @@ struct CookieInfo {
#define MAX_NAME 256
#define MAX_NAME_TXT "255"
+struct SessionHandle;
/*
* Add a cookie to the internal list of cookies. The domain and path arguments
* are only used if the header boolean is TRUE.
*/
-struct Cookie *Curl_cookie_add(struct CookieInfo *, bool header, char *line,
+
+struct Cookie *Curl_cookie_add(struct SessionHandle *data,
+ struct CookieInfo *, bool header, char *line,
char *domain, char *path);
-struct CookieInfo *Curl_cookie_init(char *, struct CookieInfo *, bool);
+struct CookieInfo *Curl_cookie_init(struct SessionHandle *data,
+ char *, struct CookieInfo *, bool);
struct Cookie *Curl_cookie_getlist(struct CookieInfo *, char *, char *, bool);
void Curl_cookie_freelist(struct Cookie *);
void Curl_cookie_cleanup(struct CookieInfo *);
diff --git a/lib/easy.c b/lib/easy.c
index 73f3d9cca..ff756784e 100644
--- a/lib/easy.c
+++ b/lib/easy.c
@@ -319,7 +319,8 @@ CURL *curl_easy_duphandle(CURL *incurl)
if(data->cookies)
/* If cookies are enabled in the parent handle, we enable them
in the clone as well! */
- outcurl->cookies = Curl_cookie_init(data->cookies->filename,
+ outcurl->cookies = Curl_cookie_init(data,
+ data->cookies->filename,
outcurl->cookies,
data->set.cookiesession);
diff --git a/lib/sendf.c b/lib/sendf.c
index e4983fa68..b964bdd56 100644
--- a/lib/sendf.c
+++ b/lib/sendf.c
@@ -132,8 +132,8 @@ void curl_slist_free_all(struct curl_slist *list)
void Curl_infof(struct SessionHandle *data, const char *fmt, ...)
{
- va_list ap;
- if(data->set.verbose) {
+ if(data && data->set.verbose) {
+ va_list ap;
char print_buffer[1024 + 1];
va_start(ap, fmt);
vsnprintf(print_buffer, 1024, fmt, ap);
diff --git a/lib/share.c b/lib/share.c
index 37acef195..d883ff0de 100644
--- a/lib/share.c
+++ b/lib/share.c
@@ -79,7 +79,7 @@ curl_share_setopt(CURLSH *sh, CURLSHoption option, ...)
case CURL_LOCK_DATA_COOKIE:
if (!share->cookies) {
- share->cookies = Curl_cookie_init( NULL, NULL, TRUE );
+ share->cookies = Curl_cookie_init(NULL, NULL, NULL, TRUE );
}
break;
diff --git a/lib/transfer.c b/lib/transfer.c
index 8c42cb7d4..d9f3c8f9b 100644
--- a/lib/transfer.c
+++ b/lib/transfer.c
@@ -709,7 +709,8 @@ CURLcode Curl_readwrite(struct connectdata *conn,
checkprefix("Set-Cookie:", k->p)) {
Curl_share_lock(data, CURL_LOCK_DATA_COOKIE,
CURL_LOCK_ACCESS_SINGLE);
- Curl_cookie_add(data->cookies, TRUE, k->p+11,
+ Curl_cookie_add(data,
+ data->cookies, TRUE, k->p+11,
/* If there is a custom-set Host: name, use it
here, or else use real peer host name. */
conn->allocptr.cookiehost?
@@ -1514,7 +1515,8 @@ CURLcode Curl_pretransfer(struct SessionHandle *data)
struct curl_slist *list = data->change.cookielist;
Curl_share_lock(data, CURL_LOCK_DATA_COOKIE, CURL_LOCK_ACCESS_SINGLE);
while(list) {
- data->cookies = Curl_cookie_init(list->data,
+ data->cookies = Curl_cookie_init(data,
+ list->data,
data->cookies,
data->set.cookiesession);
list = list->next;
diff --git a/lib/url.c b/lib/url.c
index 4bd02705a..03059d84a 100644
--- a/lib/url.c
+++ b/lib/url.c
@@ -617,7 +617,7 @@ CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option, ...)
* Activate the cookie parser. This may or may not already
* have been made.
*/
- data->cookies = Curl_cookie_init(NULL, data->cookies,
+ data->cookies = Curl_cookie_init(data, NULL, data->cookies,
data->set.cookiesession);
break;
#endif
@@ -1210,7 +1210,7 @@ CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option, ...)
/* check cookie list is set */
if(!data->cookies)
- data->cookies = Curl_cookie_init( NULL, NULL, TRUE );
+ data->cookies = Curl_cookie_init(data, NULL, NULL, TRUE );
/* check for host cache not needed,
* it will be done by curl_easy_perform */