diff options
Diffstat (limited to 'ui/gtk/wlan_stat_dlg.c')
-rw-r--r-- | ui/gtk/wlan_stat_dlg.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/ui/gtk/wlan_stat_dlg.c b/ui/gtk/wlan_stat_dlg.c index 8b92c3e8fe..672c672813 100644 --- a/ui/gtk/wlan_stat_dlg.c +++ b/ui/gtk/wlan_stat_dlg.c @@ -386,10 +386,17 @@ wlanstat_packet (void *phs, packet_info *pinfo, epan_dissect_t *edt _U_, const v wlanstat_t *hs = (wlanstat_t *)phs; wlan_ep_t *tmp, *te = NULL; const struct _wlan_hdr *si = (const struct _wlan_hdr *) phi; + guint16 frame_type = si->type & 0xff0; if (!hs) return (0); + if (!((frame_type == 0x0) || (frame_type == 0x20) || (frame_type == 0x30)) + || ((frame_type == 0x20) && DATA_FRAME_IS_NULL(si->type))) { + /* Not a management or non null data or extension frame; let's skip it */ + return (0); + } + hs->number_of_packets++; if (!hs->ep_list) { hs->ep_list = alloc_wlan_ep (si, pinfo); |