radiotap_iter.h
Go to the documentation of this file.
00001 #ifndef __RADIOTAP_ITER_H
00002 #define __RADIOTAP_ITER_H
00003 
00004 #include <stdint.h>
00005 #include "radiotap.h"
00006 
00007 /* Radiotap header iteration
00008  *   implemented in radiotap.c
00009  */
00010 
00011 struct radiotap_override {
00012         uint8_t field;
00013         uint8_t align:4, size:4;
00014 };
00015 
00016 struct radiotap_align_size {
00017         uint8_t align:4, size:4;
00018 };
00019 
00020 struct ieee80211_radiotap_namespace {
00021         const struct radiotap_align_size *align_size;
00022         int n_bits;
00023         uint32_t oui;
00024         uint8_t subns;
00025 };
00026 
00027 struct ieee80211_radiotap_vendor_namespaces {
00028         const struct ieee80211_radiotap_namespace *ns;
00029         int n_ns;
00030 };
00031 
00064 struct ieee80211_radiotap_iterator {
00065         struct ieee80211_radiotap_header *_rtheader;
00066         const struct ieee80211_radiotap_vendor_namespaces *_vns;
00067         const struct ieee80211_radiotap_namespace *current_namespace;
00068 
00069         unsigned char *_arg, *_next_ns_data;
00070         uint32_t *_next_bitmap;
00071 
00072         unsigned char *this_arg;
00073 #ifdef RADIOTAP_SUPPORT_OVERRIDES
00074         const struct radiotap_override *overrides;
00075         int n_overrides;
00076 #endif
00077         int this_arg_index;
00078         int this_arg_size;
00079 
00080         int is_radiotap_ns;
00081 
00082         int _max_length;
00083         int _arg_index;
00084         uint32_t _bitmap_shifter;
00085         int _reset_on_ext;
00086 };
00087 
00088 extern int ieee80211_radiotap_iterator_init(
00089         struct ieee80211_radiotap_iterator *iterator,
00090         struct ieee80211_radiotap_header *radiotap_header,
00091         int max_length, const struct ieee80211_radiotap_vendor_namespaces *vns);
00092 
00093 extern int ieee80211_radiotap_iterator_next(
00094         struct ieee80211_radiotap_iterator *iterator);
00095 
00096 #endif /* __RADIOTAP_ITER_H */


ros_rt_wmp
Author(s): Danilo Tardioli, dantard@unizar.es
autogenerated on Fri Jan 3 2014 12:07:55