summaryrefslogtreecommitdiff
path: root/src/auth.rs
diff options
context:
space:
mode:
authorDaniel Hader <[email protected]>2026-05-30 10:10:17 -0500
committerDaniel Hader <[email protected]>2026-05-30 10:10:17 -0500
commit929be68e691c1c4015fc6874111b19b9f5d68c02 (patch)
treeffc4ecb9c63d8dc242c33d69a592dc093dcfd122 /src/auth.rs
parent772c7844c4ca1de632f64eb9428e8e97eea64ac1 (diff)
registration page, me endpoint, and minor content tweaks
Diffstat (limited to 'src/auth.rs')
-rw-r--r--src/auth.rs56
1 files changed, 0 insertions, 56 deletions
diff --git a/src/auth.rs b/src/auth.rs
deleted file mode 100644
index a621756..0000000
--- a/src/auth.rs
+++ /dev/null
@@ -1,56 +0,0 @@
-use axum::{extract::FromRequestParts, http::{StatusCode, request::Parts}};
-use serde::Serialize;
-use argon2::{Argon2, PasswordHash, PasswordVerifier, password_hash::{
- Error, PasswordHasher, SaltString, rand_core::OsRng
-}};
-
-pub fn hash_password(password: &str) -> Result<String, Error> {
- let argon2 = Argon2::default();
- let salt = SaltString::generate(&mut OsRng);
- Ok(argon2.hash_password(password.as_bytes(), &salt)?.to_string())
-}
-
-pub fn check_password(password: &str, password_hash: &str) -> Result<bool, Error> {
- let argon2 = Argon2::default();
- let hash = PasswordHash::new(password_hash)?;
- Ok(argon2.verify_password(password.as_bytes(), &hash).is_ok())
-}
-
-#[derive(Serialize)]
-pub struct Claims {
- pub sub: String,
- pub exp: usize,
- pub iat: usize,
- pub is_admin: bool,
-}
-
-//pub fn create_jwt(email: &str, is_admin: bool) -> Result
-
-pub struct AuthUser(pub Claims);
-
-impl<S: Send + Sync> FromRequestParts<S> for AuthUser {
- type Rejection = StatusCode;
-
- async fn from_request_parts(
- parts: &mut Parts,
- state: &S,
- ) -> Result<Self, Self::Rejection> {
- todo!();
- }
-}
-
-#[cfg(test)]
-mod tests {
- use super::*;
-
- #[test]
- fn test_password_hashing() {
-
- let passwords = vec!["password", "test1", "random"];
-
- for password in &passwords {
- let hash = hash_password(password).unwrap();
- assert!(check_password(password, &hash).unwrap());
- }
- }
-}