summaryrefslogtreecommitdiff
path: root/src/or/directory.c
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2005-10-04 22:34:09 +0000
committerNick Mathewson <nickm@torproject.org>2005-10-04 22:34:09 +0000
commit42e17182daa828760da8f839211618113c6ffdc4 (patch)
tree9853ab289bd4c77b47b80a851e2faba97e7229ed /src/or/directory.c
parent61ea5168859785207062ca22be403bbac32f49e3 (diff)
downloadtor-42e17182daa828760da8f839211618113c6ffdc4.tar.gz
tor-42e17182daa828760da8f839211618113c6ffdc4.zip
When we get an EOF or a timeout on a directory connection, note how many bytes of serverdesc we are dropping. This will help us determine whether it is smart to parse incomplete serverdesc responses.
svn:r5186
Diffstat (limited to 'src/or/directory.c')
-rw-r--r--src/or/directory.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/or/directory.c b/src/or/directory.c
index 60d34b9eed..19cf41f9d7 100644
--- a/src/or/directory.c
+++ b/src/or/directory.c
@@ -1111,6 +1111,12 @@ connection_dir_reached_eof(connection_t *conn)
int retval;
if (conn->state != DIR_CONN_STATE_CLIENT_READING) {
log_fn(LOG_INFO,"conn reached eof, not reading. Closing.");
+ /* This check is temporary; it's to let us know whether we should consider
+ * parsing partial serverdesc responses. */
+ if (conn->purpose == DIR_PURPOSE_FETCH_SERVERDESC) {
+ log_fn(LOG_NOTICE, "Reached EOF while downloading server descriptors; dropping %d bytes.",
+ buf_datalen(conn->inbuf));
+ }
connection_close_immediate(conn); /* it was an error; give up on flushing */
connection_mark_for_close(conn);
return -1;