def dotransform(request, response): pkts = rdpcap(request.value) aps = [] for p in pkts: if p.haslayer(Dot11Beacon) or p.haslayer(Dot11ProbeResp): ssid = p[Dot11Elt].info bssid = p[Dot11].addr3 channel = int(ord(p[Dot11Elt:3].info)) capability = p.sprintf( "{Dot11Beacon:%Dot11Beacon.cap%}{Dot11ProbeResp:%Dot11ProbeResp.cap%}" ) if re.search("privacy", capability): enc = 'Y' else: enc = 'N' entity = ssid, bssid, str(channel), enc if entity not in aps: aps.append(entity) for ssid, bssid, channel, enc in aps: e = AccessPoint(ssid + ':' + bssid) e.apbssid = bssid e.apchannel = channel e.apenc = enc e.linklabel = 'Channel:' + channel + '\nEncryption:' + enc e.linkcolor = 0xFF4000 response += e return response
def dotransform(request, response): pkts = rdpcap(request.value) aps = [] for p in pkts: if p.haslayer(Dot11Beacon) or p.haslayer(Dot11ProbeResp): ssid = p[Dot11Elt].info bssid = p[Dot11].addr3 channel = int(ord(p[Dot11Elt:3].info)) capability = p.sprintf("{Dot11Beacon:%Dot11Beacon.cap%}{Dot11ProbeResp:%Dot11ProbeResp.cap%}") if re.search("privacy", capability): enc = 'Y' else: enc = 'N' entity = ssid, bssid, str(channel), enc if entity not in aps: aps.append(entity) for ssid, bssid, channel, enc in aps: e = AccessPoint(ssid + ':' + bssid) e.apbssid = bssid e.apchannel = channel e.apenc = enc e.linklabel = 'Channel:' + channel + '\nEncryption:' + enc e.linkcolor = 0xFF4000 response += e return response