diff options
author | Simon Barber <simon.barber@meraki.net> | 2015-12-09 14:26:46 -0800 |
---|---|---|
committer | Guy Harris <guy@alum.mit.edu> | 2015-12-24 07:58:51 +0000 |
commit | ffa9e938e24779470c664ea8eca1e452ce025f97 (patch) | |
tree | 907bfdf175cdfd1ac3694b2ca9de9ca452f33020 /wiretap/network_instruments.c | |
parent | 1ffd4398504d5bc69c322fd64e826fa7eb22ed3b (diff) |
Refactor 802.11 radio flags.
The use of a flag field here is aesthetically unpleasing when the flags
are referred to frequently. Convert these into bitfield entries.
Change-Id: I6f47e31558439dfd343ec7f856d04480366a1237
Reviewed-on: https://code.wireshark.org/review/12511
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Diffstat (limited to 'wiretap/network_instruments.c')
-rw-r--r-- | wiretap/network_instruments.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/wiretap/network_instruments.c b/wiretap/network_instruments.c index 93e9005728..9f2a45accb 100644 --- a/wiretap/network_instruments.c +++ b/wiretap/network_instruments.c @@ -374,11 +374,11 @@ read_packet_header(wtap *wth, FILE_T fh, union wtap_pseudo_header *pseudo_header pseudo_header->eth.fcs_len = 0; break; case WTAP_ENCAP_IEEE_802_11_WITH_RADIO: + memset(&pseudo_header->ieee_802_11, 0, sizeof(pseudo_header->ieee_802_11)); pseudo_header->ieee_802_11.fcs_len = 0; pseudo_header->ieee_802_11.decrypted = FALSE; pseudo_header->ieee_802_11.datapad = FALSE; pseudo_header->ieee_802_11.phy = PHDR_802_11_PHY_UNKNOWN; - pseudo_header->ieee_802_11.presence_flags = 0; /* Updated below */ break; } @@ -404,16 +404,14 @@ read_packet_header(wtap *wth, FILE_T fh, union wtap_pseudo_header *pseudo_header if (!wtap_read_bytes(fh, &wireless_header, sizeof wireless_header, err, err_info)) return -1; - /* update the pseudo header */ - pseudo_header->ieee_802_11.presence_flags |= - PHDR_802_11_HAS_CHANNEL | - PHDR_802_11_HAS_DATA_RATE | - PHDR_802_11_HAS_SIGNAL_PERCENT; /* set decryption status */ /* XXX - what other bits are there in conditions? */ pseudo_header->ieee_802_11.decrypted = (wireless_header.conditions & WIRELESS_WEP_SUCCESS) != 0; + pseudo_header->ieee_802_11.has_channel = TRUE; pseudo_header->ieee_802_11.channel = wireless_header.frequency; + pseudo_header->ieee_802_11.has_data_rate = TRUE; pseudo_header->ieee_802_11.data_rate = wireless_header.rate; + pseudo_header->ieee_802_11.has_signal_percent = TRUE; pseudo_header->ieee_802_11.signal_percent = wireless_header.strengthPercent; offset += (int)sizeof wireless_header; break; |