diff options
author | Arturo Filastò <hellais@gmail.com> | 2012-02-22 00:29:16 -0800 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2012-04-24 11:36:38 -0400 |
commit | e0e4b8475708729a57461bb7336931351b874842 (patch) | |
tree | a81c055ae8b20b6340627069ae20b77100afe894 | |
parent | 461771ebbce3a86965eb2d696f9d42e9bcb777c9 (diff) | |
download | tor-e0e4b8475708729a57461bb7336931351b874842.tar.gz tor-e0e4b8475708729a57461bb7336931351b874842.zip |
Add a check_no_tls_errors() to read_to_buf_tls
Fixes bug #4528 "read_to_buf_tls(): Inconsistency in code".
This check was added back in 0.1.0.3-rc, but somehow we forgot to
leave it in when we refactored read_to_buf_tls in 0.1.0.5-rc.
(patch by Arturo; commit message and changes file by nickm)
-rw-r--r-- | changes/bug4528 | 6 | ||||
-rw-r--r-- | src/or/buffers.c | 3 |
2 files changed, 9 insertions, 0 deletions
diff --git a/changes/bug4528 b/changes/bug4528 new file mode 100644 index 0000000000..8703d6a010 --- /dev/null +++ b/changes/bug4528 @@ -0,0 +1,6 @@ + + o Minor bugfixes: + - Make sure that there are no unhandled pending TLS errors before + reading from a TLS stream. We had checks in 0.1.0.3-rc, but + lost them in 0.1.0.5-rc when we refactored read_to_buf_tls(). + Bugfix on 0.1.0.5-rc; fixes bug 4528. diff --git a/src/or/buffers.c b/src/or/buffers.c index d4fc44ba9f..d60e54e87a 100644 --- a/src/or/buffers.c +++ b/src/or/buffers.c @@ -744,6 +744,9 @@ read_to_buf_tls(tor_tls_t *tls, size_t at_most, buf_t *buf) { int r = 0; size_t total_read = 0; + + check_no_tls_errors(); + check(); while (at_most > total_read) { |