From d77d3212b85b3a67ccf11abab94aa8ddc389cf04 Mon Sep 17 00:00:00 2001 From: hackbard Date: Thu, 14 Nov 2002 00:40:02 +0000 Subject: [PATCH] completed management support. --- hdw-sniff.c | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/hdw-sniff.c b/hdw-sniff.c index 6ba9c82..816e778 100644 --- a/hdw-sniff.c +++ b/hdw-sniff.c @@ -167,17 +167,9 @@ void pcap_process(u_char *info,const struct pcap_pkthdr *pcap_header, (i==15?"|\n":"|")); printf(" | v | t | s-t |t|f|m|r|p|m|w|o|\n"); /* frame type */ - if((w_hdr->frame_ctl & IEEE802_11_STYPE_BEACON)>0) - strcpy(tmp_buf,"beacon"); - else if((w_hdr->frame_ctl & IEEE802_11_STYPE_ATIM)>0) - strcpy(tmp_buf,"announcement traffic indication message"); - else if((w_hdr->frame_ctl & IEEE802_11_STYPE_DISASSOC)>0) - strcpy(tmp_buf,"disassociation"); - else if((w_hdr->frame_ctl & IEEE802_11_STYPE_AUTH)>0) - strcpy(tmp_buf,"authentification"); - else if((w_hdr->frame_ctl & IEEE802_11_STYPE_DEAUTH)>0) - strcpy(tmp_buf,"deauthentification"); - else if((w_hdr->frame_ctl & IEEE802_11_STYPE_ASSOC_REQ)>0) + /* management */ + if(!(w_hdr->frame_ctl & 0x0c)) { + if((w_hdr->frame_ctl & IEEE802_11_STYPE_ASSOC_REQ)>0) strcpy(tmp_buf,"association request"); else if((w_hdr->frame_ctl & IEEE802_11_STYPE_ASSOC_RESP)>0) strcpy(tmp_buf,"association response"); @@ -189,7 +181,19 @@ void pcap_process(u_char *info,const struct pcap_pkthdr *pcap_header, strcpy(tmp_buf,"probe request"); else if((w_hdr->frame_ctl & IEEE802_11_STYPE_PROBE_RESP)>0) strcpy(tmp_buf,"probe response"); - else strcpy(tmp_buf,"unknown yet!"); + else if((w_hdr->frame_ctl & IEEE802_11_STYPE_BEACON)>0) + strcpy(tmp_buf,"beacon"); + else if((w_hdr->frame_ctl & IEEE802_11_STYPE_ATIM)>0) + strcpy(tmp_buf,"announcement traffic indication message"); + else if((w_hdr->frame_ctl & IEEE802_11_STYPE_DISASSOC)>0) + strcpy(tmp_buf,"disassociation"); + else if((w_hdr->frame_ctl & IEEE802_11_STYPE_AUTH)>0) + strcpy(tmp_buf,"authentification"); + else if((w_hdr->frame_ctl & IEEE802_11_STYPE_DEAUTH)>0) + strcpy(tmp_buf,"deauthentification"); + else strcpy(tmp_buf,"impossible situation \%) - go mail the author."); + } + else strcpy(tmp_buf,"control & monitor frame types not supported yet"); /* print out frame type */ printf("=> %s\n",tmp_buf); -- 2.20.1