From 747c48162c983eca0c97767bef1803cf09675935 Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Mon, 19 Sep 2011 20:55:30 +0200 Subject: waitress: header keys/values are case-insensitive --- src/libwaitress/waitress.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/libwaitress/waitress.c b/src/libwaitress/waitress.c index 1c2456f..705d8dc 100644 --- a/src/libwaitress/waitress.c +++ b/src/libwaitress/waitress.c @@ -43,7 +43,7 @@ THE SOFTWARE. #include "config.h" #include "waitress.h" -#define streq(a,b) (strcmp(a,b) == 0) +#define strcaseeq(a,b) (strcasecmp(a,b) == 0) #define WAITRESS_HTTP_VERSION "1.1" typedef struct { @@ -568,10 +568,10 @@ static WaitressHandlerReturn_t WaitressHandleChunked (WaitressHandle_t *waith, */ static void WaitressHandleHeader (WaitressHandle_t *waith, const char * const key, const char * const value) { - if (streq (key, "Content-Length")) { + if (strcaseeq (key, "Content-Length")) { waith->request.contentLength = atol (value); - } else if (streq (key, "Transfer-Encoding")) { - if (streq (value, "chunked")) { + } else if (strcaseeq (key, "Transfer-Encoding")) { + if (strcaseeq (value, "chunked")) { waith->request.dataHandler = WaitressHandleChunked; } } @@ -925,6 +925,8 @@ const char *WaitressErrorToStr (WaitressReturn_t wRet) { #include #include "waitress.h" +#define streq(a,b) (strcmp(a,b) == 0) + /* string equality test (memory location or content) */ static bool streqtest (const char *x, const char *y) { -- cgit v1.2.3