From f00dc6fe1e576a82244b08f488553abfd3bf01a3 Mon Sep 17 00:00:00 2001 From: Roger Dingledine Date: Sat, 31 Jan 2004 00:36:00 +0000 Subject: last minute fix: don't early-flush non-tls streams e.g., this breaks directory service svn:r1033 --- src/or/connection.c | 4 ++-- 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 e2993fab35..211152a685 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 6ea453a983..2598520bd0 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; -- cgit v1.2.3-54-g00ecf