summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2020-01-30 09:55:40 -0500
committerNick Mathewson <nickm@torproject.org>2020-01-30 09:55:40 -0500
commit9ea0c0bfcdbed7734f49f20a032da7f978b48ad4 (patch)
tree526575358dae23469f96439f72d366bcf20e4d08
parent39c5e1b84994c2f226a8530b930f215cc5ffb877 (diff)
parent1f163fcbde4591bcb5764d6bbe0fea8aa559fc33 (diff)
downloadtor-9ea0c0bfcdbed7734f49f20a032da7f978b48ad4.tar.gz
tor-9ea0c0bfcdbed7734f49f20a032da7f978b48ad4.zip
Merge branch 'bug33093_logging_035'
-rw-r--r--changes/bug33093_logging5
-rw-r--r--src/lib/tls/buffers_tls.c4
2 files changed, 7 insertions, 2 deletions
diff --git a/changes/bug33093_logging b/changes/bug33093_logging
new file mode 100644
index 0000000000..e26e4a64af
--- /dev/null
+++ b/changes/bug33093_logging
@@ -0,0 +1,5 @@
+ o Minor bugfixes (logging):
+ - If we encounter a bug when flushing a buffer to a TLS connection,
+ only log the bug once per invocation of the Tor process. Previously we
+ would log with every occurrence, which could cause us to run out of
+ disk space. Fixes bug 33093; bugfix on 0.3.2.2-alpha.
diff --git a/src/lib/tls/buffers_tls.c b/src/lib/tls/buffers_tls.c
index af6c482c95..79a908e2cc 100644
--- a/src/lib/tls/buffers_tls.c
+++ b/src/lib/tls/buffers_tls.c
@@ -146,10 +146,10 @@ buf_flush_to_tls(buf_t *buf, tor_tls_t *tls, size_t flushlen,
size_t flushed = 0;
ssize_t sz;
tor_assert(buf_flushlen);
- if (BUG(*buf_flushlen > buf->datalen)) {
+ IF_BUG_ONCE(*buf_flushlen > buf->datalen) {
*buf_flushlen = buf->datalen;
}
- if (BUG(flushlen > *buf_flushlen)) {
+ IF_BUG_ONCE(flushlen > *buf_flushlen) {
flushlen = *buf_flushlen;
}
sz = (ssize_t) flushlen;