This commit is contained in:
zekroTJA committed 2026-07-15 22:20:36 +02:00
commit 0dc3a6c0f6
11 files changed
+243

No files matched your search

+6
View File
@@ -0,0 +1,6 @@
[package]
name = "runtime-check"
version = "0.1.0"
edition = "2024"
[dependencies]
+55
View File
@@ -0,0 +1,55 @@
#![allow(unused)]
use std::collections::HashMap;
struct CredentialManager {
locked: bool,
entries: HashMap<String, String>,
}
impl CredentialManager {
pub fn new() -> CredentialManager {
CredentialManager {
locked: false,
entries: HashMap::new(),
}
}
pub fn unlock(&self, master_secret: &str) -> Result<(), &'static str> {
if !self.locked {
return Err("already unlocked");
}
todo!()
}
pub fn set(&mut self, key: &str, secret: &str) -> Result<(), &'static str> {
if self.locked {
return Err("locked");
}
todo!()
}
pub fn get(&mut self, key: &str) -> Result<Option<&str>, &'static str> {
if self.locked {
return Err("locked");
}
todo!()
}
pub fn lock(&self) -> Result<(), &'static str> {
if self.locked {
return Err("already locked");
}
todo!()
}
}
fn main() -> Result<(), &'static str> {
let mut pw = CredentialManager::new();
pw.unlock("pssst")?;
pw.set("foo", "bar")?;
let val = pw.get("foo")?;
pw.lock()?;
Ok(())
}