From 7aba63496b2f540f760f420b6c7743b7de2b6de3 Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Tue, 12 Nov 2024 23:19:04 -0500 Subject: [PATCH] net_server: Remove autoconfiguration client when link goes inactive. Otherwise DHCP will just keep trying to send requests forever. --- src/servers/net/AutoconfigLooper.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/servers/net/AutoconfigLooper.cpp b/src/servers/net/AutoconfigLooper.cpp index bd11a2f589..a68cbf03d0 100644 --- a/src/servers/net/AutoconfigLooper.cpp +++ b/src/servers/net/AutoconfigLooper.cpp @@ -172,11 +172,12 @@ AutoconfigLooper::_NetworkMonitorNotification(BMessage* message) if (message->FindInt32("media", &media) != B_OK) break; - if ((fLastMediaStatus & IFM_ACTIVE) == 0 - && (media & IFM_ACTIVE) != 0) { + if ((fLastMediaStatus & IFM_ACTIVE) == 0 && (media & IFM_ACTIVE) != 0) { // Reconfigure the interface when we have a link again _ConfigureIPv4(); //_ConfigureIPv6(); // TODO: router advertisement and dhcpv6 + } else if ((fLastMediaStatus & IFM_ACTIVE) != 0 && (media & IFM_ACTIVE) == 0) { + _RemoveClient(); } fLastMediaStatus = media;