aboutsummaryrefslogtreecommitdiff
path: root/src/main.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.rs')
-rw-r--r--src/main.rs15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/main.rs b/src/main.rs
index cbcc26d..e72b881 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -72,16 +72,21 @@ async fn main() -> Result<()> {
resync.set_missed_tick_behavior(MissedTickBehavior::Skip);
+ let mut first_sync = true;
loop {
tokio::select! {
_ = resync.tick() => match sync_time(NTP_SERVER).await {
Ok(_) => {
- resync = tokio::time::interval(INTERVAL);
- resync.reset();
- resync.set_missed_tick_behavior(MissedTickBehavior::Skip);
+ if first_sync {
+ resync = tokio::time::interval(INTERVAL);
+ resync.reset();
+ resync.set_missed_tick_behavior(MissedTickBehavior::Skip);
- for dhcp6 in System::new_all().processes_by_exact_name("rsdsl_dhcp6") {
- dhcp6.kill_with(Signal::User2);
+ for dhcp6 in System::new_all().processes_by_exact_name("rsdsl_dhcp6") {
+ dhcp6.kill_with(Signal::User2);
+ }
+
+ first_sync = false;
}
}
Err(e) => eprintln!("can't synchronize system time: {}", e),