From 50a062e5cec56e228f3783cf24b15b8ffbd343d6 Mon Sep 17 00:00:00 2001 From: Artem Boldariev Date: Thu, 18 Jul 2024 20:21:53 +0300 Subject: [PATCH] DoH: reduce excessive bad request logging We started using isc_nm_bad_request() more actively throughout codebase. In the case of HTTP/2 it can lead to a large count of useless "Bad Request" messages in the BIND log, as often we attempt to send such request over effectively finished HTTP/2 sessions. This commit fixes that. (cherry picked from commit 937b5f8349a6a5e15af254a53a659e39c7c1d179) --- lib/isc/netmgr/http.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/isc/netmgr/http.c b/lib/isc/netmgr/http.c index aed8dacfca..9a1249feba 100644 --- a/lib/isc/netmgr/http.c +++ b/lib/isc/netmgr/http.c @@ -2484,6 +2484,12 @@ isc__nm_http_bad_request(isc_nmhandle_t *handle) { REQUIRE(!sock->client); REQUIRE(VALID_HTTP2_SESSION(sock->h2->session)); + if (sock->h2->response_submitted || + !http_session_active(sock->h2->session)) + { + return; + } + (void)server_send_error_response(ISC_HTTP_ERROR_BAD_REQUEST, sock->h2->session->ngsession, sock); }