Loading lib/cookie.c +10 −5 Original line number Diff line number Diff line Loading @@ -104,7 +104,8 @@ Example set of cookies: struct Cookie * Curl_cookie_add(struct CookieInfo *c, bool httpheader, /* TRUE if HTTP header-style line */ char *lineptr) /* first non-space of the line */ char *lineptr, /* first non-space of the line */ char *domain) /* default domain */ { struct Cookie *clist; char what[MAX_COOKIE_LINE]; Loading Loading @@ -194,6 +195,10 @@ Curl_cookie_add(struct CookieInfo *c, ptr++; semiptr=strchr(ptr, ';'); /* now, find the next semicolon */ } while(semiptr); if(NULL == co->domain) /* no domain given in the header line, set the default now */ co->domain=strdup(domain); } else { /* This line is NOT a HTTP header style line, we do offer support for Loading Loading @@ -441,7 +446,7 @@ struct CookieInfo *Curl_cookie_init(char *file, struct CookieInfo *inc) while(*lineptr && isspace((int)*lineptr)) lineptr++; Curl_cookie_add(c, headerline, lineptr); Curl_cookie_add(c, headerline, lineptr, NULL); } if(fromfile) fclose(fp); Loading Loading @@ -632,13 +637,13 @@ int Curl_cookie_output(struct CookieInfo *c, char *dumphere) "%u\t" /* expires */ "%s\t" /* name */ "%s\n", /* value */ co->domain, co->domain?co->domain:"unknown", co->field1==2?"TRUE":"FALSE", co->path, co->path?co->path:"/", co->secure?"TRUE":"FALSE", (unsigned int)co->expires, co->name, co->value); co->value?co->value:""); co=co->next; } Loading lib/cookie.h +7 −1 Original line number Diff line number Diff line Loading @@ -68,7 +68,13 @@ struct CookieInfo { #define MAX_NAME 256 #define MAX_NAME_TXT "255" struct Cookie *Curl_cookie_add(struct CookieInfo *, bool, char *); /* * Add a cookie to the internal list of cookies. The domain argument is only * used if the header boolean is TRUE. */ struct Cookie *Curl_cookie_add(struct CookieInfo *, bool header, char *line, char *domain); struct CookieInfo *Curl_cookie_init(char *, struct CookieInfo *); struct Cookie *Curl_cookie_getlist(struct CookieInfo *, char *, char *, bool); void Curl_cookie_freelist(struct Cookie *); Loading lib/transfer.c +1 −1 Original line number Diff line number Diff line Loading @@ -620,7 +620,7 @@ Transfer(struct connectdata *c_conn) } else if(data->cookies && strnequal("Set-Cookie:", p, 11)) { Curl_cookie_add(data->cookies, TRUE, &p[12]); Curl_cookie_add(data->cookies, TRUE, &p[12], conn->name); } else if(strnequal("Last-Modified:", p, strlen("Last-Modified:")) && Loading Loading
lib/cookie.c +10 −5 Original line number Diff line number Diff line Loading @@ -104,7 +104,8 @@ Example set of cookies: struct Cookie * Curl_cookie_add(struct CookieInfo *c, bool httpheader, /* TRUE if HTTP header-style line */ char *lineptr) /* first non-space of the line */ char *lineptr, /* first non-space of the line */ char *domain) /* default domain */ { struct Cookie *clist; char what[MAX_COOKIE_LINE]; Loading Loading @@ -194,6 +195,10 @@ Curl_cookie_add(struct CookieInfo *c, ptr++; semiptr=strchr(ptr, ';'); /* now, find the next semicolon */ } while(semiptr); if(NULL == co->domain) /* no domain given in the header line, set the default now */ co->domain=strdup(domain); } else { /* This line is NOT a HTTP header style line, we do offer support for Loading Loading @@ -441,7 +446,7 @@ struct CookieInfo *Curl_cookie_init(char *file, struct CookieInfo *inc) while(*lineptr && isspace((int)*lineptr)) lineptr++; Curl_cookie_add(c, headerline, lineptr); Curl_cookie_add(c, headerline, lineptr, NULL); } if(fromfile) fclose(fp); Loading Loading @@ -632,13 +637,13 @@ int Curl_cookie_output(struct CookieInfo *c, char *dumphere) "%u\t" /* expires */ "%s\t" /* name */ "%s\n", /* value */ co->domain, co->domain?co->domain:"unknown", co->field1==2?"TRUE":"FALSE", co->path, co->path?co->path:"/", co->secure?"TRUE":"FALSE", (unsigned int)co->expires, co->name, co->value); co->value?co->value:""); co=co->next; } Loading
lib/cookie.h +7 −1 Original line number Diff line number Diff line Loading @@ -68,7 +68,13 @@ struct CookieInfo { #define MAX_NAME 256 #define MAX_NAME_TXT "255" struct Cookie *Curl_cookie_add(struct CookieInfo *, bool, char *); /* * Add a cookie to the internal list of cookies. The domain argument is only * used if the header boolean is TRUE. */ struct Cookie *Curl_cookie_add(struct CookieInfo *, bool header, char *line, char *domain); struct CookieInfo *Curl_cookie_init(char *, struct CookieInfo *); struct Cookie *Curl_cookie_getlist(struct CookieInfo *, char *, char *, bool); void Curl_cookie_freelist(struct Cookie *); Loading
lib/transfer.c +1 −1 Original line number Diff line number Diff line Loading @@ -620,7 +620,7 @@ Transfer(struct connectdata *c_conn) } else if(data->cookies && strnequal("Set-Cookie:", p, 11)) { Curl_cookie_add(data->cookies, TRUE, &p[12]); Curl_cookie_add(data->cookies, TRUE, &p[12], conn->name); } else if(strnequal("Last-Modified:", p, strlen("Last-Modified:")) && Loading