From ff5221c2d550b9119d3e448060ab359314d49ad4 Mon Sep 17 00:00:00 2001 From: Quinten Mennen Date: Wed, 24 Sep 2025 11:11:49 +0200 Subject: [PATCH] fix(headers): make headers case-insensitive --- webserv/http/HttpHeaders.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/webserv/http/HttpHeaders.cpp b/webserv/http/HttpHeaders.cpp index 91f3b8f..965eee1 100644 --- a/webserv/http/HttpHeaders.cpp +++ b/webserv/http/HttpHeaders.cpp @@ -3,6 +3,8 @@ #include "webserv/config/utils.hpp" #include "webserv/http/HttpConstants.hpp" +#include + std::optional HttpHeaders::getContentLength() const { const auto &value = get("Content-Length"); @@ -20,9 +22,12 @@ std::optional HttpHeaders::getContentLength() const } } -void HttpHeaders::add(const std::string &name, const std::string &value) +void HttpHeaders::add(const std::string &name, const std::string &value) // NOLINT(bugprone-easily-swappable-parameters) { - headers_[name] = value; + + std::string lower = name; + std::ranges::transform(lower, lower.begin(), ::tolower); + headers_[lower] = value; } void HttpHeaders::remove(const std::string &name)