* @author David Brodski
*/
+#ifndef PLUGIN_TRANSPORT_WLAN
+#define PLUGIN_TRANSPORT_WLAN
+
#include "gnunet_common.h"
typedef unsigned int uint32_t;
typedef unsigned short uint16_t;
+
+struct MacAddress
+{
+ char mac[6];
+};
+
+struct Wlan_Helper_Control_Message
+{
+ struct GNUNET_MessageHeader hdr;
+ struct MacAddress mac ;
+};
+
+
+
/* Wlan IEEE80211 header default */
//Informations (in German) http://www.umtslink.at/content/WLAN_macheader-196.html
static const uint8_t u8aIeeeHeader[] =
{
- 0x08, 0x01, // Frame Control 0x08= 00001000 -> | b1,2 = 0 -> Version 0; b3,4 = 10 -> Data; b5-8 = 0 -> Normal Data
- // 0x01 = 00000001 -> | b1 = 1 to DS; b2 = 0 not from DS;
+ 0x08, 0x01, // Frame Control 0x08= 00001000 -> | b1,2 = 0 -> Version 0;
+ // b3,4 = 10 -> Data; b5-8 = 0 -> Normal Data
+ // 0x01 = 00000001 -> | b1 = 1 to DS; b2 = 0 not from DS;
0x00, 0x00, // Duration/ID
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // mac1
- 0x13, 0x22, 0x33, 0x44, 0x55, 0x66, // mac2
- 0x13, 0x22, 0x33, 0x44, 0x55, 0x66, // mac3
+ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, // mac1 - in this case receiver
+ 0x13, 0x22, 0x33, 0x44, 0x55, 0x66, // mac2 - in this case bssid
+ 0x13, 0x22, 0x33, 0x44, 0x55, 0x66, // mac3 - in this case sender
0x10, 0x86, //Sequence Control
};
+// gnunet bssid
+static const char macbc[] =
+ { 0x13, 0x22, 0x33, 0x44, 0x55, 0x66 };
+
+// broadcast mac
+static const char bc_all_mac[] =
+ { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF };
+
/**
* Wlan header
*/
/**
* first mac byte 1
*/
- uint8_t mac1[6];
+ struct MacAddress mac1;
/**
* second mac
*/
- uint8_t mac2[6];
+ struct MacAddress mac2;
/**
* third mac
*/
- uint8_t mac3[6];
+ struct MacAddress mac3;
/**
* Wlan Sequence Control
uint8_t antenna;
};
+#endif