diff options
Diffstat (limited to 'src/auth/msa.rs')
| -rw-r--r-- | src/auth/msa.rs | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/auth/msa.rs b/src/auth/msa.rs index e69de29..da9a376 100644 --- a/src/auth/msa.rs +++ b/src/auth/msa.rs @@ -0,0 +1,33 @@ +use chrono::{DateTime, Utc}; +use oauth2::AccessToken; +use serde::{Deserialize, Serialize}; +use crate::auth::AuthError; + +const XBOX_LIVE_AUTH: &str = "https://user.auth.xboxlive.com/user/authenticate"; + +#[derive(Debug, Serialize)] +#[serde(rename_all = "PascalCase")] +struct XboxLiveAuthRequestProperties<'a> { + auth_method: &'a str, + site_name: &'a str, + rps_ticket: &'a str +} + +#[derive(Debug, Serialize)] +#[serde(rename_all = "PascalCase")] +struct XboxLiveAuthRequest<'a> { + properties: XboxLiveAuthRequestProperties<'a>, + relying_party: &'a str, + token_type: &'a str +} + +#[derive(Debug, Deserialize)] +#[serde(rename_all = "PascalCase")] +struct XboxLiveAuthResponse { + token: String, + not_after: DateTime<Utc> +} + +pub fn xbox_live_login(client: &reqwest::Client, access_token: &AccessToken) -> Result<(), AuthError> { + +}
\ No newline at end of file |
