/* ieee802.11 stuff */
+typedef unsigned long long int u64;
typedef unsigned int u32;
typedef unsigned short int u16;
typedef unsigned char u8;
u16 seq_ctrl;
} __attribute__ ((packed)) t_frame1_hdr;
+typedef struct s_prism_val {
+ u32 did;
+ u16 status;
+ u16 len;
+ u32 data;
+} __attribute__ ((packed)) t_prism_val;
+
+typedef struct s_prism_hdr {
+ u32 msg_code;
+ u32 msg_len;
+ char device[16];
+ t_prism_val hosttime;
+ t_prism_val mactime;
+ t_prism_val channel;
+ t_prism_val rssi;
+ t_prism_val sq;
+ t_prism_val signal;
+ t_prism_val noise;
+ t_prism_val rate;
+ t_prism_val istx;
+ t_prism_val frame_len;
+} __attribute__ ((packed)) t_prism_hdr;
+
#define FCTL_VER(X) ((X&0x0003))
#define FCTL_TYPE(X) ((X&0x000c)>>2)
#define FCTL_STYPE(X) ((X&0x00f0)>>4)
#define FCTL_STYPE_CFPOLL 0x6
#define FCTL_STYPE_CFACKPOLL 0x7
+typedef struct s_beacon_fb {
+ u64 timestamp;
+ u16 beacon_int;
+ u16 cap_info;
+ u8 ssid_element_id;
+ u8 ssid_length;
+ u8 ssid[32];
+ u8 srates_element_id;
+ u8 srates_element_length;
+ u8 rest; /* go on here ... */
+} __attribute__ ((packed)) t_beacon_fb;
+
+#define CAP_INFO_ESS(X) ((X&0x0001))
+#define CAP_INFO_IBSS(X) ((X&0x0002)>>1)
+#define CAP_INFO_PRIVACY(X) ((X&0x0010)>>4)
/* hdw-sniff stuff */
char ssid[MAX_SSID_LEN];
u8 ap;
u8 wep;
+ u8 wds;
int count_mgmt;
int count_ctrl;
int count_data;
+ char active;
char key[WEP_MAX_DIGITS];
+ int sq;
+ u8 snap[10];
+ u8 bssid[ADDR_LEN];
} t_sta;
/* function prototypes */