switch to uuid parsing for tokens

This commit is contained in:
Kai Jan Kriegel
2023-02-24 05:07:37 +01:00
parent 795c9870e8
commit a470d4eeb0
3 changed files with 22 additions and 7 deletions

View File

@ -235,8 +235,12 @@ impl card_d_e_s_fire_e_v2::Server for User {
let card_key = pry!(params.get_auth_key());
let token = pry!(params.get_token());
let token: Cow<'_, str> = if let Ok(url) = std::str::from_utf8(token) {
Cow::Borrowed(url)
let token: Cow<'_, str> = if let Ok(uuid) = Uuid::from_slice(token) {
Cow::Owned(
uuid.to_hyphenated()
.encode_lower(&mut Uuid::encode_buffer())
.to_string(),
)
} else {
Cow::Owned(hex::encode(token))
};
@ -310,8 +314,12 @@ impl card_d_e_s_fire_e_v2::Server for User {
let params = pry!(params.get());
let token = pry!(params.get_token());
let token: Cow<'_, str> = if let Ok(url) = std::str::from_utf8(token) {
Cow::Borrowed(url)
let token: Cow<'_, str> = if let Ok(uuid) = Uuid::from_slice(token) {
Cow::Owned(
uuid.to_hyphenated()
.encode_lower(&mut Uuid::encode_buffer())
.to_string(),
)
} else {
Cow::Owned(hex::encode(token))
};