diff options
author | Roger Dingledine <arma@torproject.org> | 2004-01-31 00:36:00 +0000 |
---|---|---|
committer | Roger Dingledine <arma@torproject.org> | 2004-01-31 00:36:00 +0000 |
commit | f00dc6fe1e576a82244b08f488553abfd3bf01a3 (patch) | |
tree | f98a3717b29a87b49a40b11e90de099b56b050cf /src | |
parent | ddcc03acd291c92bedab6e20216200f12a83fede (diff) | |
download | tor-f00dc6fe1e576a82244b08f488553abfd3bf01a3.tar tor-f00dc6fe1e576a82244b08f488553abfd3bf01a3.tar.gz |
last minute fix: don't early-flush non-tls streams
e.g., this breaks directory service
svn:r1033
Diffstat (limited to 'src')
-rw-r--r-- | src/or/connection.c | 4 | ||||
-rw-r--r-- | src/or/directory.c | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/or/connection.c b/src/or/connection.c index e2993fab3..211152a68 100644 --- a/src/or/connection.c +++ b/src/or/connection.c @@ -530,8 +530,8 @@ void connection_write_to_buf(const char *string, int len, connection_t *conn) { * push data out as soon as we know there's enough for a tls record, so * during periods of high load we won't read the entire megabyte from * input before pushing any data out. */ -/* We follow the same algorithm for non-tls streams, because hey, why not. */ - if(conn->outbuf_flushlen < MIN_TLS_FLUSHLEN && + if(connection_speaks_cells(conn) && + conn->outbuf_flushlen < MIN_TLS_FLUSHLEN && conn->outbuf_flushlen+len >= MIN_TLS_FLUSHLEN) { len -= (MIN_TLS_FLUSHLEN - conn->outbuf_flushlen); conn->outbuf_flushlen = MIN_TLS_FLUSHLEN; diff --git a/src/or/directory.c b/src/or/directory.c index 6ea453a98..2598520bd 100644 --- a/src/or/directory.c +++ b/src/or/directory.c @@ -261,7 +261,7 @@ int connection_dir_finished_flushing(connection_t *conn) { log_fn(LOG_INFO,"Finished writing server response. Closing."); return -1; /* kill it */ default: - log_fn(LOG_WARN,"BUG: called in unexpected state."); + log_fn(LOG_WARN,"BUG: called in unexpected state %d.", conn->state); return -1; } return 0; |