Fix UDP associate address

This commit is contained in:
B. Blechschmidt 2023-08-20 17:27:22 +02:00
parent 9ad22fc419
commit d5b76c18cc

View file

@ -203,7 +203,13 @@ impl SocksProxyImpl {
} }
fn send_request_socks5(&mut self) -> Result<(), Error> { fn send_request_socks5(&mut self) -> Result<(), Error> {
protocol::Request::new(self.command, self.info.dst.clone()).write_to_stream(&mut self.server_outbuf)?; use socks5_impl::protocol::Command::UdpAssociate;
let addr = if self.command == UdpAssociate {
Address::unspecified()
} else {
self.info.dst.clone()
};
protocol::Request::new(self.command, addr).write_to_stream(&mut self.server_outbuf)?;
self.state = SocksState::ReceiveResponse; self.state = SocksState::ReceiveResponse;
self.state_change() self.state_change()
} }