aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Cargo.lock2
-rw-r--r--Cargo.toml2
-rw-r--r--src/lease.rs14
3 files changed, 15 insertions, 3 deletions
diff --git a/Cargo.lock b/Cargo.lock
index 6a8e6ff..a300f02 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -627,7 +627,7 @@ dependencies = [
[[package]]
name = "rsdsl_dhcp4d"
-version = "0.1.2"
+version = "0.1.3"
dependencies = [
"dhcproto",
"ipnet",
diff --git a/Cargo.toml b/Cargo.toml
index 23cab79..2f640cf 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "rsdsl_dhcp4d"
-version = "0.1.2"
+version = "0.1.3"
authors = ["HimbeerserverDE <himbeerserverde@gmail.com>"]
license = "MIT"
edition = "2021"
diff --git a/src/lease.rs b/src/lease.rs
index faa8a3c..8ff017a 100644
--- a/src/lease.rs
+++ b/src/lease.rs
@@ -270,7 +270,19 @@ impl LeaseFileManager {
leases: Vec::new(),
};
- mgr.load()?;
+ match mgr.load() {
+ Ok(_) => {}
+ Err(e) => {
+ println!(
+ "[dhcp4d] reset broken lease file for subnet {}: {}",
+ mgr.config.range.0.octets()[2],
+ e
+ );
+
+ mgr.save()?;
+ }
+ }
+
Ok(mgr)
}