Skip to content

Commit

Permalink
fix
Browse files Browse the repository at this point in the history
  • Loading branch information
pythops committed Oct 10, 2024
1 parent 156b318 commit 0291100
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 17 deletions.
6 changes: 3 additions & 3 deletions oryx-tui/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,11 @@ kanal = "0.1.0-pre8"
mimalloc = "0.1"
clap = { version = "4", features = ["derive", "cargo"] }
network-types = "0.0.7"
uuid = { version = "1", default-features = false, features = ["v4","serde"] }
uuid = { version = "1", default-features = false, features = ["v4", "serde"] }
log = "0.4"
env_logger = "0.11"
serde_json = "1.0.128"
serde = {version = "1.0", features = ["derive"] }
serde_json = "1"
serde = { version = "1", features = ["derive"] }

[[bin]]
name = "oryx"
Expand Down
8 changes: 3 additions & 5 deletions oryx-tui/src/app.rs
Original file line number Diff line number Diff line change
Expand Up @@ -135,12 +135,10 @@ impl App {
}

pub fn quit(&mut self) {
match self.section.firewall.save_rules() {
Ok(()) => {}
Err(err) => {
error!("{}", err)
}
if let Err(e) = self.section.firewall.save_rules() {
error!("{}", e)
}

self.running = false;
}
}
19 changes: 10 additions & 9 deletions oryx-tui/src/section/firewall.rs
Original file line number Diff line number Diff line change
Expand Up @@ -306,7 +306,7 @@ impl Firewall {
egress_sender: kanal::Sender<FirewallSignal>,
) -> Self {
let rules_list: Vec<FirewallRule> = match Self::load_saved_rules() {
Ok(maybe_saved_rules) => maybe_saved_rules.unwrap_or_default(),
Ok(saved_rules) => saved_rules,

Err(err) => {
error!("{}", err.to_string());
Expand Down Expand Up @@ -342,31 +342,32 @@ impl Firewall {
}

let oryx_export_file = oryx_export_dir.join("firewall.json");
fs::write(oryx_export_file, json).expect("Could not save Firewall Rules");
fs::write(oryx_export_file, json)?;
info!("Firewall Rules saved");
}
Ok(())
}

fn load_saved_rules() -> AppResult<Option<Vec<FirewallRule>>> {
fn load_saved_rules() -> AppResult<Vec<FirewallRule>> {
info!("Loading Firewall Rules");
let oryx_export_file = dirs::home_dir().unwrap().join("oryx").join("firewall.json");
if oryx_export_file.exists() {
info!("Found previously saved Firewall Rules");
let json_string =
fs::read_to_string(oryx_export_file).expect("Could not load Firewall Rules");
let mut parsed_rules: Vec<FirewallRule> =
serde_json::from_str(&json_string).expect("Could not load Firewall Rules");

let json_string = fs::read_to_string(oryx_export_file)?;

let mut parsed_rules: Vec<FirewallRule> = serde_json::from_str(&json_string)?;

// as we don't know if ingress/egress programs are loaded we have to disable all rules
for rule in &mut parsed_rules {
rule.enabled = false
}

info!("Firewall Rules loaded");
Ok(Some(parsed_rules))
Ok(parsed_rules)
} else {
info!("No saved Firewall Rules found");
Ok(None)
Ok(Vec::new())
}
}

Expand Down

0 comments on commit 0291100

Please sign in to comment.