Fixed pcap summary print of 802.11 frame

802.11 Packet Type and Packet Subtype is now correctly decoded
This commit is contained in:
Ondrej Kosta
2021-12-10 09:13:56 +01:00
parent 25934167bd
commit 774a26515a
2 changed files with 7 additions and 5 deletions
+3 -3
View File
@@ -175,10 +175,10 @@ esp_err_t pcap_print_summary(pcap_file_handle_t pcap, FILE *print_file)
real_read = fread(packet_payload, payload_length, 1, pcap->file);
ESP_GOTO_ON_FALSE(real_read == 1, ESP_FAIL, err, TAG, "read payload error");
// print packet information
// currently only print info for 802.11
if (file_header.link_type == PCAP_LINK_TYPE_802_11) {
fprintf(print_file, "Packet Type: %2x\n", (packet_payload[0] >> 4) & 0x03);
fprintf(print_file, "Packet Subtype: %2x\n", packet_payload[0] & 0x0F);
// Frame Control Field is coded as LSB first
fprintf(print_file, "Frame Type: %2x\n", (packet_payload[0] >> 2) & 0x03);
fprintf(print_file, "Frame Subtype: %2x\n", (packet_payload[0] >> 4) & 0x0F);
fprintf(print_file, "Destination: ");
for (int j = 0; j < 5; j++) {
fprintf(print_file, "%2x ", packet_payload[4 + j]);