diff options
author | Daniel Stenberg <daniel@haxx.se> | 2017-09-08 15:13:42 +0200 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2017-09-11 00:26:17 +0200 |
commit | 02eb6184ad6ba6133382dfe24b45472176df92f7 (patch) | |
tree | 0c18b8dd868fec7eccbe0f028c95da857db9cc2e | |
parent | 7207aaa69696a5d28fbb628954f74ecbe2df97dc (diff) |
Curl_checkheaders: make it available for IMAP and SMTP too
... not only HTTP uses this now.
Closes #1875
-rw-r--r-- | lib/http.c | 21 | ||||
-rw-r--r-- | lib/http.h | 2 | ||||
-rw-r--r-- | lib/mime.c | 2 | ||||
-rw-r--r-- | lib/transfer.c | 25 | ||||
-rw-r--r-- | lib/transfer.h | 5 |
5 files changed, 30 insertions, 25 deletions
diff --git a/lib/http.c b/lib/http.c index f4a1faac3..e7f6872d5 100644 --- a/lib/http.c +++ b/lib/http.c @@ -173,27 +173,6 @@ CURLcode Curl_http_setup_conn(struct connectdata *conn) } /* - * checkheaders() checks the linked list of custom HTTP headers for a - * particular header (prefix). - * - * Returns a pointer to the first matching header or NULL if none matched. - */ -char *Curl_checkheaders(const struct connectdata *conn, - const char *thisheader) -{ - struct curl_slist *head; - size_t thislen = strlen(thisheader); - struct Curl_easy *data = conn->data; - - for(head = data->set.headers;head; head=head->next) { - if(strncasecompare(head->data, thisheader, thislen)) - return head->data; - } - - return NULL; -} - -/* * checkProxyHeaders() checks the linked list of custom proxy headers * if proxy headers are not available, then it will lookup into http header * link list diff --git a/lib/http.h b/lib/http.h index 3e446813f..d2781bc0f 100644 --- a/lib/http.h +++ b/lib/http.h @@ -40,8 +40,6 @@ bool Curl_compareheader(const char *headerline, /* line to check */ const char *header, /* header keyword _with_ colon */ const char *content); /* content string to find */ -char *Curl_checkheaders(const struct connectdata *conn, - const char *thisheader); char *Curl_copy_header_value(const char *header); char *Curl_checkProxyheaders(const struct connectdata *conn, diff --git a/lib/mime.c b/lib/mime.c index 514f6b2ae..74b653649 100644 --- a/lib/mime.c +++ b/lib/mime.c @@ -1820,7 +1820,7 @@ CURLcode curl_mime_headers(curl_mimepart *part, void Curl_mime_initpart(curl_mimepart *part, struct Curl_easy *easy) { (void) part; - (void) data; + (void) easy; } void Curl_mime_cleanpart(curl_mimepart *part) diff --git a/lib/transfer.c b/lib/transfer.c index 24a21aa46..b36de2803 100644 --- a/lib/transfer.c +++ b/lib/transfer.c @@ -74,12 +74,37 @@ #include "non-ascii.h" #include "http2.h" #include "mime.h" +#include "strcase.h" /* The last 3 #include files should be in this order */ #include "curl_printf.h" #include "curl_memory.h" #include "memdebug.h" +#if !defined(CURL_DISABLE_HTTP) || !defined(CURL_DISABLE_SMTP) || \ + !defined(CURL_DISABLE_IMAP) +/* + * checkheaders() checks the linked list of custom headers for a + * particular header (prefix). + * + * Returns a pointer to the first matching header or NULL if none matched. + */ +char *Curl_checkheaders(const struct connectdata *conn, + const char *thisheader) +{ + struct curl_slist *head; + size_t thislen = strlen(thisheader); + struct Curl_easy *data = conn->data; + + for(head = data->set.headers;head; head=head->next) { + if(strncasecompare(head->data, thisheader, thislen)) + return head->data; + } + + return NULL; +} +#endif + /* * This function will call the read callback to fill our buffer with data * to upload. diff --git a/lib/transfer.h b/lib/transfer.h index 518967260..72526a834 100644 --- a/lib/transfer.h +++ b/lib/transfer.h @@ -7,7 +7,7 @@ * | (__| |_| | _ <| |___ * \___|\___/|_| \_\_____| * - * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al. + * Copyright (C) 1998 - 2017, 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 @@ -22,6 +22,9 @@ * ***************************************************************************/ +char *Curl_checkheaders(const struct connectdata *conn, + const char *thisheader); + void Curl_init_CONNECT(struct Curl_easy *data); CURLcode Curl_pretransfer(struct Curl_easy *data); |