4 stable releases
Uses old Rust 2015
2.0.0-beta.1 |
|
---|---|
1.3.0 | Sep 21, 2018 |
1.2.0 | Jun 26, 2018 |
1.1.0 | Jun 26, 2018 |
1.0.0 | May 24, 2018 |
#2072 in Parser implementations
298 downloads per month
Used in nearby
55KB
1K
SLoC
radiotap
A parser for the Radiotap capture format.
Getting started
Add to your project with
cargo add radiotap
or directly editing your Cargo.toml
[dependencies]
radiotap = "1.0.0"
See the documentation here.
Example usage
See examples/ for more.
The Radiotap::from_bytes(&capture)
constructor will parse all present fields into a Radiotap
struct:
let capture = [
0, 0, 56, 0, 107, 8, 52, 0, 185, 31, 155, 154, 0, 0, 0, 0, 20, 0, 124, 21, 64, 1, 213,
166, 1, 0, 0, 0, 64, 1, 1, 0, 124, 21, 100, 34, 249, 1, 0, 0, 0, 0, 0, 0, 255, 1, 80,
4, 115, 0, 0, 0, 1, 63, 0, 0
];
let radiotap = Radiotap::from_bytes(&capture).unwrap();
println!("{:?}", radiotap.vht);
If you just want to parse a few specific fields from the Radiotap capture you can create an
iterator using RadiotapIterator::from_bytes(&capture)
:
let capture = [
0, 0, 56, 0, 107, 8, 52, 0, 185, 31, 155, 154, 0, 0, 0, 0, 20, 0, 124, 21, 64, 1, 213,
166, 1, 0, 0, 0, 64, 1, 1, 0, 124, 21, 100, 34, 249, 1, 0, 0, 0, 0, 0, 0, 255, 1, 80,
4, 115, 0, 0, 0, 1, 63, 0, 0
];
for element in RadiotapIterator::from_bytes(&capture).unwrap() {
match element {
Ok((field::Kind::VHT, data)) => {
let vht: field::VHT = field::from_bytes(data).unwrap();
println!("{:?}", vht);
},
_ => {}
}
}
License
This project is dual licensed under the Apache 2.0 License and the MIT License. See the LICENSE-APACHE and LICENSE-MIT files.
Dependencies
~270–370KB