mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-11 05:33:47 +01:00
respond to an 009 XXX
svn:r3201
This commit is contained in:
parent
c79c4200f4
commit
036384fd8e
@ -942,7 +942,7 @@ static int connection_read_to_buf(connection_t *conn, int *max_to_read) {
|
|||||||
result = read_to_buf(conn->s, at_most, conn->inbuf,
|
result = read_to_buf(conn->s, at_most, conn->inbuf,
|
||||||
&conn->inbuf_reached_eof);
|
&conn->inbuf_reached_eof);
|
||||||
|
|
||||||
// log(LOG_DEBUG,"connection_read_to_buf(): read_to_buf returned %d.",read_result);
|
// log_fn(LOG_DEBUG,"read_to_buf returned %d.",read_result);
|
||||||
|
|
||||||
if (result < 0)
|
if (result < 0)
|
||||||
return -1;
|
return -1;
|
||||||
|
@ -252,6 +252,17 @@ static void conn_read(int i) {
|
|||||||
/* XXX Post 0.0.9, we should rewrite this whole if statement;
|
/* XXX Post 0.0.9, we should rewrite this whole if statement;
|
||||||
* something sane may result. Nick suspects that the || below
|
* something sane may result. Nick suspects that the || below
|
||||||
* should be a &&.
|
* should be a &&.
|
||||||
|
*
|
||||||
|
* No, it should remain a ||. Here's why: when we reach the end
|
||||||
|
* of a read bucket, we stop reading on a conn. We don't want to
|
||||||
|
* read any more bytes on it, until we're allowed to resume reading.
|
||||||
|
* So if !connection_is_reading, then return right then. Also, if
|
||||||
|
* poll() said nothing (true because the if above), and there's
|
||||||
|
* nothing pending, then also return because nothing to do.
|
||||||
|
*
|
||||||
|
* If poll *does* have something to say, even though
|
||||||
|
* !connection_is_reading, then we want to handle it in connection.c
|
||||||
|
* to make it stop reading for next time, else we loop.
|
||||||
*/
|
*/
|
||||||
if (!connection_is_reading(conn) ||
|
if (!connection_is_reading(conn) ||
|
||||||
!connection_has_pending_tls_data(conn))
|
!connection_has_pending_tls_data(conn))
|
||||||
|
Loading…
Reference in New Issue
Block a user