diff --git a/enrich.py b/enrich.py index c1c6674..0badc68 100755 --- a/enrich.py +++ b/enrich.py @@ -393,9 +393,12 @@ def analyze_pcap(pcapng_path, start_ts, end_ts, ap_bssid, ap_channel): continue ssid_hidden_status[ssid] = hidden_ssid - if ssid not in ssid_encryption_status: - ssid_encryption_status[ssid] = is_open - + # Store all observed values + if ssid in ssid_encryption_status: + ssid_encryption_status[ssid].append(is_open) + else: + ssid_encryption_status[ssid] = [is_open] + ssid_packet_counts[ssid] += 1 bssid = getattr(wlan, 'bssid', '').lower() @@ -434,7 +437,7 @@ def analyze_pcap(pcapng_path, start_ts, end_ts, ap_bssid, ap_channel): ssid_summary.append({ 'SSID': ssid, 'Hidden': ssid_hidden_status.get(ssid, False), - 'Open': ssid_encryption_status.get(ssid, True), + 'Open': all(ssid_encryption_status.get(ssid, [True])), 'BSSID_Count': len(bssids), 'BSSIDs': ";".join(sorted(bssids)), 'Avg_Signal': mean(signals) if signals else 0,