summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKjetil Orbekk <kjetil.orbekk@gmail.com>2017-06-19 21:48:52 -0400
committerKjetil Orbekk <kjetil.orbekk@gmail.com>2017-06-19 21:48:52 -0400
commitf005d0708832c05366110f9523bb522828270a09 (patch)
treeefc3194cd64dae8004960c92da4d6f0342e8e212
parenta65d615c17127fb1d9c37648a37255778a12fa22 (diff)
Add acls to database schema.
-rw-r--r--src/db.rs17
1 files changed, 15 insertions, 2 deletions
diff --git a/src/db.rs b/src/db.rs
index 872ae60..2cc81e9 100644
--- a/src/db.rs
+++ b/src/db.rs
@@ -14,12 +14,25 @@ fn is_initialized(conn: &mut Connection) -> Result<bool> {
pub fn init(conn: &mut Connection) -> Result<()> {
if !is_initialized(conn)? {
info!("Initializing db...");
- conn.execute_batch("
+ conn.execute_batch(r#"
BEGIN;
+
CREATE TABLE IF NOT EXISTS users
(username TEXT PRIMARY KEY, salt TEXT, passwd TEXT);
+
+ CREATE TABLE IF NOT EXISTS acls
+ (username TEXT NOT NULL,
+ unit TEXT NOT NULL,
+ read BOOL,
+ change BOOL,
+ PRIMARY KEY (username, unit));
+
+ INSERT OR IGNORE INTO acls
+ (username, unit, read, change) VALUES
+ ('*', '*', 0, 0);
+
COMMIT;
- ")
+ "#)
.unwrap();
}
Ok(())