simplify references to server_name

Signed-off-by: Jason Volk <jason@zemos.net>
This commit is contained in:
Jason Volk 2025-01-25 23:41:39 +00:00
parent 71a3855af6
commit 3e0ff2dc84
13 changed files with 29 additions and 26 deletions

View file

@ -554,7 +554,7 @@ pub(super) async fn first_pdu_in_room(
.services
.rooms
.state_cache
.server_in_room(&self.services.server.config.server_name, &room_id)
.server_in_room(&self.services.server.name, &room_id)
.await
{
return Ok(RoomMessageEventContent::text_plain(
@ -583,7 +583,7 @@ pub(super) async fn latest_pdu_in_room(
.services
.rooms
.state_cache
.server_in_room(&self.services.server.config.server_name, &room_id)
.server_in_room(&self.services.server.name, &room_id)
.await
{
return Ok(RoomMessageEventContent::text_plain(
@ -613,7 +613,7 @@ pub(super) async fn force_set_room_state_from_server(
.services
.rooms
.state_cache
.server_in_room(&self.services.server.config.server_name, &room_id)
.server_in_room(&self.services.server.name, &room_id)
.await
{
return Ok(RoomMessageEventContent::text_plain(
@ -757,7 +757,7 @@ pub(super) async fn get_signing_keys(
query: bool,
) -> Result<RoomMessageEventContent> {
let server_name =
server_name.unwrap_or_else(|| self.services.server.config.server_name.clone().into());
server_name.unwrap_or_else(|| self.services.server.name.clone().into());
if let Some(notary) = notary {
let signing_keys = self
@ -794,7 +794,7 @@ pub(super) async fn get_verify_keys(
server_name: Option<Box<ServerName>>,
) -> Result<RoomMessageEventContent> {
let server_name =
server_name.unwrap_or_else(|| self.services.server.config.server_name.clone().into());
server_name.unwrap_or_else(|| self.services.server.name.clone().into());
let keys = self
.services
@ -824,7 +824,7 @@ pub(super) async fn resolve_true_destination(
));
}
if server_name == self.services.server.config.server_name {
if server_name == self.services.server.name {
return Ok(RoomMessageEventContent::text_plain(
"Not allowed to send federation requests to ourselves. Please use `get-pdu` for \
fetching local PDUs.",

View file

@ -92,7 +92,7 @@ pub(super) async fn remote_user_in_rooms(
&self,
user_id: Box<UserId>,
) -> Result<RoomMessageEventContent> {
if user_id.server_name() == self.services.server.config.server_name {
if user_id.server_name() == self.services.server.name {
return Ok(RoomMessageEventContent::text_plain(
"User belongs to our server, please use `list-joined-rooms` user admin command \
instead.",

View file

@ -34,7 +34,7 @@ pub(super) async fn reload_config(
) -> Result<RoomMessageEventContent> {
let path = path.as_deref().into_iter();
let config = Config::load(path).and_then(|raw| Config::new(&raw))?;
if config.server_name != self.services.server.config.server_name {
if config.server_name != self.services.server.name {
return Err!("You can't change the server name.");
}

View file

@ -37,7 +37,7 @@ pub(crate) async fn create_openid_token_route(
Ok(account::request_openid_token::v3::Response {
access_token,
token_type: TokenType::Bearer,
matrix_server_name: services.server.config.server_name.clone(),
matrix_server_name: services.server.name.clone(),
expires_in: Duration::from_secs(expires_in),
})
}

View file

@ -50,7 +50,7 @@ pub(crate) async fn report_room_route(
if !services
.rooms
.state_cache
.server_in_room(&services.server.config.server_name, &body.room_id)
.server_in_room(&services.server.name, &body.room_id)
.await
{
return Err!(Request(NotFound(

View file

@ -71,7 +71,7 @@ pub(crate) async fn create_room_route(
let room_id: OwnedRoomId = if let Some(custom_room_id) = &body.room_id {
custom_room_id_check(&services, custom_room_id)?
} else {
RoomId::new(&services.server.config.server_name)
RoomId::new(&services.server.name)
};
// check if room ID doesn't already exist instead of erroring on auth check

View file

@ -38,7 +38,7 @@ pub(crate) async fn turn_server_route(
let user = body.sender_user.unwrap_or_else(|| {
UserId::parse_with_server_name(
utils::random_string(RANDOM_USER_ID_LENGTH).to_lowercase(),
&services.server.config.server_name,
&services.server.name,
)
.unwrap()
});

View file

@ -6,12 +6,17 @@ use std::{
time::SystemTime,
};
use ruma::OwnedServerName;
use tokio::{runtime, sync::broadcast};
use crate::{config, config::Config, err, log::Log, metrics::Metrics, Err, Result};
/// Server runtime state; public portion
pub struct Server {
/// Configured name of server. This is the same as the one in the config
/// but developers can (and should) reference this string instead.
pub name: OwnedServerName,
/// Server-wide configuration instance
pub config: config::Manager,
@ -46,6 +51,7 @@ impl Server {
#[must_use]
pub fn new(config: Config, runtime: Option<runtime::Handle>, log: Log) -> Self {
Self {
name: config.server_name.clone(),
config: config::Manager::new(config),
started: SystemTime::now(),
stopping: AtomicBool::new(false),

View file

@ -61,11 +61,11 @@ impl crate::Service for Service {
db,
server: args.server.clone(),
bad_event_ratelimiter: Arc::new(RwLock::new(HashMap::new())),
admin_alias: OwnedRoomAliasId::try_from(format!("#admins:{}", &config.server_name))
admin_alias: OwnedRoomAliasId::try_from(format!("#admins:{}", &args.server.name))
.expect("#admins:server_name is valid alias name"),
server_user: UserId::parse_with_server_name(
String::from("conduit"),
&config.server_name,
&args.server.name,
)
.expect("@conduit:server_name is valid"),
turn_secret,
@ -107,7 +107,7 @@ impl Service {
pub fn current_count(&self) -> Result<u64> { Ok(self.db.current_count()) }
#[inline]
pub fn server_name(&self) -> &ServerName { self.server.config.server_name.as_ref() }
pub fn server_name(&self) -> &ServerName { self.server.name.as_ref() }
pub fn allow_registration(&self) -> bool { self.server.config.allow_registration }
@ -207,7 +207,7 @@ impl Service {
#[inline]
pub fn server_is_ours(&self, server_name: &ServerName) -> bool {
server_name == self.server.config.server_name
server_name == self.server_name()
}
#[inline]

View file

@ -218,8 +218,6 @@ async fn migrate(services: &Services) -> Result<()> {
}
async fn db_lt_12(services: &Services) -> Result<()> {
let config = &services.server.config;
for username in &services
.users
.list_local_users()
@ -227,7 +225,8 @@ async fn db_lt_12(services: &Services) -> Result<()> {
.collect::<Vec<_>>()
.await
{
let user = match UserId::parse_with_server_name(username.as_str(), &config.server_name) {
let user = match UserId::parse_with_server_name(username.as_str(), &services.server.name)
{
| Ok(u) => u,
| Err(e) => {
warn!("Invalid username {username}: {e}");
@ -297,8 +296,6 @@ async fn db_lt_12(services: &Services) -> Result<()> {
}
async fn db_lt_13(services: &Services) -> Result<()> {
let config = &services.server.config;
for username in &services
.users
.list_local_users()
@ -306,7 +303,8 @@ async fn db_lt_13(services: &Services) -> Result<()> {
.collect::<Vec<_>>()
.await
{
let user = match UserId::parse_with_server_name(username.as_str(), &config.server_name) {
let user = match UserId::parse_with_server_name(username.as_str(), &services.server.name)
{
| Ok(u) => u,
| Err(e) => {
warn!("Invalid username {username}: {e}");

View file

@ -401,8 +401,7 @@ impl super::Service {
}
fn validate_dest(&self, dest: &ServerName) -> Result<()> {
let config = &self.services.server.config;
if dest == config.server_name && !config.federation_loopback {
if dest == self.services.server.name && !self.services.server.config.federation_loopback {
return Err!("Won't send federation request to ourselves");
}

View file

@ -150,7 +150,7 @@ impl Service {
let servers_contains_ours = || {
servers
.as_ref()
.is_some_and(|servers| servers.contains(&self.services.server.config.server_name))
.is_some_and(|servers| servers.contains(&self.services.server.name))
};
if !server_is_ours && !servers_contains_ours() {

View file

@ -850,7 +850,7 @@ impl Service {
let txn_id = &*general_purpose::URL_SAFE_NO_PAD.encode(txn_hash);
let request = send_transaction_message::v1::Request {
origin: self.server.config.server_name.clone(),
origin: self.server.name.clone(),
pdus: pdu_jsons,
edus: edu_jsons,
origin_server_ts: MilliSecondsSinceUnixEpoch::now(),