You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by sh...@apache.org on 2016/05/26 18:12:23 UTC
[trafficserver] branch master updated: TS-4661: SSL Client
Connections not closed.
This is an automated email from the ASF dual-hosted git repository.
shinrich pushed a commit to branch master
in repository https://git-dual.apache.org/repos/asf/trafficserver.git
The following commit(s) were added to refs/heads/master by this push:
new 456ade9 TS-4661: SSL Client Connections not closed.
456ade9 is described below
commit 456ade9ab35787d39d3414149a0ee04f44008268
Author: Susan Hinrichs <sh...@ieee.org>
AuthorDate: Thu May 26 02:09:48 2016 +0000
TS-4661: SSL Client Connections not closed.
---
iocore/net/P_UnixNetVConnection.h | 6 +++++-
proxy/http/Http1ClientSession.cc | 13 +++++++------
proxy/http/Http1ClientTransaction.cc | 2 +-
proxy/http/HttpSM.cc | 2 +-
4 files changed, 14 insertions(+), 9 deletions(-)
diff --git a/iocore/net/P_UnixNetVConnection.h b/iocore/net/P_UnixNetVConnection.h
index 2443d7b..14786eb 100644
--- a/iocore/net/P_UnixNetVConnection.h
+++ b/iocore/net/P_UnixNetVConnection.h
@@ -372,7 +372,11 @@ UnixNetVConnection::set_inactivity_timeout(ink_hrtime timeout)
} else
inactivity_timeout = 0;
#else
- next_inactivity_timeout_at = Thread::get_hrtime() + timeout;
+ if (timeout) {
+ next_inactivity_timeout_at = Thread::get_hrtime() + timeout;
+ } else {
+ next_inactivity_timeout_at = 0;
+ }
#endif
}
diff --git a/proxy/http/Http1ClientSession.cc b/proxy/http/Http1ClientSession.cc
index 0164feb..0afc047 100644
--- a/proxy/http/Http1ClientSession.cc
+++ b/proxy/http/Http1ClientSession.cc
@@ -266,7 +266,7 @@ Http1ClientSession::do_io_close(int alerrno)
// Set the active timeout to the same as the inactive time so
// that this connection does not hang around forever if
// the ua hasn't closed
- client_vc->set_active_timeout(HRTIME_SECONDS(trans.get_sm()->t_state.txn_conf->keep_alive_no_activity_timeout_out));
+ client_vc->set_active_timeout(HRTIME_SECONDS(trans.get_sm()->t_state.txn_conf->keep_alive_no_activity_timeout_in));
}
// [bug 2610799] Drain any data read.
@@ -427,9 +427,10 @@ Http1ClientSession::release(ProxyClientTransaction *trans)
ka_vio = this->do_io_read(this, INT64_MAX, read_buffer);
ink_assert(slave_ka_vio != ka_vio);
- // Y!?
- // client_vc->add_to_keep_alive_lru();
- client_vc->cancel_active_timeout();
+ if (client_vc) {
+ client_vc->cancel_active_timeout();
+ client_vc->add_to_keep_alive_queue();
+ }
trans->destroy();
}
}
@@ -451,8 +452,8 @@ Http1ClientSession::new_transaction()
trans.set_parent(this);
transact_count++;
- // Y!?
- // client_vc->remove_from_keep_alive_lru();
+
+ client_vc->add_to_active_queue();
trans.new_transaction();
}
diff --git a/proxy/http/Http1ClientTransaction.cc b/proxy/http/Http1ClientTransaction.cc
index 22fb1d5..074d283 100644
--- a/proxy/http/Http1ClientTransaction.cc
+++ b/proxy/http/Http1ClientTransaction.cc
@@ -31,7 +31,7 @@ Http1ClientTransaction::release(IOBufferReader *r)
// Must set this inactivity count here rather than in the session because the state machine
// is not availble then
MgmtInt ka_in = current_reader->t_state.txn_conf->keep_alive_no_activity_timeout_in;
- get_netvc()->set_inactivity_timeout(HRTIME_SECONDS(ka_in));
+ set_inactivity_timeout(HRTIME_SECONDS(ka_in));
if (m_active) {
m_active = false;
diff --git a/proxy/http/HttpSM.cc b/proxy/http/HttpSM.cc
index 3f866f6..56aa4b4 100644
--- a/proxy/http/HttpSM.cc
+++ b/proxy/http/HttpSM.cc
@@ -5591,7 +5591,7 @@ HttpSM::do_setup_post_tunnel(HttpVC_t to_vc_type)
if (chunked)
tunnel.set_producer_chunking_action(p, 0, TCA_PASSTHRU_CHUNKED_CONTENT);
- ua_session->get_netvc()->set_inactivity_timeout(HRTIME_SECONDS(t_state.txn_conf->transaction_no_activity_timeout_in));
+ ua_session->set_inactivity_timeout(HRTIME_SECONDS(t_state.txn_conf->transaction_no_activity_timeout_in));
server_session->get_netvc()->set_inactivity_timeout(HRTIME_SECONDS(t_state.txn_conf->transaction_no_activity_timeout_out));
tunnel.tunnel_run(p);
--
To stop receiving notification emails like this one, please contact
['"commits@trafficserver.apache.org" <co...@trafficserver.apache.org>'].