Clean up error handling for server_server::get_server_keys_route

This commit is contained in:
Jonas Platte 2022-01-22 13:32:21 +01:00
parent 1f7b3fa4ac
commit d1d2217019
No known key found for this signature in database
GPG key ID: 7D261D771D915378

View file

@ -516,10 +516,9 @@ pub async fn get_server_version_route(
/// forever.
// Response type for this endpoint is Json because we need to calculate a signature for the response
#[tracing::instrument(skip(db))]
pub async fn get_server_keys_route(db: DatabaseGuard) -> impl IntoResponse {
pub async fn get_server_keys_route(db: DatabaseGuard) -> Result<impl IntoResponse> {
if !db.globals.allow_federation() {
// TODO: Use proper types
return Json("Federation is disabled.").into_response();
return Err(Error::bad_config("Federation is disabled."));
}
let mut verify_keys: BTreeMap<Box<ServerSigningKeyId>, VerifyKey> = BTreeMap::new();
@ -557,7 +556,7 @@ pub async fn get_server_keys_route(db: DatabaseGuard) -> impl IntoResponse {
)
.unwrap();
Json(response).into_response()
Ok(Json(response))
}
/// # `GET /_matrix/key/v2/server/{keyId}`