1
2
Fork 0
mirror of https://github.com/mat-1/azalea.git synced 2025-08-02 06:16:04 +00:00

Fix infinite recursion in the DNS resolver (#82)

This commit is contained in:
Luna 2023-03-11 19:11:35 -03:00 committed by GitHub
parent c57c68ddf8
commit 81e7adb409
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -50,6 +50,15 @@ pub async fn resolve_address(address: &ServerAddress) -> Result<SocketAddr, Reso
port: redirect_srv.port(),
};
if redirect_address.host == address.host {
let lookup_ip_result = resolver.lookup_ip(redirect_address.host).await;
let lookup_ip = lookup_ip_result.map_err(|_| ResolverError::NoIp)?;
return Ok(SocketAddr::new(
lookup_ip.iter().next().unwrap(),
redirect_address.port,
))
}
// debug!("redirecting to {:?}", redirect_address);
return resolve_address(&redirect_address).await;