From: Remi Gacogne Date: Wed, 9 Oct 2019 13:41:50 +0000 (+0200) Subject: dnsdist: Count the number of concurrent connections for DoH as well X-Git-Tag: dnsdist-1.4.0-rc4~36^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f2affb3b3a9117393c2a49e6e0ebce1b8b9ea5ea;p=pdns dnsdist: Count the number of concurrent connections for DoH as well --- diff --git a/pdns/dnsdistdist/doh.cc b/pdns/dnsdistdist/doh.cc index 2f3cd457e..d0ea42dcf 100644 --- a/pdns/dnsdistdist/doh.cc +++ b/pdns/dnsdistdist/doh.cc @@ -82,7 +82,15 @@ public: } } + void decrementConcurrentConnections() + { + if (d_cs != nullptr) { + --d_cs->tcpCurrentConnections; + } + } + std::map d_ocspResponses; + ClientState* d_cs{nullptr}; private: h2o_accept_ctx_t d_h2o_accept_ctx; @@ -146,6 +154,7 @@ void handleDOHTimeout(DOHUnit* oldDU) static void on_socketclose(void *data) { DOHAcceptContext* ctx = reinterpret_cast(data); + ctx->decrementConcurrentConnections(); ctx->release(); } @@ -883,6 +892,7 @@ static void on_accept(h2o_socket_t *listener, const char *err) auto accept_ctx = dsc->accept_ctx->get(); sock->on_close.data = dsc->accept_ctx; ++dsc->df->d_httpconnects; + ++dsc->cs->tcpCurrentConnections; h2o_accept(accept_ctx, sock); } @@ -1034,7 +1044,7 @@ static void setupAcceptContext(DOHAcceptContext& ctx, DOHServerConfig& dsc, bool nativeCtx->ssl_ctx = tlsCtx.release(); } - + ctx.d_cs = dsc.cs; ctx.release(); }