Opened 14 years ago

Closed 14 years ago

#65 closed enhancement (fixed)

Add Radiotap support to libtrace

Reported by: smr26@… Owned by: perry
Priority: major Milestone:
Component: libtrace-library Version:
Keywords: Cc:

Description

Adds initial support for Radiotap traces to libtrace. It introduces a new trace type, TRACE_TYPE_80211_RADIO and functions to access the various fields in a radiotap header. The radiotap header can be skipped by using the new function get_payload_from_radiotap which returns the 802.11 header below it. Also implemented is a get_payload_from_prism, which does the same thing for prism monitoring headers.

Attachments (3)

libtrace3_radiotap_support.patch (22.4 KB) - added by smr26@… 14 years ago.
Add support for radiotap traces to libtrace
libtrace3_wireless_support.patch (30.6 KB) - added by smr26@… 14 years ago.
Replaces the previous patch, adds generic wireless support
libtrace3_wireless_support2.patch (30.5 KB) - added by smr26@… 14 years ago.
Third time lucky?

Download all attachments as: .zip

Change History (8)

Changed 14 years ago by smr26@…

Add support for radiotap traces to libtrace

comment:1 Changed 14 years ago by perry

hrm, we generally use trace_<verb>_<noun>. you have trace_radiotap_* which doesn't match this.

Also, these aren't specific to radio tap (or at least shouldn't be). trace_get_wireless_* perhaps?

comment:2 Changed 14 years ago by smr26@…

Here's a new patch. The public interface has been changed considerably to use generic function names, as well as to provide a guarantee about the format of the data being passed back. trace_get_wireless_* functions return 0 on failure, 1 on success, and write their output to an output variable supplied by the caller. The functions will ensure that these are written in host byte order. The functions currently only parse Radiotap headers, but can easily be extended to parse Prism monitoring headers as well.

Changed 14 years ago by smr26@…

Replaces the previous patch, adds generic wireless support

comment:3 Changed 14 years ago by smr26@…

New patch. Functions return bools instead of ints to indicate success, rename the enum types to make sure they don't conflict. Fixed the field alignment macros so that they actually work properly.

Changed 14 years ago by smr26@…

Third time lucky?

comment:4 Changed 14 years ago by smr26@…

Looking at the doxygen generated html, the radiotap header definition needs to go into the protocol structures section, and the enum needs to go into the enum section. I'll fix this up sometime soon.

comment:5 Changed 14 years ago by smr26@…

  • Resolution set to fixed
  • Status changed from new to closed

Made those minor changes mentioned above and committed to r982

Note: See TracTickets for help on using tickets.