state->handleTimeout(state, false);
}
}
+#ifdef HAVE_NGHTTP2
+ else if (cbData.second.type() == typeid(std::shared_ptr<IncomingHTTP2Connection>)) {
+ auto state = boost::any_cast<std::shared_ptr<IncomingHTTP2Connection>>(cbData.second);
+ if (cbData.first == state->d_handler.getDescriptor()) {
+ vinfolog("Timeout (read) from remote H2 client %s", state->d_ci.remote.toStringWithPort());
+ std::shared_ptr<IncomingTCPConnectionState> parentState = state;
+ state->handleTimeout(parentState, false);
+ }
+ }
+#endif /* HAVE_NGHTTP2 */
else if (cbData.second.type() == typeid(std::shared_ptr<TCPConnectionToBackend>)) {
auto conn = boost::any_cast<std::shared_ptr<TCPConnectionToBackend>>(cbData.second);
vinfolog("Timeout (read) from remote backend %s", conn->getBackendName());
state->handleTimeout(state, true);
}
}
+#ifdef HAVE_NGHTTP2
+ else if (cbData.second.type() == typeid(std::shared_ptr<IncomingHTTP2Connection>)) {
+ auto state = boost::any_cast<std::shared_ptr<IncomingHTTP2Connection>>(cbData.second);
+ if (cbData.first == state->d_handler.getDescriptor()) {
+ vinfolog("Timeout (write) from remote H2 client %s", state->d_ci.remote.toStringWithPort());
+ std::shared_ptr<IncomingTCPConnectionState> parentState = state;
+ state->handleTimeout(parentState, true);
+ }
+ }
+#endif /* HAVE_NGHTTP2 */
else if (cbData.second.type() == typeid(std::shared_ptr<TCPConnectionToBackend>)) {
auto conn = boost::any_cast<std::shared_ptr<TCPConnectionToBackend>>(cbData.second);
vinfolog("Timeout (write) from remote backend %s", conn->getBackendName());
auto state = boost::any_cast<std::shared_ptr<IncomingTCPConnectionState>>(param);
errlog(" - %s", state->toString());
}
+#ifdef HAVE_NGHTTP2
+ else if (param.type() == typeid(std::shared_ptr<IncomingHTTP2Connection>)) {
+ auto state = boost::any_cast<std::shared_ptr<IncomingHTTP2Connection>>(param);
+ errlog(" - %s", state->toString());
+ }
+#endif /* HAVE_NGHTTP2 */
else if (param.type() == typeid(std::shared_ptr<TCPConnectionToBackend>)) {
auto conn = boost::any_cast<std::shared_ptr<TCPConnectionToBackend>>(param);
errlog(" - %s", conn->toString());
gettimeofday(&now, nullptr);
if (ci.cs->dohFrontend) {
-#ifdef HAVE_NGHTTP2
+#ifdef HAVE_NGHTTP2
auto state = std::make_shared<IncomingHTTP2Connection>(std::move(ci), *threadData, now);
state->handleIO();
#endif /* HAVE_NGHTTP2 */