diff --git a/crates/tor-chanmgr/src/transport/proxied.rs b/crates/tor-chanmgr/src/transport/proxied.rs index b296126b9..a2ccadba8 100644 --- a/crates/tor-chanmgr/src/transport/proxied.rs +++ b/crates/tor-chanmgr/src/transport/proxied.rs @@ -108,9 +108,6 @@ pub(crate) async fn connect_via_proxy( let mut inbuf = [0_u8; 1024]; let mut n_read = 0; let reply = loop { - // Read some more stuff. - n_read += stream.read(&mut inbuf[n_read..]).await?; - // try to advance the handshake to the next state. let action = match handshake.handshake(&inbuf[..n_read]) { Err(_) => { @@ -142,6 +139,9 @@ pub(crate) async fn connect_via_proxy( if action.finished { break handshake.into_reply(); } + + // Read some more stuff. + n_read += stream.read(&mut inbuf[n_read..]).await?; }; let status = reply