mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-20 10:12:15 +01:00
Call connection_or_close_for_error() properly if write_to_buf() ever fails on an orconn
This commit is contained in:
parent
125c8e5468
commit
6ee9138576
5
changes/bug11304
Normal file
5
changes/bug11304
Normal file
@ -0,0 +1,5 @@
|
||||
o Bugfixes:
|
||||
- If write_to_buf() in connection_write_to_buf_impl_() ever fails,
|
||||
check if it's an or_connection_t and correctly call
|
||||
connection_or_close_for_error() rather than connection_mark_for_close()
|
||||
directly. Fixes bug #11304.
|
@ -4009,6 +4009,12 @@ connection_write_to_buf_impl_,(const char *string, size_t len,
|
||||
"write_to_buf failed. Closing circuit (fd %d).", (int)conn->s);
|
||||
circuit_mark_for_close(circuit_get_by_edge_conn(TO_EDGE_CONN(conn)),
|
||||
END_CIRC_REASON_INTERNAL);
|
||||
} else if (conn->type == CONN_TYPE_OR) {
|
||||
or_connection_t *orconn = TO_OR_CONN(conn);
|
||||
log_warn(LD_NET,
|
||||
"write_to_buf failed on an orconn; notifying of error "
|
||||
"(fd %d)", (int)(conn->s));
|
||||
connection_or_close_for_error(orconn, 0);
|
||||
} else {
|
||||
log_warn(LD_NET,
|
||||
"write_to_buf failed. Closing connection (fd %d).",
|
||||
|
Loading…
Reference in New Issue
Block a user