Make the compat login SSO redirect query parameters ignore invalid values

This commit is contained in:
Quentin Gliech
2026-02-06 09:42:56 +01:00
parent 9afc2dba84
commit c6e8580511

View File

@@ -13,18 +13,21 @@ use mas_router::{CompatLoginSsoAction, CompatLoginSsoComplete, UrlBuilder};
use mas_storage::{BoxRepository, compat::CompatSsoLoginRepository};
use rand::distributions::{Alphanumeric, DistString};
use serde::Deserialize;
use serde_with::serde;
use serde_with::{DefaultOnError, serde, serde_as};
use thiserror::Error;
use url::Url;
use crate::impl_from_error_for_route;
#[serde_as]
#[derive(Debug, Deserialize)]
pub struct Params {
#[serde(rename = "redirectUrl")]
redirect_url: Option<String>,
#[serde_as(deserialize_as = "DefaultOnError")]
action: Option<CompatLoginSsoAction>,
#[serde_as(deserialize_as = "DefaultOnError")]
#[serde(rename = "org.matrix.msc3824.action")]
unstable_action: Option<CompatLoginSsoAction>,
}