Re-exportsΒ§
use std::borrow::Cow;πuse std::collections::BTreeMap;πuse std::net::IpAddr;πuse std::time::Duration;πuse axum::extract::State;πuse axum::response::Html;πuse axum::response::IntoResponse;πuse axum::response::Response;πuse axum_extra::extract::cookie::Cookie;πuse axum_extra::extract::cookie::CookieJar;πuse axum_extra::extract::cookie::SameSite;πuse base64::Engine as _;πuse base64::engine::general_purpose::URL_SAFE_NO_PAD as b64;πuse const_str::format as const_format;πuse futures::TryFutureExt;πuse futures::future::try_join;πuse reqwest::header::CACHE_CONTROL;πuse reqwest::header::CONTENT_SECURITY_POLICY;πuse reqwest::header::CONTENT_TYPE;πuse reqwest::header::HeaderValue;πuse reqwest::header::REFERRER_POLICY;πuse reqwest::header::SET_COOKIE;πuse ruma::Mxc;πuse ruma::OwnedMxcUri;πuse ruma::OwnedUserId;πuse ruma::ServerName;πuse ruma::UserId;πuse ruma::api::client::session::SsoRedirectAction;πuse ruma::api::client::session::sso_callback;πuse ruma::api::client::session::sso_callback::unstable::Response as SsoCallbackResponse;πuse ruma::api::client::session::sso_login;πuse ruma::api::client::session::sso_login_with_provider;πuse ruma::api::client::uiaa::AuthType;πuse ruma::api::error::ErrorKind;πuse serde::Deserialize;πuse serde::Deserialize;πuse serde::Serialize;πuse serde::Serialize;πuse serde_html_form::from_str as from_form_str;πuse serde_html_form::to_string as to_form_string;πuse serde_json::Value as JsonValue;πuse tuwunel_core::Err;πuse tuwunel_core::Result;πuse tuwunel_core::at;πuse tuwunel_core::config::IdentityProvider;πuse tuwunel_core::debug::INFO_SPAN_LEVEL;πuse tuwunel_core::debug_info;πuse tuwunel_core::debug_warn;πuse tuwunel_core::err;πuse tuwunel_core::info;πuse tuwunel_core::info;πuse tuwunel_core::is_not_equal_to;πuse tuwunel_core::itertools::Itertools;πuse tuwunel_core::utils;πuse tuwunel_core::utils::content_disposition::make_content_disposition;πuse tuwunel_core::utils::deadline_has_passed;πuse tuwunel_core::utils::deserialize_lenient_bool;πuse tuwunel_core::utils::hash::sha256;πuse tuwunel_core::utils::html::escape as html_escape;πuse tuwunel_core::utils::result::FlatOk;πuse tuwunel_core::utils::result::LogErr;πuse tuwunel_core::utils::stream::ReadyExt;πuse tuwunel_core::utils::string::EMPTY;πuse tuwunel_core::utils::timepoint_from_now;πuse tuwunel_core::utils::url::redirect_allowlisted;πuse tuwunel_core::warn;πuse tuwunel_service::Services;πuse tuwunel_service::client::read_response_capped;πuse tuwunel_service::media::MXC_LENGTH;πuse tuwunel_service::oauth::CODE_VERIFIER_LENGTH;πuse tuwunel_service::oauth::Provider;πuse tuwunel_service::oauth::SESSION_ID_LENGTH;πuse tuwunel_service::oauth::Session;πuse tuwunel_service::oauth::TokenResponse;πuse tuwunel_service::oauth::UserInfo;πuse tuwunel_service::oauth::fallback_localpart;πuse tuwunel_service::oauth::unique_id_sub;πuse tuwunel_service::threepid::canonicalize_email;πuse tuwunel_service::users::PASSWORD_SENTINEL;πuse tuwunel_service::users::Register;πuse url::Url;πpub(crate) use self::uiaa::sso_complete_js_route;πpub(crate) use self::uiaa::sso_css_route;πpub(crate) use self::uiaa::sso_fallback_route;πuse super::TOKEN_LENGTH;πuse crate::ClientIp;πuse crate::Ruma;πuse crate::RumaResponse;πuse crate::router::ACCOUNT_HEAD;πuse crate::utils::bind_new_account_email;π
ModulesΒ§
- uiaa π
StructsΒ§
- Grant
Cookie π - Grant
Query π - Grant phase query string.
StaticsΒ§
- CONFIRM_
HTML π - GRANT_
SESSION_ πCOOKIE
FunctionsΒ§
- append_
login_ πtoken - apply_
token_ πresponse - bind_
email π - chain_
next_ πidp_ id - confirm_
login_ πredirect - decide_
user_ πid - decode_
apple_ πuserinfo_ from_ id_ token - display_
login_ πtarget - finalize_
login_ πredirect - grant_
session_ πcookie - grant_
session_ πcookie_ path - Path attribute for the grant-session cookie. The set and removal cookies must use the same value: a cookie is only replaced (and thus removed) when its name, domain and path all match (RFC 6265 5.3), and a Set-Cookie without an explicit path defaults to the request-URIβs directory.
- handle_
sso_ πlogin - handle_
uiaa π - ldap_
user_ πexists - parse_
user_ πid - redirect_
trusted π - register_
user π - set_
avatar π - sso_
callback_ πroute - sso_
login_ πroute GET /_matrix/client/v3/login/sso/redirect- sso_
login_ πwith_ provider_ route GET /_matrix/client/v3/login/sso/redirect/{idpId}- try_
user_ πid - validate_
redirect_ πurl - validate_
session_ πcookie