From cd41be4046bcfce5f61670f76613d4cc04303571 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Thu, 25 Jul 2019 14:41:32 +0200 Subject: [PATCH] fix regression introduced in cc5032b85 --- ChangeLog | 11 ++++++++--- src/include/microhttpd.h | 2 +- src/microhttpd/connection.c | 4 ++-- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 6a057b73..c45326df 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,11 @@ +Thu 25 Jul 2019 02:40:12 PM CEST + Fixing regression introduced in cc5032b85 (bit mask matching + of the header kinds in MHD_lookup_connection_value()), as + reported by Jose Bollo on the mailinglist. -CG/JB + Tue Jul 16 19:56:14 CEST 2019 - Add MHD_OPTION_HTTPS_CERT_CALLBACK2 to allow OCSP stapling - and MHD_FEATURE_HTTPS_CERT_CALLBACK2 to check for. -TR + Add MHD_OPTION_HTTPS_CERT_CALLBACK2 to allow OCSP stapling + and MHD_FEATURE_HTTPS_CERT_CALLBACK2 to check for. -TR Fri Jul 05 2019 22:30:40 MSK Releasing libmicrohttpd 0.9.65. -EG @@ -102,7 +107,7 @@ Sun Apr 21 16:40:00 MSK 2019 Fri Apr 19 23:00:00 MSK 2019 Rewritten SHA-256 calculations from scratch to avoid changing LGPL version; - Added usage of GCC/Clang built-ins for bytes swap to significantly improve + Added usage of GCC/Clang built-ins for bytes swap to significantly improve speed of MD5 and SHA-256 calculation on platforms with known endianness. Added test for SHA-256 calculations. -EG diff --git a/src/include/microhttpd.h b/src/include/microhttpd.h index 9d28cdb1..4c05ffac 100644 --- a/src/include/microhttpd.h +++ b/src/include/microhttpd.h @@ -132,7 +132,7 @@ typedef intptr_t ssize_t; * Current version of the library. * 0x01093001 = 1.9.30-1. */ -#define MHD_VERSION 0x00096502 +#define MHD_VERSION 0x00096503 /** * MHD-internal return code for "YES". diff --git a/src/microhttpd/connection.c b/src/microhttpd/connection.c index 8cc3490b..87c77c29 100644 --- a/src/microhttpd/connection.c +++ b/src/microhttpd/connection.c @@ -1040,7 +1040,7 @@ MHD_lookup_connection_value_n (struct MHD_Connection *connection, { for (pos = connection->headers_received; NULL != pos; pos = pos->next) { - if ( (kind == pos->kind) && + if ( (0 != (kind & pos->kind)) && (NULL == pos->header) ) break; } @@ -1049,7 +1049,7 @@ MHD_lookup_connection_value_n (struct MHD_Connection *connection, { for (pos = connection->headers_received; NULL != pos; pos = pos->next) { - if ( (kind == pos->kind) && + if ( (0 != (kind & pos->kind)) && (key_size == pos->header_size) && ( (key == pos->header) || (MHD_str_equal_caseless_bin_n_ (key,