]> granicus.if.org Git - pdns/commitdiff
dnsdist: Also lowercase custom DoH header names for early responses
authorRemi Gacogne <remi.gacogne@powerdns.com>
Wed, 2 Oct 2019 09:14:50 +0000 (11:14 +0200)
committerRemi Gacogne <remi.gacogne@powerdns.com>
Wed, 2 Oct 2019 09:14:50 +0000 (11:14 +0200)
pdns/dnsdist-lua-bindings.cc
regression-tests.dnsdist/test_DOH.py

index efa8d94b7bf8c95c53ff924ce9e6be3c14579207..6a01adf1fc0a2f96ff0ff9bdf05889c0968cb451 100644 (file)
@@ -374,7 +374,7 @@ void setupLuaBindings(bool client)
     if (customHeaders) {
       headers = std::vector<std::pair<std::string, std::string>>();
       for (const auto& header : *customHeaders) {
-        headers->push_back({ header.first, header.second });
+        headers->push_back({ boost::to_lower_copy(header.first), header.second });
       }
     }
     return std::make_shared<DOHResponseMapEntry>(regex, status, content, headers);
index 4bd0089e670442277f9238dd6ec6f89d8385aba8..bee0c29fc2e61096eaf5fac43eb4ae6adb6ece18 100644 (file)
@@ -152,7 +152,7 @@ class TestDOH(DNSDistDOHTest):
 
     addDOHLocal("127.0.0.1:%s", "%s", "%s", { "/" }, {customResponseHeaders={["access-control-allow-origin"]="*",["user-agent"]="derp",["UPPERCASE"]="VaLuE"}})
     dohFE = getDOHFrontend(0)
-    dohFE:setResponsesMap({newDOHResponseMapEntry('^/coffee$', 418, 'C0FFEE', {['foo']='bar'})})
+    dohFE:setResponsesMap({newDOHResponseMapEntry('^/coffee$', 418, 'C0FFEE', {['FoO']='bar'})})
 
     addAction("drop.doh.tests.powerdns.com.", DropAction())
     addAction("refused.doh.tests.powerdns.com.", RCodeAction(DNSRCode.REFUSED))