pub mod local_fs; pub mod mode_authorizer; use btlib::{ crypto::{ConcreteCreds, Creds}, Epoch, Principaled, }; use core::time::Duration; use lazy_static::lazy_static; fn one_hour_hence() -> Epoch { Epoch::now() + Duration::from_secs(3600) } lazy_static! { static ref ROOT_CREDS: ConcreteCreds = { let mut root_creds = ConcreteCreds::generate().unwrap(); let writecap = root_creds .issue_writecap(root_creds.principal(), vec![], one_hour_hence()) .unwrap(); root_creds.set_writecap(writecap); root_creds }; static ref NODE_CREDS: ConcreteCreds = { let root_creds = &ROOT_CREDS; let mut node_creds = ConcreteCreds::generate().unwrap(); let writecap = root_creds .issue_writecap(node_creds.principal(), vec![], one_hour_hence()) .unwrap(); node_creds.set_writecap(writecap); node_creds }; } pub fn root_creds() -> &'static ConcreteCreds { &ROOT_CREDS } pub fn node_creds() -> &'static ConcreteCreds { &NODE_CREDS }