aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHimbeerserverDE <himbeerserverde@gmail.com>2024-02-03 18:22:04 +0100
committerHimbeerserverDE <himbeerserverde@gmail.com>2024-02-03 18:22:04 +0100
commite7e5c220475174a482fd2882ac09cea22204ce51 (patch)
treedc7c4847d28d77de7731fbb4eacc3f494ce0a912
parent22f6b3d06bb38e011f76cdffd81cfe3090de8f9e (diff)
always issue an administrative open (LCP) when PPPoED starts a new session
Hopefully this fixes a bug that cannot be reproduced outside of production: LCP sometimes remains closed after a line resync. This should ensure that there is no way LCP can get stuck in the closed state even though it doesn't address the unknown root cause. Only time and testing in production will tell if this works. Check the commit history for a revert to find out.
-rw-r--r--src/supervisor.rs2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/supervisor.rs b/src/supervisor.rs
index d9c96a2..a1c5870 100644
--- a/src/supervisor.rs
+++ b/src/supervisor.rs
@@ -341,7 +341,9 @@ impl Client {
let is_active = *pppoe_rx.borrow_and_update();
if is_active {
session_fds = Some(self.new_session_fds().await?);
+
self.lcp.up();
+ self.lcp.open();
println!("[info] <- ({}) confirm pppoe session", self.session_id);
} else {