make a media section in the config file

This commit is contained in:
Charles Hall 2025-02-28 10:40:26 -08:00
parent f6b0a10e6e
commit 0a6d2b2731
No known key found for this signature in database
GPG key ID: 7B8E0645816E07CF
4 changed files with 15 additions and 7 deletions

View file

@ -443,7 +443,7 @@ fn legacy_media_routes(config: &Config) -> Router {
// deprecated, but unproblematic
let router = router.ruma_route(c2s::get_media_config_legacy_route);
if config.serve_media_unauthenticated {
if config.media.serve_media_unauthenticated {
router
.ruma_route(c2s::get_content_legacy_route)
.ruma_route(c2s::get_content_as_filename_legacy_route)

View file

@ -45,6 +45,8 @@ pub(crate) struct Config {
pub(crate) server_discovery: ServerDiscovery,
pub(crate) database: DatabaseConfig,
#[serde(default)]
pub(crate) media: MediaConfig,
#[serde(default)]
pub(crate) federation: FederationConfig,
#[serde(default)]
pub(crate) cache: CacheConfig,
@ -59,8 +61,6 @@ pub(crate) struct Config {
pub(crate) allow_encryption: bool,
#[serde(default = "true_fn")]
pub(crate) allow_room_creation: bool,
#[serde(default = "false_fn")]
pub(crate) serve_media_unauthenticated: bool,
#[serde(default = "default_default_room_version")]
pub(crate) default_room_version: RoomVersionId,
#[serde(default)]
@ -74,6 +74,13 @@ pub(crate) struct Config {
pub(crate) emergency_password: Option<String>,
}
#[derive(Debug, Deserialize, Default)]
#[serde(deny_unknown_fields)]
pub(crate) struct MediaConfig {
#[serde(default)]
pub(crate) serve_media_unauthenticated: bool,
}
#[derive(Debug, Deserialize)]
#[serde(deny_unknown_fields, default)]
pub(crate) struct CacheConfig {