Add reference of IEEE802.11 message type
This commit is contained in:
parent
f0e7a37cca
commit
059f6d9dc9
@ -158,6 +158,12 @@ int ac_dfa_state_run(struct ac_session_t* session, struct capwap_parsed_packet*
|
||||
capwap_set_timeout(AC_MAX_ECHO_INTERVAL, &session->timeout, CAPWAP_TIMER_CONTROL_CONNECTION);
|
||||
break;
|
||||
}
|
||||
|
||||
case CAPWAP_IEEE80211_WLAN_CONFIGURATION_RESPONSE: {
|
||||
/* TODO */
|
||||
capwap_set_timeout(AC_MAX_ECHO_INTERVAL, &session->timeout, CAPWAP_TIMER_CONTROL_CONNECTION);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
@ -164,13 +164,16 @@ int capwap_check_message_type(struct capwap_packet_rxmng* rxmngpacket) {
|
||||
if (rxmngpacket->isctrlpacket && rxmngpacket->fragmentlist->first) {
|
||||
struct capwap_fragment_packet_item* packet = (struct capwap_fragment_packet_item*)rxmngpacket->fragmentlist->first->item;
|
||||
struct capwap_header* header = (struct capwap_header*)packet->buffer;
|
||||
unsigned short binding = GET_WBID_HEADER(rxmngpacket->header);
|
||||
|
||||
lengthpayload = packet->offset - GET_HLEN_HEADER(header) * 4;
|
||||
if (lengthpayload >= sizeof(struct capwap_control_message)) {
|
||||
if ((rxmngpacket->ctrlmsg.type >= CAPWAP_FIRST_MESSAGE_TYPE) && (rxmngpacket->ctrlmsg.type <= CAPWAP_LAST_MESSAGE_TYPE)) {
|
||||
if (CAPWAP_VALID_MESSAGE_TYPE(rxmngpacket->ctrlmsg.type)) {
|
||||
return VALID_MESSAGE_TYPE;
|
||||
} else if ((binding == CAPWAP_WIRELESS_BINDING_IEEE80211) && CAPWAP_VALID_IEEE80211_MESSAGE_TYPE(rxmngpacket->ctrlmsg.type)) {
|
||||
return VALID_MESSAGE_TYPE;
|
||||
}
|
||||
|
||||
|
||||
/* Unknown message type */
|
||||
if ((rxmngpacket->ctrlmsg.type % 2) != 0) {
|
||||
return INVALID_REQUEST_MESSAGE_TYPE;
|
||||
|
@ -116,6 +116,13 @@ struct capwap_message_element {
|
||||
#define CAPWAP_STATION_CONFIGURATION_REQUEST 25
|
||||
#define CAPWAP_STATION_CONFIGURATION_RESPONSE 26
|
||||
#define CAPWAP_LAST_MESSAGE_TYPE 26
|
||||
#define CAPWAP_VALID_MESSAGE_TYPE(x) (((x) >= CAPWAP_FIRST_MESSAGE_TYPE) && ((x) <= CAPWAP_LAST_MESSAGE_TYPE))
|
||||
|
||||
#define CAPWAP_IEEE80211_FIRST_MESSAGE_TYPE 3398913
|
||||
#define CAPWAP_IEEE80211_WLAN_CONFIGURATION_REQUEST 3398913
|
||||
#define CAPWAP_IEEE80211_WLAN_CONFIGURATION_RESPONSE 3398914
|
||||
#define CAPWAP_IEEE80211_LAST_MESSAGE_TYPE 3398914
|
||||
#define CAPWAP_VALID_IEEE80211_MESSAGE_TYPE(x) (((x) >= CAPWAP_IEEE80211_FIRST_MESSAGE_TYPE) && ((x) <= CAPWAP_IEEE80211_LAST_MESSAGE_TYPE))
|
||||
|
||||
/* Control Message */
|
||||
#define CAPWAP_CONTROL_MESSAGE_MIN_LENGTH 3
|
||||
|
@ -158,6 +158,11 @@ int wtp_dfa_state_run(struct capwap_parsed_packet* packet, struct timeout_contro
|
||||
status = WTP_DFA_NO_PACKET;
|
||||
break;
|
||||
}
|
||||
|
||||
case CAPWAP_IEEE80211_WLAN_CONFIGURATION_REQUEST: {
|
||||
/* TODO */
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
Loading…
Reference in New Issue
Block a user