31 lines
1.3 KiB
C
31 lines
1.3 KiB
C
|
#ifndef __CAPWAP_ELEMENT_80211_DIRECTSEQUENCECONTROL_HEADER__
|
||
|
#define __CAPWAP_ELEMENT_80211_DIRECTSEQUENCECONTROL_HEADER__
|
||
|
|
||
|
#define CAPWAP_ELEMENT_80211_DIRECTSEQUENCECONTROL 1028
|
||
|
|
||
|
struct capwap_80211_directsequencecontrol_element {
|
||
|
unsigned char radioid;
|
||
|
unsigned char currentchannel;
|
||
|
unsigned char currentcca;
|
||
|
unsigned long enerydetectthreshold;
|
||
|
};
|
||
|
|
||
|
#define CAPWAP_DSCONTROL_CCA_EDONLY 1
|
||
|
#define CAPWAP_DSCONTROL_CCA_CSONLY 2
|
||
|
#define CAPWAP_DSCONTROL_CCA_EDANDCS 4
|
||
|
#define CAPWAP_DSCONTROL_CCA_CSWITHTIME 8
|
||
|
#define CAPWAP_DSCONTROL_CCA_HRCSANDED 16
|
||
|
|
||
|
struct capwap_message_element* capwap_80211_dscontrol_element_create(void* data, unsigned long length);
|
||
|
int capwap_80211_dscontrol_element_validate(struct capwap_message_element* element);
|
||
|
void* capwap_80211_dscontrol_element_parsing(struct capwap_message_element* element);
|
||
|
void capwap_80211_dscontrol_element_free(void* data);
|
||
|
|
||
|
/* Helper */
|
||
|
#define CAPWAP_CREATE_80211_DIRECTSEQUENCECONTROL_ELEMENT(x) ({ \
|
||
|
struct capwap_message_elements_func* f = capwap_get_message_element(CAPWAP_ELEMENT_80211_DIRECTSEQUENCECONTROL); \
|
||
|
f->create(x, sizeof(struct capwap_80211_directsequencecontrol_element)); \
|
||
|
})
|
||
|
|
||
|
#endif /* __CAPWAP_ELEMENT_80211_DIRECTSEQUENCECONTROL_HEADER__ */
|