summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorge Kadianakis <desnacked@riseup.net>2019-04-05 14:53:39 +0300
committerGeorge Kadianakis <desnacked@riseup.net>2019-04-05 14:53:39 +0300
commit3393c8d510a5d62fefbc8c00e4b97d889d6f3143 (patch)
treede78a3d470c3b3a2ad060282c9a18f19ab6c678f
parentb371ea5b0eaca7affed4cdc39d68a34ad8c47c0a (diff)
parent217db9efe13bb4dee5f29684314a67375bb24315 (diff)
downloadtor-3393c8d510a5d62fefbc8c00e4b97d889d6f3143.tar.gz
tor-3393c8d510a5d62fefbc8c00e4b97d889d6f3143.zip
Merge branch 'maint-0.4.0'
-rw-r--r--changes/bug300218
-rw-r--r--src/lib/tls/tortls_openssl.c2
2 files changed, 9 insertions, 1 deletions
diff --git a/changes/bug30021 b/changes/bug30021
new file mode 100644
index 0000000000..2a887f3cf2
--- /dev/null
+++ b/changes/bug30021
@@ -0,0 +1,8 @@
+ o Minor bugfixes (TLS protocol, integration tests):
+ - When classifying a client's selection of TLS ciphers, if the client
+ ciphers are not yet available, do not cache the result. Previously,
+ we had cached the unavailability of the cipher list and never looked
+ again, which in turn led us to assume that the client only supported
+ the ancient V1 link protocol. This, in turn, was causing Stem
+ integration tests to stall in some cases.
+ Fixes bug 30021; bugfix on 0.2.4.8-alpha.
diff --git a/src/lib/tls/tortls_openssl.c b/src/lib/tls/tortls_openssl.c
index f9f7a7a179..b40f948a3b 100644
--- a/src/lib/tls/tortls_openssl.c
+++ b/src/lib/tls/tortls_openssl.c
@@ -905,7 +905,7 @@ tor_tls_classify_client_ciphers(const SSL *ssl,
smartlist_free(elts);
}
done:
- if (tor_tls)
+ if (tor_tls && peer_ciphers)
return tor_tls->client_cipher_list_type = res;
return res;