mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2025-02-22 22:25:51 +01:00
last minute fix: don't early-flush non-tls streams
e.g., this breaks directory service svn:r1033
This commit is contained in:
parent
ddcc03acd2
commit
f00dc6fe1e
2 changed files with 3 additions and 3 deletions
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
Loading…
Add table
Reference in a new issue