| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add support for ESP32
* core: Check length of body before allocating
Frames with no body may be worth parsing, but should avoid the allocation
of zero-length bodies. Instead, we'll check if the body exists in the
parsed data and if that length is zero, return early with success.
Fixes #16
* misc: Run GitHub build actions on pull requests
* Add support for ESP32
---------
Co-authored-by: Zduniusz <Zduniusz@thisemaildoesnotexist.com>
Co-authored-by: Marc <marc@malloc.me>
|
|
|
|
|
|
|
|
| |
Frames with no body may be worth parsing, but should avoid the allocation
of zero-length bodies. Instead, we'll check if the body exists in the
parsed data and if that length is zero, return early with success.
Fixes #16
|
|
|
|
|
|
| |
This was originally done to emulate what you might see from a typical airspace,
but frankly, this is dumb to do in the library. The library user should be
responsible for implementing these behaviours.
|
|\
| |
| | |
Enable more code safety and hardening compiler flags
|
| | |
|
|/
|
| |
to be able to add data to existing detail
|
|\ |
|
| | |
|
| | |
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Radiotap information is now stored in the `libwifi_frame` struct, and will
be kept automatically in `libwifi_frame.radiotap_info` for the lifecycle of
said frame, if it is present.
A new flag has been added for the frame for use with `libwifi_frame.flags`
to detect if the radiotap info is present: `LIBWIFI_FLAGS_RADIOTAP_PRESENT`.
The frame parser will now automatically calculate the band and center channel
from radiotap data, and will store them in `libwifi_radiotap_info.channel.center`
and `libwifi_radiotap_info.channel.band`.
Four new flags have been added for use with the new radiotap band field:
- `LIBWIFI_RADIOTAP_BAND_2GHZ`
- `LIBWIFI_RADIOTAP_BAND_5GHZ`
- `LIBWIFI_RADIOTAP_BAND_6GHZ`
- `LIBWIFI_RADIOTAP_BAND_900MHZ`
These can be used with a binary AND:
`if (rtap.channel.band & LIBWIFI_RADIOTAP_BAND_6GHZ) { }`
|
|
|
| |
Add macOS build support
|
| |
|
| |
|
| |
|
|
|
|
| |
Thanks @dragorn !
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
management frames
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Not very pretty, but it's also not so bad. Alternative is a huge array
or a super ugly macro hack.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This code used to be `< 0`, but was changed to `<= 0` in commit d40ddfe.
Thinking more about this, it's a bad idea to abort on 0 length tags,
since it's completely valid for some tags (such as SSID) to be empty. It
doesn't make sense to check if `tag_len` is below 0, because it's
unsigned.
So, remove the check completely.
|
|
|
|
|
| |
This commit also enforces error code checking on functions inside of
the generation functions, such as for `libwifi_quick_add_tag`.
|
|
|
|
| |
This commit also corrects a small warning for gcc.
|
|
Signed-off-by: Marc <foxtrot@malloc.me>
|