From 747c48162c983eca0c97767bef1803cf09675935 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
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 <string.h>
 #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