diff options
author | Daniel Stenberg <daniel@haxx.se> | 2018-03-05 23:38:16 +0100 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2018-03-11 11:46:10 +0100 |
commit | 8123560d4496992baecc0c7a05e56ce48e6b6273 (patch) | |
tree | 5597389e87043f3fd82d84334a61d690784d8c53 /lib/transfer.c | |
parent | 019aa722aa82e8642254f3e835992bc425ed3e19 (diff) | |
download | curl-8123560d4496992baecc0c7a05e56ce48e6b6273.tar.gz |
HTTP: allow "header;" to replace an internal header with a blank one
Reported-by: Michael Kaufmann
Fixes #2357
Closes #2362
Diffstat (limited to 'lib/transfer.c')
-rw-r--r-- | lib/transfer.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/transfer.c b/lib/transfer.c index e27792c10..c46ac25f4 100644 --- a/lib/transfer.c +++ b/lib/transfer.c @@ -5,7 +5,7 @@ * | (__| |_| | _ <| |___ * \___|\___/|_| \_\_____| * - * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al. + * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution. The terms @@ -85,7 +85,7 @@ !defined(CURL_DISABLE_IMAP) /* * checkheaders() checks the linked list of custom headers for a - * particular header (prefix). + * particular header (prefix). Provide the prefix without colon! * * Returns a pointer to the first matching header or NULL if none matched. */ @@ -97,7 +97,8 @@ char *Curl_checkheaders(const struct connectdata *conn, struct Curl_easy *data = conn->data; for(head = data->set.headers; head; head = head->next) { - if(strncasecompare(head->data, thisheader, thislen)) + if(strncasecompare(head->data, thisheader, thislen) && + Curl_headersep(head->data[thislen]) ) return head->data; } |