diff --git a/src/detection/wifi/wifi_apple.m b/src/detection/wifi/wifi_apple.m index 775856eec..d76f98848 100644 --- a/src/detection/wifi/wifi_apple.m +++ b/src/detection/wifi/wifi_apple.m @@ -1,6 +1,7 @@ #include "wifi.h" #import +#import const char* ffDetectWifi(FFlist* result) { @@ -31,7 +32,12 @@ const char* ffDetectWifi(FFlist* result) if(!inf.serviceActive) continue; - ffStrbufAppendS(&item->conn.ssid, inf.ssid.UTF8String); + [CLLocationManager.new requestAlwaysAuthorization]; + if (inf.ssid) + ffStrbufAppendS(&item->conn.ssid, inf.ssid.UTF8String); + else + ffStrbufSetStatic(&item->conn.ssid, ""); // https://developer.apple.com/forums/thread/732431 + ffStrbufAppendS(&item->conn.macAddress, inf.hardwareAddress.UTF8String); switch(inf.activePHYMode) { @@ -116,6 +122,9 @@ const char* ffDetectWifi(FFlist* result) case 15 /*kCWSecurityOWETransition*/: ffStrbufAppendS(&item->conn.security, "OWE Transition"); break; + case kCWSecurityUnknown: + // Ignore + break; default: ffStrbufAppendF(&item->conn.security, "Unknown (%ld)", inf.security); break;