CRAWDAD tools/process/pcap/Wifipcap

Citation Author(s):
Jeffrey
Pang
Carnegie Mellon University
Submitted by:
CRAWDAD Team
Last updated:
Thu, 07/09/2009 - 08:00
DOI:
10.15783/C7XG64
Data Format:
License:
163 Views
Collection:
CRAWDAD
Categories:
Keywords:
0
0 ratings - Please login to submit your rating.

Abstract 

A simple C++ wrapper around libpcap for parsing 802.11 frames from the pcap file.

A simple C++ wrapper around libpcap that allows applications to selectively demultiplex 802.11 frames, and the most common layer 2 and layer 3 protocols contained within them. Basically, the wifipcap library handles all the parsing of 802.11 frames (and/or layer 2/3 packets) from the pcap file (or stream). wifipcap is now embedded in tcpflow, a TCP/IP session reassembler maintained by Simson Garfinkel.

Lastmodified :

2009-07-09

Dataname :

tools/process/pcap/Wifipcap

File :

wifipcap.tar.gz

Releasedate :

2008-02-01

Change :

the initial version.

References :

klasnja-wifi-privacy
Tool Website

Website :

https://github.com/simsong/tcpflow

Keyword :

802.11
802.11 frames
RFMON
packet trace
tcpdump

License :

////////////////////////////////////////////////////////////////////////////////
// Mercury and Colyseus Software Distribution
//
// Copyright (C) 2004-2005 Ashwin Bharambe (ashu@cs.cmu.edu)
//               2004-2005 Jeffrey Pang    (jeffpang@cs.cmu.edu)
//                    2004 Mukesh Agrawal  (mukesh@cs.cmu.edu)
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License as
// published by the Free Software Foundation; either version 2, or (at
// your option) any later version.
//
// This program is distributed in the hope that it will be useful, but
// WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
// General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
// USA
////////////////////////////////////////////////////////////////////////////////

Build :

- How to compile wifipcap.

In Linux:
Enter this directory and type:

make

In Windows:
Open wifipcap.sln in Visual Studio and build it.
You will need to have the winpcap include and library files
in the appropriate search paths.

Usage :

For an overview see wifipcap.h.

(1) Include the header "wifipcap.h" in your application C++ file(s).

(2) Implement a subclass of WifipcapCallbacks. This class has one
member function for each type of 802.11 frame and layer 2/3
packets. Each of these functions will be called as a frame/packet
is parsed.

(3) Create an instance of Wifipcap with either a pcap trace file or
a live device to capture packets from.

(4) Call Wifipcap::Run with your instance of WifipcapCallbacks.

(5) Compile your program linking to libpcap and wifipcap.a.

On Linux:
g++ -o myprogram myprogram.c /path/to/wifipcap.a -lpcap

On Windows:
Link the following libraries:
wpcap.lib ws2_32.lib WINMM.LIB wifipcap.lib

Make sure wifipcap.lib is in the library path.

Example :

Please see sample.cpp.

Algorithm :

Most of the code is derived from tcpdump.

Linux: Requires libpcap >= 0.9.4 on Linux.

Windows: Requires WinPcap >= 4.0.2 and AirPcap for 802.11 capture
See: http://www.cacetech.com/support/downloads.htm
Instructions: 

The files in this directory are a CRAWDAD toolset hosted by IEEE DataPort. 

About CRAWDAD: the Community Resource for Archiving Wireless Data At Dartmouth is a data resource for the research community interested in wireless networks and mobile computing. 

CRAWDAD was founded at Dartmouth College in 2004, led by Tristan Henderson, David Kotz, and Chris McDonald. CRAWDAD toolsets are hosted by IEEE DataPort as of November 2022. 

Note: Please use the tools in an ethical and responsible way with the aim of doing no harm to any person or entity for the benefit of society at large. Please respect the privacy of any human subjects whose wireless-network activity is captured by the tools and comply with all applicable laws, including without limitation such applicable laws pertaining to the protection of personal information, security of data, and data breaches. Please do not apply, adapt or develop algorithms for the extraction of the true identity of users and other information of a personal nature, which might constitute personally identifiable information or protected health information under any such applicable laws. Do not publish or otherwise disclose to any other person or entity any information that constitutes personally identifiable information or protected health information under any such applicable laws derived from the tools through manual or automated techniques. 

Please acknowledge the source of the tools in any publications or presentations reporting use of this tools. 

Citation:

Jeffrey Pang, CRAWDAD toolset tools/process/pcap/Wifipcap (v. 2008‑02‑01), https://doi.org/10.15783/C7XG64, Feb 2008.

Dataset Files

LOGIN TO ACCESS DATASET FILES
Open Access dataset files are accessible to all logged in  users. Don't have a login?  Create a free IEEE account.  IEEE Membership is not required.

Documentation

These datasets are part of Community Resource for Archiving Wireless Data (CRAWDAD). CRAWDAD began in 2004 at Dartmouth College as a place to share wireless network data with the research community. Its purpose was to enable access to data from real networks and real mobile users at a time when collecting such data was challenging and expensive. The archive has continued to grow since its inception, and starting in summer 2022 is being housed on IEEE DataPort.

Questions about CRAWDAD? See our CRAWDAD FAQ. Interested in submitting your dataset to the CRAWDAD collection? Get started, by submitting an Open Access Dataset.