aboutsummaryrefslogtreecommitdiff
path: root/src/or/circuituse.c
diff options
context:
space:
mode:
authorYawning Angel <yawning@schwanenlied.me>2015-09-01 16:30:48 +0000
committerNick Mathewson <nickm@torproject.org>2015-09-08 14:02:08 -0400
commit54510d4d1a66d2dd9a618699bd2e51bf4ade4dea (patch)
tree65cc4e1666368fffa57b4b1d0e8df14b0b81611c /src/or/circuituse.c
parenta16115d9cb8c2e88da8a59c212155e2fd0e16aa3 (diff)
downloadtor-54510d4d1a66d2dd9a618699bd2e51bf4ade4dea.tar.gz
tor-54510d4d1a66d2dd9a618699bd2e51bf4ade4dea.zip
Add `KeepAliveIsolateSOCKSAuth` as a SOCKSPort option.
This controls the circuit dirtyness reset behavior added for Tor Browser's user experience fix (#15482). Unlike previous iterations of this patch, the tunable actually works, and is documented.
Diffstat (limited to 'src/or/circuituse.c')
-rw-r--r--src/or/circuituse.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/or/circuituse.c b/src/or/circuituse.c
index e10bb82641..00340fd689 100644
--- a/src/or/circuituse.c
+++ b/src/or/circuituse.c
@@ -2284,11 +2284,11 @@ connection_ap_handshake_attach_chosen_circuit(entry_connection_t *conn,
base_conn->state = AP_CONN_STATE_CIRCUIT_WAIT;
- if (!circ->base_.timestamp_dirty) {
- circ->base_.timestamp_dirty = approx_time();
- } else if ((conn->entry_cfg.isolation_flags & ISO_SOCKSAUTH) &&
- (conn->socks_request->usernamelen ||
- conn->socks_request->passwordlen)) {
+ if (!circ->base_.timestamp_dirty ||
+ ((conn->entry_cfg.isolation_flags & ISO_SOCKSAUTH) &&
+ (conn->entry_cfg.socks_iso_keep_alive) &&
+ (conn->socks_request->usernamelen ||
+ conn->socks_request->passwordlen))) {
/* When stream isolation is in use and controlled by an application
* we are willing to keep using the stream. */
circ->base_.timestamp_dirty = approx_time();