From: Remi Gacogne Date: Wed, 12 Jun 2019 08:41:58 +0000 (+0200) Subject: dnsdist: Properly override the HTTP Server header for DoH X-Git-Tag: dnsdist-1.4.0-rc1~98^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a429a30348233f08df2545e241806d9d9730a15b;p=thirdparty%2Fpdns.git dnsdist: Properly override the HTTP Server header for DoH --- diff --git a/pdns/dnsdistdist/doh.cc b/pdns/dnsdistdist/doh.cc index 4e585d4afa..22173d3a16 100644 --- a/pdns/dnsdistdist/doh.cc +++ b/pdns/dnsdistdist/doh.cc @@ -333,9 +333,6 @@ try h2o_socket_getsockname(sock, reinterpret_cast(&local)); DOHServerConfig* dsc = reinterpret_cast(req->conn->ctx->storage.entries[0].data); - /* looks like we can't delete the Server: header with most versions of h2o */ - h2o_set_header(&req->pool, &req->res.headers, H2O_TOKEN_SERVER, dsc->df->d_serverTokens.c_str(), dsc->df->d_serverTokens.size(), 1); - if(auto tlsversion = h2o_socket_get_ssl_protocol_version(sock)) { if(!strcmp(tlsversion, "TLSv1.0")) ++dsc->df->d_tls10queries; @@ -690,6 +687,8 @@ try auto& dsc = df->d_dsc; dsc->cs = cs; dsc->df = cs->dohFrontend; + dsc->h2o_config.server_name = h2o_iovec_init(df->d_serverTokens.c_str(), df->d_serverTokens.size()); + std::thread dnsdistThread(dnsdistclient, dsc->dohquerypair[1], dsc->dohresponsepair[0]); dnsdistThread.detach(); // gets us better error reporting