diff --git a/server/scan/device_handling.py b/server/scan/device_handling.py index 1a0d9623..3d8ef853 100755 --- a/server/scan/device_handling.py +++ b/server/scan/device_handling.py @@ -316,7 +316,10 @@ def update_devices_data_from_scan (db): FROM CurrentScan WHERE Devices.devMac = CurrentScan.cur_MAC ) - WHERE EXISTS ( + WHERE + (devParentPort IS NULL OR devParentPort IN ("", "null", "(unknown)", "(Unknown)")) + AND + EXISTS ( SELECT 1 FROM CurrentScan WHERE Devices.devMac = CurrentScan.cur_MAC @@ -331,10 +334,13 @@ def update_devices_data_from_scan (db): FROM CurrentScan WHERE Devices.devMac = CurrentScan.cur_MAC ) - WHERE EXISTS ( - SELECT 1 - FROM CurrentScan - WHERE Devices.devMac = CurrentScan.cur_MAC + WHERE + (devParentMAC IS NULL OR devParentMAC IN ("", "null", "(unknown)", "(Unknown)")) + AND + EXISTS ( + SELECT 1 + FROM CurrentScan + WHERE Devices.devMac = CurrentScan.cur_MAC AND CurrentScan.cur_NetworkNodeMAC IS NOT NULL AND CurrentScan.cur_NetworkNodeMAC NOT IN ("", "null") )""")