"When analysing a trace with 802.11 packages (made by airpcap) and selecting
Statistics->Conversation List->WLAN all wlan conversations are listed. When
after this selecting Apply as filter->Selected->A<->B a display filter is
created as
eth.addr==<A> && eth.addr==<B>
when if should be
wlan.addr==<A> && wlan.addr==<B>"
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@20234
f5534014-38df-0310-8fa8-
9805f1628bb7
return a string for the filter name
some addresses, like AT_ETHER may actually be any of multiple types
- of protocols, either ethernet, tokenring, fddi etc so we must be more
- specific there thats why we need specific_addr_type
+ of protocols, either ethernet, tokenring, fddi, wlan etc so we must be
+ more specific there thats why we need specific_addr_type
*/
static const char *
ct_get_filter_name(address *addr, int specific_addr_type, int port_type, int name_type)
switch(specific_addr_type){
case SAT_ETHER:
return "eth.src";
+ case SAT_WLAN:
+ return "wlan.sa";
case SAT_FDDI:
return "fddi.src";
case SAT_TOKENRING:
switch(specific_addr_type){
case SAT_ETHER:
return "eth.dst";
+ case SAT_WLAN:
+ return "wlan.da";
case SAT_FDDI:
return "fddi.dst";
case SAT_TOKENRING:
switch(specific_addr_type){
case SAT_ETHER:
return "eth.addr";
+ case SAT_WLAN:
+ return "wlan.addr";
case SAT_FDDI:
return "fddi.addr";
case SAT_TOKENRING:
{
const wlan_hdr *whdr=vip;
- add_conversation_table_data((conversations_table *)pct, &whdr->src, &whdr->dst, 0, 0, 1, pinfo->fd->pkt_len, SAT_ETHER, PT_NONE);
+ add_conversation_table_data((conversations_table *)pct, &whdr->src, &whdr->dst, 0, 0, 1, pinfo->fd->pkt_len, SAT_WLAN, PT_NONE);
return 1;
}
switch(specific_addr_type){
case SAT_ETHER:
return "eth.addr";
+ case SAT_WLAN:
+ return "wlan.addr";
case SAT_FDDI:
return "fddi.addr";
case SAT_TOKENRING:
/* Take two "add" passes per packet, adding for each direction, ensures that all
packets are counted properly (even if address is sending to itself)
XXX - this could probably be done more efficiently inside hostlist_table */
- add_hostlist_table_data(hosts, &whdr->src, 0, TRUE, 1, pinfo->fd->pkt_len, SAT_ETHER, PT_NONE);
- add_hostlist_table_data(hosts, &whdr->dst, 0, FALSE, 1, pinfo->fd->pkt_len, SAT_ETHER, PT_NONE);
+ add_hostlist_table_data(hosts, &whdr->src, 0, TRUE, 1, pinfo->fd->pkt_len, SAT_WLAN, PT_NONE);
+ add_hostlist_table_data(hosts, &whdr->dst, 0, FALSE, 1, pinfo->fd->pkt_len, SAT_WLAN, PT_NONE);
return 1;
}
typedef enum {
SAT_NONE, /**< no address type */
SAT_ETHER, /**< MAC : Ethernet */
+ SAT_WLAN, /**< MAC : Wireless LAN */
SAT_FDDI, /**< MAC : FDDI */
SAT_TOKENRING, /**< MAC : Token Ring */
SAT_JXTA /**< URI : JXTA */