probably incorrectly delete support for non-standardized matrix srv record

This commit is contained in:
Jacob Taylor 2025-04-25 21:06:00 -07:00
parent 1c8ca527db
commit 78c2a07524

View file

@ -306,28 +306,25 @@ impl super::Service {
#[tracing::instrument(name = "srv", level = "debug", skip(self))] #[tracing::instrument(name = "srv", level = "debug", skip(self))]
async fn query_srv_record(&self, hostname: &'_ str) -> Result<Option<FedDest>> { async fn query_srv_record(&self, hostname: &'_ str) -> Result<Option<FedDest>> {
let hostnames = self.services.server.check_running()?;
[format!("_matrix-fed._tcp.{hostname}."), format!("_matrix._tcp.{hostname}.")];
for hostname in hostnames { debug!("querying SRV for {hostname:?}");
self.services.server.check_running()?;
debug!("querying SRV for {hostname:?}"); let hostname_suffix = format!("_matrix-fed._tcp.{hostname}.");
let hostname = hostname.trim_end_matches('.'); let hostname = hostname_suffix.trim_end_matches('.');
match self.resolver.resolver.srv_lookup(hostname).await { match self.resolver.resolver.srv_lookup(hostname).await {
| Err(e) => Self::handle_resolve_error(&e, hostname)?, | Err(e) => Self::handle_resolve_error(&e, hostname)?,
| Ok(result) => { | Ok(result) => {
return Ok(result.iter().next().map(|result| { return Ok(result.iter().next().map(|result| {
FedDest::Named( FedDest::Named(
result.target().to_string().trim_end_matches('.').to_owned(), result.target().to_string().trim_end_matches('.').to_owned(),
format!(":{}", result.port()) format!(":{}", result.port())
.as_str() .as_str()
.try_into() .try_into()
.unwrap_or_else(|_| FedDest::default_port()), .unwrap_or_else(|_| FedDest::default_port()),
) )
})); }));
}, },
}
} }
Ok(None) Ok(None)