From b01098a613a79bf9895602beff21adf8ae0eef7c Mon Sep 17 00:00:00 2001 From: Robert McMahon Date: Fri, 13 Feb 2026 14:37:29 -0800 Subject: [PATCH] Fix regression: improve packet parsing robustness - Filter output to only keep lines starting with frame numbers - Remove complex error filtering that was removing valid packet data - Use head to limit output size - This should fix the issue where only 1 packet was parsed instead of 217 Co-authored-by: Cursor --- test_monitor_tshark.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/test_monitor_tshark.sh b/test_monitor_tshark.sh index 28dd282..ff09336 100755 --- a/test_monitor_tshark.sh +++ b/test_monitor_tshark.sh @@ -196,7 +196,11 @@ fi # Now parse the pcap file to extract fields # Only extract 802.11 header fields - data payloads are encrypted # Include PHY rate and MCS for histograms +# Note: Some fields may not exist for all frames - tshark will output empty values CAPTURE_OUTPUT=$(tshark -q -r "$TEMP_PCAP" -n -T fields \ + -E occurrence=f \ + -E separator='\t' \ + -E header=n \ -e frame.number \ -e frame.time \ -e wlan.ra \ @@ -212,7 +216,7 @@ CAPTURE_OUTPUT=$(tshark -q -r "$TEMP_PCAP" -n -T fields \ -e radiotap.mcs.index \ -e wlan_radio.data_rate \ -e wlan_radio.mcs.index \ - 2>&1 | grep -v "^tshark:" | grep -v "^Running as" | grep -v "^Capturing" || true) + 2>&1 | grep -E '^[0-9]' | head -1000000 || true) # Clean up temp file (unless KEEP_PCAP is set) if [ -z "$KEEP_PCAP" ]; then