Tucker Polomik a7469568c4 gitlab-ci: add build stage
Signed-off-by: Tucker Polomik <t.polomik@cablelabs.com>
2023-06-15 14:56:23 -06:00
2022-10-24 12:28:50 -06:00
2022-11-03 13:40:02 -06:00
2023-06-15 14:56:23 -06:00
2023-05-19 14:12:10 -06:00
2023-02-21 14:57:05 -07:00
2023-02-21 14:57:06 -07:00
2023-06-15 14:56:23 -06:00
2023-06-15 14:56:23 -06:00
2023-06-15 14:56:23 -06:00
2023-06-15 14:56:23 -06:00
2023-06-15 14:56:23 -06:00
2023-05-19 16:14:54 -06:00
2023-02-21 14:57:06 -07:00
2023-02-21 14:57:06 -07:00
2023-02-08 12:09:40 -07:00

StationSniffer

Build Status

[[TOC]]

Building

You'll need a C++ compiler, libpcap, and libradiotap

apt install libpcap-dev

To build and install libradiotap:

git clone git@github.com:radiotap/radiotap-library.git;
cd radiotap-library;
mkdir -p build;
cd build;
cmake ..;
make && make install

Then, to build StationSniffer:

make

Running

StationSniffer will take the interface that it is fed and put it into promiscuous mode for the lifetime of the program. If you've got one in mind, use it. If you want to make one, see "Creating a virtual interface using iw"

Otherwise, run:

./station-sniffer <interface_name> <packet_wait_time (ms)>

Creating a virtual interface using iw

iw phy <your_phy> interface add <virtual_monitor_interface_name> type monitor

To find <your_phy>, run iw dev and pick one.

Fetching station statistics

StationSniffer has a Unix domain socket server thread running to serve clients. It's found at /tmp/uslm_socket

The client should connect to this (stream) socket and make requests there. Requests are made via a minimal binary protocol, the format of which can be found in messages.h

There is a reference client implementation in tools/test.py (Python) and tools/uds_client.c (C)

Contributing

See CONTRIBUTING.md for more details.

License

Distributed under the FreeBSD License. See LICENSE for more details.

Contact

t.polomik at cablelabs.com
tuckerpo at (buffalo.edu | fsf.org)
Description
No description provided
Readme BSD-2-Clause-Patent 176 KiB
Languages
C++ 84%
C 8.3%
Makefile 4.9%
Python 2.5%
Shell 0.3%