mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-28 14:23:30 +01:00
don't double-detach a closing exit conn that's waiting for dns resolve
svn:r3477
This commit is contained in:
parent
692a57c8e8
commit
a0312f3590
@ -215,6 +215,7 @@ void connection_free_all(void) {
|
|||||||
*/
|
*/
|
||||||
void connection_about_to_close_connection(connection_t *conn)
|
void connection_about_to_close_connection(connection_t *conn)
|
||||||
{
|
{
|
||||||
|
circuit_t *circ;
|
||||||
|
|
||||||
assert(conn->marked_for_close);
|
assert(conn->marked_for_close);
|
||||||
|
|
||||||
@ -271,7 +272,9 @@ void connection_about_to_close_connection(connection_t *conn)
|
|||||||
break;
|
break;
|
||||||
case CONN_TYPE_EXIT:
|
case CONN_TYPE_EXIT:
|
||||||
if (conn->state == EXIT_CONN_STATE_RESOLVING) {
|
if (conn->state == EXIT_CONN_STATE_RESOLVING) {
|
||||||
circuit_detach_stream(circuit_get_by_conn(conn), conn);
|
circ = circuit_get_by_conn(conn);
|
||||||
|
if (circ)
|
||||||
|
circuit_detach_stream(circ, conn);
|
||||||
connection_dns_remove(conn);
|
connection_dns_remove(conn);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
Loading…
Reference in New Issue
Block a user