From 9e3757eea25b71461c45521dd1ef6c17be34744f Mon Sep 17 00:00:00 2001 From: salmonik Date: Sat, 28 Feb 2026 21:10:20 +0100 Subject: Revert "folder restructuring" This reverts commit 17082597464198fe84be80313b7d51e1e57de639. --- src/bin/server/database.rs | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 src/bin/server/database.rs (limited to 'src/bin/server/database.rs') diff --git a/src/bin/server/database.rs b/src/bin/server/database.rs new file mode 100644 index 0000000..9c51997 --- /dev/null +++ b/src/bin/server/database.rs @@ -0,0 +1,31 @@ +use rusqlite::Connection; + +pub fn init_db() -> Connection { + let conn = Connection::open("server.db").unwrap(); + conn.execute( + "CREATE TABLE IF NOT EXISTS users ( + username TEXT PRIMARY KEY, + hashed_password TEXT NOT NULL + )", + [], + ).unwrap(); + conn +} + +pub fn add_user(conn: &Connection, username: &str, hashed_password: &str) -> Result<(), Box> { + conn.execute( + "INSERT INTO users (username, hashed_password) VALUES (?1, ?2)", + [username, hashed_password], + )?; + Ok(()) +} + +pub fn get_hashed_password(conn: &Connection, username: &str) -> Option { + let mut stmt = conn.prepare("SELECT hashed_password FROM users WHERE username = ?1").unwrap(); + let mut rows = stmt.query([username]).unwrap(); + if let Ok(Some(row)) = rows.next() { + row.get(0).ok() + } else { + None + } +} -- cgit v1.2.3