#include <linux/wireless.h>
+#include "list.h"
+
+#define C_MAX 14
+#define IVLINE "%02x %02x %02x %02x %02x %02x %02x %02x %02x %02x\n"
+#define cs(n) crypted_snap[n]
+#define IVL_ARGS cs(0),cs(1),cs(2),cs(3),cs(4),cs(5),cs(6),cs(7),cs(8),cs(9)
/* the pcap_process callback function */
void pcap_process(u_char *count,const struct pcap_pkthdr *pcap_header,
const u_char *package);
+/* snap header struct */
+struct snaphdr {
+ unsigned char snap[6]; /* the six magic snap chars */
+ unsigned short proto; /* protocol type */
+} __attribute__ ((packed));
+
/* info struct */
struct info_struct {
int count; /* count packages */
char dev[10]; /* device */
char mmode; /* monitor type ... and later more */
int channel; /* current freq channel */
- };
+ struct list *ssid_list; /* pointer to ssid list */
+};
/* hop_chanel function */
int hop_channel(struct info_struct *info,int foo_fd);
+int parse_ip(char *ip_o);
+int parse_tcp(char *tcp_o);
+
+/* ssid struct */
+struct ssid_struct {
+ unsigned char elementid; /* element id */
+ unsigned char length; /* length of ssid */
+ unsigned char ssid[32]; /* ssid */
+} __attribute__ ((packed));
+
+/* beacon header */
+struct beacon_struct {
+ long long timestamp; /* time stamp */
+ unsigned short interval; /* beacon interval field */
+ unsigned short capability; /* capability field */
+ struct ssid_struct ssid_s; /* ssid field */
+} __attribute__ ((packed));
+/* association request header */
+struct asso_req_struct {
+ unsigned short capability; /* capability field */
+ unsigned short listeninterval; /* listen interval field */
+ unsigned short ssid; /* ssid field */
+ /* supported rates missing */
+} __attribute__ ((packed));