From cb7833c724482020aee37ec624db0f8705c5eff4 Mon Sep 17 00:00:00 2001 From: Philippe Houdoin Date: Thu, 3 Aug 2017 14:40:48 +0000 Subject: [PATCH] networkstatus: add no NoLink and LinkNoConfig status An interface that fail to configure due to link lost will be reported to have "No Link" instead of to be still "Configuring...", which was not the actual state. --- src/apps/networkstatus/NetworkStatusView.cpp | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/apps/networkstatus/NetworkStatusView.cpp b/src/apps/networkstatus/NetworkStatusView.cpp index 2495f3b9d9..1062bc87ea 100644 --- a/src/apps/networkstatus/NetworkStatusView.cpp +++ b/src/apps/networkstatus/NetworkStatusView.cpp @@ -498,16 +498,17 @@ NetworkStatusView::_DetermineInterfaceStatus( const BNetworkInterface& interface) { uint32 flags = interface.Flags(); - int32 status = kStatusNoLink; - - // TODO: no kStatusLinkNoConfig yet + if ((flags & IFF_LINK) == 0) + return kStatusNoLink; + if ((flags & (IFF_UP | IFF_LINK | IFF_CONFIGURING)) == IFF_LINK) + return kStatusLinkNoConfig; if (flags & IFF_CONFIGURING) - status = kStatusConnecting; - else if ((flags & (IFF_UP | IFF_LINK)) == (IFF_UP | IFF_LINK)) - status = kStatusReady; + return kStatusConnecting; + if ((flags & (IFF_UP | IFF_LINK)) == (IFF_UP | IFF_LINK)) + return kStatusReady; - return status; + return kStatusUnknown; }