diff options
Diffstat (limited to 'crates/secd/src')
| -rw-r--r-- | crates/secd/src/client/email.rs | 9 | ||||
| -rw-r--r-- | crates/secd/src/lib.rs | 10 |
2 files changed, 12 insertions, 7 deletions
diff --git a/crates/secd/src/client/email.rs b/crates/secd/src/client/email.rs index fc48702..2712037 100644 --- a/crates/secd/src/client/email.rs +++ b/crates/secd/src/client/email.rs @@ -1,6 +1,7 @@ use std::{path::PathBuf, str::FromStr}; use email_address::EmailAddress; +use time::OffsetDateTime; use super::{ EmailMessenger, EmailMessengerError, EmailType, EMAIL_TEMPLATE_DEFAULT_LOGIN, @@ -51,8 +52,12 @@ impl EmailMessenger for LocalEmailStubber { // TODO: write to the system mailbox instead? std::fs::write( - PathBuf::from_str(&format!("/tmp/{}.localmail", validation_id)) - .map_err(|_| EmailMessengerError::Unknown)?, + PathBuf::from_str(&format!( + "/tmp/{}_{}.localmail", + OffsetDateTime::now_utc(), + validation_id + )) + .map_err(|_| EmailMessengerError::Unknown)?, body, ) .map_err(|_| EmailMessengerError::FailedToSendEmail)?; diff --git a/crates/secd/src/lib.rs b/crates/secd/src/lib.rs index 9eb7f0e..4feda04 100644 --- a/crates/secd/src/lib.rs +++ b/crates/secd/src/lib.rs @@ -46,16 +46,16 @@ pub struct Identity { #[derive(sqlx::FromRow, Debug, Serialize)] pub struct Session { #[sqlx(rename = "identity_public_id")] - identity_id: IdentityId, + pub identity_id: IdentityId, #[serde(skip_serializing_if = "Option::is_none")] #[sqlx(default)] - secret: Option<SessionSecret>, + pub secret: Option<SessionSecret>, #[serde(with = "time::serde::timestamp")] - created_at: OffsetDateTime, + pub created_at: OffsetDateTime, #[serde(with = "time::serde::timestamp")] - expires_at: OffsetDateTime, + pub expires_at: OffsetDateTime, #[serde(skip_serializing_if = "Option::is_none")] - revoked_at: Option<OffsetDateTime>, + pub revoked_at: Option<OffsetDateTime>, } #[derive(sqlx::FromRow, Debug)] |
