diff --git a/actube.workspace b/actube.workspace index e0162c79..b8870938 100644 --- a/actube.workspace +++ b/actube.workspace @@ -3,9 +3,9 @@ - + - + diff --git a/src/ac/wtpman.c b/src/ac/wtpman.c index e0d6a04b..44f3b0e5 100644 --- a/src/ac/wtpman.c +++ b/src/ac/wtpman.c @@ -189,7 +189,7 @@ static int wtpman_join(void *arg, time_t timer) - wtpman->conn->capwap_state = CW_STATE_JOIN; + wtpman->conn->capwap_state = CAPWAP_STATE_JOIN; // wtpman->conn->actions = &capwap_actions; // wtpman->conn->itemstore = mbag_create(); @@ -198,7 +198,7 @@ static int wtpman_join(void *arg, time_t timer) cw_dbg(DBG_INFO, "Join State - %s", sock_addr2str(&conn->addr)); int rc; - while (!cw_timer_timeout(timer) && wtpman->conn->capwap_state == CW_STATE_JOIN) { + while (!cw_timer_timeout(timer) && wtpman->conn->capwap_state == CAPWAP_STATE_JOIN) { rc = cw_read_messages(wtpman->conn); if (rc < 0) { break; @@ -212,7 +212,7 @@ static int wtpman_join(void *arg, time_t timer) } - if (wtpman->conn->capwap_state == CW_STATE_JOIN) { + if (wtpman->conn->capwap_state == CAPWAP_STATE_JOIN) { cw_dbg(DBG_MSG_ERR, "No join request from %s after %d seconds, WTP died.", sock_addr2str(&wtpman->conn->addr), wtpman->conn->wait_dtls); @@ -723,6 +723,7 @@ struct wtpman *wtpman_create(int socklistindex, struct sockaddr *srcaddr) // struct sockaddr *from); wtpman->conn = conn_create(sockfd, srcaddr, 100); + wtpman->conn->receiver = CW_RECEIVER_AC; wtpman->conn->data_sock = socklist[socklistindex].data_sockfd; sock_copyaddr(&wtpman->conn->data_addr, (struct sockaddr *) &wtpman->conn->addr); diff --git a/src/cw/capwap.h b/src/cw/capwap.h index 7fe05790..608fb10f 100644 --- a/src/cw/capwap.h +++ b/src/cw/capwap.h @@ -675,7 +675,7 @@ enum capwap_states { /** Discovery State */ CAPWAP_STATE_DISCOVERY, /** Join State */ - CW_STATE_JOIN, + CAPWAP_STATE_JOIN, /** Config State */ CW_STATE_CONFIGURE, /** Image Data Upload */ diff --git a/src/cw/capwap_80211_actions_ac.c b/src/cw/capwap_80211_actions_ac.c index 5f66d457..0f78e5e8 100644 --- a/src/cw/capwap_80211_actions_ac.c +++ b/src/cw/capwap_80211_actions_ac.c @@ -23,7 +23,7 @@ cw_action_in_t capwap_80211_actions_ac_in[] = { * Discovery Resquest */ - {0, 0, CW_STATE_JOIN, CAPWAP_MSG_JOIN_REQUEST, + {0, 0, CAPWAP_STATE_JOIN, CAPWAP_MSG_JOIN_REQUEST, CW_ACTION_IN_80211_WTP_RADIO_INFORMATION, 1} , diff --git a/src/cw/capwap_80211_actions_wtp.c b/src/cw/capwap_80211_actions_wtp.c index fdc7147b..ffdc95a4 100644 --- a/src/cw/capwap_80211_actions_wtp.c +++ b/src/cw/capwap_80211_actions_wtp.c @@ -18,7 +18,7 @@ cw_action_in_t capwap_80211_actions_wtp_in[] = { , /* Join Response */ - {0, 0, CW_STATE_JOIN, CAPWAP_MSG_JOIN_RESPONSE, + {0, 0, CAPWAP_STATE_JOIN, CAPWAP_MSG_JOIN_RESPONSE, CW_ACTION_IN_80211_WTP_RADIO_INFORMATION, 1} , diff --git a/src/cw/capwap_strings_state.c b/src/cw/capwap_strings_state.c index ff4aab4f..69feda50 100644 --- a/src/cw/capwap_strings_state.c +++ b/src/cw/capwap_strings_state.c @@ -2,7 +2,7 @@ struct cw_strlist_elem capwap_strings_state[] = { { CAPWAP_STATE_DISCOVERY, "Discovery" }, -{ CW_STATE_JOIN,"Join" }, +{ CAPWAP_STATE_JOIN,"Join" }, { CW_STATE_RUN,"Run" }, { CW_STATE_CONFIGURE,"Configure" }, { CW_STATE_IMAGE_DATA,"Image Data" }, diff --git a/src/cw/conn.h b/src/cw/conn.h index 137aa4ca..6a30a3d7 100644 --- a/src/cw/conn.h +++ b/src/cw/conn.h @@ -82,6 +82,8 @@ struct conn { uint8_t session_id[16]; + int receiver; + /** base_mac */ bstr_t base_rmac; diff --git a/src/cw/conn_process_packet.c b/src/cw/conn_process_packet.c index 1d039ca8..48994032 100644 --- a/src/cw/conn_process_packet.c +++ b/src/cw/conn_process_packet.c @@ -288,11 +288,42 @@ static int process_elements(struct conn *conn, uint8_t * rawmsg, int len, return -1; } +printf("Receivers: %d %d\n",message->receiver,conn->receiver); + + /* Throw away unexpected messages */ + if (!(message->receiver & conn->receiver)) { + cw_dbg(DBG_MSG_ERR, + "Message type %d (%s) unexpected/illegal in %s State, discarding.", + search.type, cw_strmsg(search.type), + cw_strstate(conn->capwap_state)); + errno = EAGAIN; + return -1; + } + + /* Check if current state is in state of message */ + int *i = message->states; + for (i=message->states; *i; i++){ + if(*i==conn->capwap_state) + break; + } + + if (!*i){ + /* Message found, but it was in wrong state */ + cw_dbg(DBG_MSG_ERR, + "Message type %d (%s) not allowed in %s State.", search.type, + cw_strmsg(search.type), cw_strstate(conn->capwap_state)); + result_code = CAPWAP_RESULT_MSG_INVALID_IN_CURRENT_STATE; + cw_send_error_response(conn, rawmsg, result_code); + errno = EAGAIN; + return -1; + } + + // afm = cw_actionlist_in_get(conn->actions->in, &as); if (!afm) { - /* Throw away unexpected response messages */ + // Throw away unexpected response messages if (!(as.msg_id & 1)) { cw_dbg(DBG_MSG_ERR, "Message type %d (%s) unexpected/illegal in %s State, discarding.", diff --git a/src/cw/cw.h b/src/cw/cw.h index 1910f9d4..fe0078e1 100644 --- a/src/cw/cw.h +++ b/src/cw/cw.h @@ -133,9 +133,14 @@ typedef struct{ int op; }cw_msgelemprops_t; +#define CW_RECEIVER_AC 1 +#define CW_RECEIVER_WTP 1 + struct cw_MsgDef{ - int type; - int * states; + int type; /**< Message type */ + int * states; /**< states in wich the message is allowed */ + int receiver; /**< Who can receive this message */ + cw_msgelemprops_t * elements; const char * name; }; diff --git a/src/cw/cw_in_check_cfg_update_req.c b/src/cw/cw_in_check_cfg_update_req.c index 10ad6d63..6f46b436 100644 --- a/src/cw/cw_in_check_cfg_update_req.c +++ b/src/cw/cw_in_check_cfg_update_req.c @@ -16,7 +16,7 @@ int cw_in_check_cfg_update_req(struct conn *conn, struct cw_action_in *a, uint8_ if (n) { if ( conn->strict_capwap ){ cw_dbg_missing_mand(DBG_MSG_ERR,conn,mlist,n,a); - conn->capwap_state=CW_STATE_JOIN; + conn->capwap_state=CAPWAP_STATE_JOIN; return CW_RESULT_MISSING_MAND_ELEM; } cw_dbg_missing_mand(DBG_RFC,conn,mlist,n,a); diff --git a/src/cw/cw_in_check_disc_req.c b/src/cw/cw_in_check_disc_req.c index d1637256..5c9ff6f9 100644 --- a/src/cw/cw_in_check_disc_req.c +++ b/src/cw/cw_in_check_disc_req.c @@ -35,7 +35,7 @@ int cw_in_check_disc_req(struct conn *conn, struct cw_action_in *a, uint8_t * da /* ok, send response */ - conn->capwap_state = CW_STATE_JOIN; + conn->capwap_state = CAPWAP_STATE_JOIN; return 0; } diff --git a/src/cw/cw_in_check_img_data_req_ac.c b/src/cw/cw_in_check_img_data_req_ac.c index 58604632..3c1d038e 100644 --- a/src/cw/cw_in_check_img_data_req_ac.c +++ b/src/cw/cw_in_check_img_data_req_ac.c @@ -15,7 +15,7 @@ int cw_in_check_img_data_req_ac(struct conn *conn, struct cw_action_in *a, uint8 int n = cw_check_missing_mand(mlist,conn,a); if (n) { cw_dbg_missing_mand(DBG_ELEM,conn,mlist,n,a); - conn->capwap_state=CW_STATE_JOIN; + conn->capwap_state=CAPWAP_STATE_JOIN; return CW_RESULT_MISSING_MAND_ELEM; } diff --git a/src/cw/cw_in_check_img_data_req_wtp.c b/src/cw/cw_in_check_img_data_req_wtp.c index 6d050ece..a9129793 100644 --- a/src/cw/cw_in_check_img_data_req_wtp.c +++ b/src/cw/cw_in_check_img_data_req_wtp.c @@ -26,7 +26,7 @@ int cw_in_check_img_data_req_wtp(struct conn *conn, struct cw_action_in *a, uint int n = cw_check_missing_mand(mlist,conn,a); if (n) { cw_dbg_missing_mand(DBG_ELEM,conn,mlist,n,a); - conn->capwap_state=CW_STATE_JOIN; + conn->capwap_state=CAPWAP_STATE_JOIN; return CW_RESULT_MISSING_MAND_ELEM; } diff --git a/src/cw/cw_in_check_img_data_resp.c b/src/cw/cw_in_check_img_data_resp.c index 59a7d9c8..33890278 100644 --- a/src/cw/cw_in_check_img_data_resp.c +++ b/src/cw/cw_in_check_img_data_resp.c @@ -16,7 +16,7 @@ int cw_in_check_img_data_resp(struct conn *conn, struct cw_action_in *a, uint8_t int n = cw_check_missing_mand(mlist,conn,a); if (n) { cw_dbg_missing_mand(DBG_ELEM,conn,mlist,n,a); - conn->capwap_state=CW_STATE_JOIN; + conn->capwap_state=CAPWAP_STATE_JOIN; errno=EAGAIN; return -1; //CW_RESULT_MISSING_MAND_ELEM; } diff --git a/src/cw/cw_in_check_join_req.c b/src/cw/cw_in_check_join_req.c index 9d633181..3d22a083 100644 --- a/src/cw/cw_in_check_join_req.c +++ b/src/cw/cw_in_check_join_req.c @@ -18,7 +18,7 @@ int cw_in_check_join_req(struct conn *conn, struct cw_action_in *a, uint8_t * da if (n) { if ( conn->strict_capwap ){ cw_dbg_missing_mand(DBG_MSG_ERR,conn,mlist,n,a); - conn->capwap_state=CW_STATE_JOIN; + conn->capwap_state=CAPWAP_STATE_JOIN; return CW_RESULT_MISSING_MAND_ELEM; } cw_dbg_missing_mand(DBG_RFC,conn,mlist,n,a); @@ -32,7 +32,7 @@ int cw_in_check_join_req(struct conn *conn, struct cw_action_in *a, uint8_t * da connlist_unlock(conn->connlist); if (cc){ cw_dbg(DBG_ELEM_ERR,"Session already in use %s",format_bin2hex(conn->session_id,16)); - conn->capwap_state=CW_STATE_JOIN; + conn->capwap_state=CAPWAP_STATE_JOIN; return CW_RESULT_JOIN_FAILURE_SESSION_ALREADY_IN_USE; } diff --git a/src/cw/cw_in_check_join_resp.c b/src/cw/cw_in_check_join_resp.c index 13d7278e..5cd6c89d 100644 --- a/src/cw/cw_in_check_join_resp.c +++ b/src/cw/cw_in_check_join_resp.c @@ -25,7 +25,7 @@ int cw_in_check_join_resp(struct conn *conn, struct cw_action_in *a, uint8_t * d int n = cw_check_missing_mand(mlist,conn,a); if (n && conn->strict_capwap) { cw_dbg_missing_mand(DBG_MSG_ERR,conn,mlist,n,a); - conn->capwap_state=CW_STATE_JOIN; + conn->capwap_state=CAPWAP_STATE_JOIN; errno=EAGAIN; return -1; //CW_RESULT_MISSING_MAND_ELEM; } diff --git a/src/cw/message_set.c b/src/cw/message_set.c index 93da9ed7..b9ad84b6 100644 --- a/src/cw/message_set.c +++ b/src/cw/message_set.c @@ -136,6 +136,8 @@ void cw_msgset_add(cw_MsgSet_t * set, next->name=message->name; if (message->states) next->states=message->states; + if (message->receiver) + next->receiver=message->receiver; update_message(next,message, set); } diff --git a/src/cw/message_set.h b/src/cw/message_set.h index 02aea9d0..ff72310c 100644 --- a/src/cw/message_set.h +++ b/src/cw/message_set.h @@ -14,6 +14,7 @@ typedef struct cw_MsgData{ int type; const char * name; int * states; + int receiver; mavl_t elements_tree; mlist_t elements_list; }; diff --git a/src/cw/mod.c b/src/cw/mod.c index 56551f58..2514fdc7 100644 --- a/src/cw/mod.c +++ b/src/cw/mod.c @@ -212,7 +212,7 @@ struct cw_Mod * cw_mod_load(const char * mod_name){ filename = cw_filename(mod_path,mod_filename,".so"); if (filename==NULL) return NULL; - +cw_log(LOG_ERROR,"DLOPEN now !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"); /* Open the DLL */ void * handle; handle = dlopen(filename,RTLD_NOW); diff --git a/src/mod/capwap/capwap_actions_ac.c b/src/mod/capwap/capwap_actions_ac.c index 4031c04c..2cb1ccf1 100644 --- a/src/mod/capwap/capwap_actions_ac.c +++ b/src/mod/capwap/capwap_actions_ac.c @@ -101,8 +101,8 @@ static cw_msgdef_t messages[] = { /* Discovery Request Message*/ { .name = "Discovery Request", - // .type = CAPWAP_MSG_DISCOVERY_REQUEST, - .type = 7, + .type = CAPWAP_MSG_DISCOVERY_REQUEST, + .receiver = CW_RECEIVER_AC, .states = (int[]){CAPWAP_STATE_DISCOVERY,0}, .elements = (cw_msgelemprops_t []){ {&_DISCOVERY_TYPE,1}, @@ -119,6 +119,7 @@ static cw_msgdef_t messages[] = { { .name = "Discovery Response", .type = CAPWAP_MSG_DISCOVERY_RESPONSE, + .receiver = CW_RECEIVER_WTP, .states = (int[]){CAPWAP_STATE_DISCOVERY,0}, .elements = (cw_msgelemprops_t[]){ {&_AC_DESCRIPTOR,1}, @@ -300,7 +301,7 @@ static cw_action_in_t actions_in[] = { * Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .end = cw_in_check_join_req } @@ -308,7 +309,7 @@ static cw_action_in_t actions_in[] = { /* Location Data - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id =CAPWAP_MSG_JOIN_REQUEST, .elem_id = CW_ELEM_LOCATION_DATA, .item_id = CW_ITEM_LOCATION_DATA, @@ -321,7 +322,7 @@ static cw_action_in_t actions_in[] = { /* Element WTP Board Data - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CAPWAP_ELEM_WTP_BOARD_DATA, .start = cw_in_wtp_board_data, @@ -332,7 +333,7 @@ static cw_action_in_t actions_in[] = { /* Element WTP Descriptor - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CAPWAP_ELEM_WTP_DESCRIPTOR, .start = capwap_in_wtp_descriptor, @@ -343,7 +344,7 @@ static cw_action_in_t actions_in[] = { /* Element WTP Name - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CW_ELEM_WTP_NAME, .start = cw_in_generic2, @@ -356,7 +357,7 @@ static cw_action_in_t actions_in[] = { /* Element Session ID - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CW_ELEM_SESSION_ID, .start = capwap_in_session_id, @@ -369,7 +370,7 @@ static cw_action_in_t actions_in[] = { /* WTP Frame Tunnel Mode - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CAPWAP_ELEM_WTP_FRAME_TUNNEL_MODE, .start = cw_in_generic2, @@ -382,7 +383,7 @@ static cw_action_in_t actions_in[] = { /* WTP Mac Type - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CAPWAP_ELEM_WTP_MAC_TYPE, .start = cw_in_generic2, @@ -400,7 +401,7 @@ static cw_action_in_t actions_in[] = { /* ECN Support - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CW_ELEM_ECN_SUPPORT, .item_id = CW_ITEM_ECN_SUPPORT, @@ -414,7 +415,7 @@ static cw_action_in_t actions_in[] = { /* Local IPv4 Address - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CW_ELEM_CAPWAP_LOCAL_IPV4_ADDRESS, .item_id = CW_ITEM_CAPWAP_LOCAL_IP_ADDRESS, @@ -427,7 +428,7 @@ static cw_action_in_t actions_in[] = { /* Local IPv6 Address - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CW_ELEM_CAPWAP_LOCAL_IPV6_ADDRESS, .item_id = CW_ITEM_CAPWAP_LOCAL_IP_ADDRESS, @@ -442,7 +443,7 @@ static cw_action_in_t actions_in[] = { /* CAPWAP Transport Protocol - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CW_ELEM_CAPWAP_TRANSPORT_PROTOCOL, .item_id = CW_ITEM_CAPWAP_TRANSPORT_PROTOCOL, @@ -454,7 +455,7 @@ static cw_action_in_t actions_in[] = { /* Maximum Message Length - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CW_ELEM_MAXIMUM_MESSAGE_LENGTH, .start = cw_in_generic2, @@ -466,7 +467,7 @@ static cw_action_in_t actions_in[] = { /* WTP Reboot Statistics - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CW_ELEM_WTP_REBOOT_STATISTICS, .start = cw_in_wtp_reboot_statistics, @@ -478,7 +479,7 @@ static cw_action_in_t actions_in[] = { /* Vendor Specific Payload - Join Request*/ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CAPWAP_ELEM_VENDOR_SPECIFIC_PAYLOAD, .start = cw_in_vendor_specific_payload, diff --git a/src/mod/capwap/capwap_actions_wtp.c b/src/mod/capwap/capwap_actions_wtp.c index be560418..05e962d9 100644 --- a/src/mod/capwap/capwap_actions_wtp.c +++ b/src/mod/capwap/capwap_actions_wtp.c @@ -102,14 +102,14 @@ static cw_action_in_t actions_in[] = { * Message Join Response */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_RESPONSE, .end = cw_in_check_generic_resp } , /* Result Code - Join Response */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_RESPONSE, .elem_id = CW_ELEM_RESULT_CODE, .item_id = CW_ITEM_RESULT_CODE, @@ -122,7 +122,7 @@ static cw_action_in_t actions_in[] = { /* AC Descriptor - Join Response */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_RESPONSE, .elem_id = CAPWAP_ELEM_AC_DESCRIPTOR, .item_id = CW_ITEM_AC_DESCRIPTOR, @@ -135,7 +135,7 @@ static cw_action_in_t actions_in[] = { /* AC Name - Join Response */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_RESPONSE, .elem_id = CW_ELEM_AC_NAME, .item_id = CW_ITEM_AC_NAME, @@ -148,7 +148,7 @@ static cw_action_in_t actions_in[] = { /* ECN Support - Join Response */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_RESPONSE, .elem_id = CW_ELEM_ECN_SUPPORT, .item_id = CW_ITEM_ECN_SUPPORT, @@ -161,7 +161,7 @@ static cw_action_in_t actions_in[] = { /* CAPWAP Control IPv4 Address - Join Response*/ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_RESPONSE, .elem_id = CW_ELEM_CAPWAP_CONTROL_IPV4_ADDRESS, .item_id = CW_ITEM_CAPWAP_CONTROL_IP_ADDRESS_LIST, @@ -174,7 +174,7 @@ static cw_action_in_t actions_in[] = { /* CAPWAP Control IPv6 Address - Join Response*/ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_RESPONSE, .elem_id = CW_ELEM_CAPWAP_CONTROL_IPV6_ADDRESS, .item_id = CW_ITEM_CAPWAP_CONTROL_IP_ADDRESS_LIST, @@ -188,7 +188,7 @@ static cw_action_in_t actions_in[] = { /* Maximum Message Length - Join Response */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_RESPONSE, .elem_id = CW_ELEM_MAXIMUM_MESSAGE_LENGTH, .start = cw_in_generic2, diff --git a/src/mod/capwap80211/capwap80211_actions_ac.c b/src/mod/capwap80211/capwap80211_actions_ac.c index f208ec12..89635045 100644 --- a/src/mod/capwap80211/capwap80211_actions_ac.c +++ b/src/mod/capwap80211/capwap80211_actions_ac.c @@ -45,7 +45,7 @@ static cw_action_in_t actions_ac_in[] = { /* 802.11 Radio Information - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CW_ELEM80211_WTP_RADIO_INFORMATION, .item_id = CW_RADIOITEM80211_WTP_RADIO_INFORMATION, diff --git a/src/mod/capwap80211/capwap80211_actions_wtp.c b/src/mod/capwap80211/capwap80211_actions_wtp.c index 67730cd4..4f148de3 100644 --- a/src/mod/capwap80211/capwap80211_actions_wtp.c +++ b/src/mod/capwap80211/capwap80211_actions_wtp.c @@ -36,7 +36,7 @@ static cw_action_in_t actions_wtp_in[] = { /* 802.11 Radio Inmformation - Join Response */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_RESPONSE, .elem_id = CW_ELEM80211_WTP_RADIO_INFORMATION, .item_id = CW_RADIOITEM80211_WTP_RADIO_INFORMATION, diff --git a/src/mod/cisco/cisco_actions_ac.c b/src/mod/cisco/cisco_actions_ac.c index 858d2f31..cccec0a5 100644 --- a/src/mod/cisco/cisco_actions_ac.c +++ b/src/mod/cisco/cisco_actions_ac.c @@ -160,7 +160,7 @@ static cw_action_in_t actions_in[] = { /* WTP Descriptor - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CAPWAP_ELEM_WTP_DESCRIPTOR, .start = cisco_in_wtp_descriptor, @@ -172,7 +172,7 @@ static cw_action_in_t actions_in[] = { /* Session ID - Join Request */ { /* Cisco uses 4 byte session ids */ - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CW_ELEM_SESSION_ID, .start = capwap_in_session_id, @@ -185,7 +185,7 @@ static cw_action_in_t actions_in[] = { /* Local IPv4 Address - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CW_ELEM_WTP_IPV4_IP_ADDRESS, .item_id = CW_ITEM_CAPWAP_LOCAL_IP_ADDRESS, @@ -198,7 +198,7 @@ static cw_action_in_t actions_in[] = { /* Local IPv6 Address - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CW_ELEM_WTP_IPV6_IP_ADDRESS, .item_id = CW_ITEM_CAPWAP_LOCAL_IP_ADDRESS, @@ -213,7 +213,7 @@ static cw_action_in_t actions_in[] = { { /* Cisco (using draft 7) does nothing know * about ECN support, so make it non-mandatory */ - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_REQUEST, .elem_id = CW_ELEM_ECN_SUPPORT, .item_id = CW_ITEM_ECN_SUPPORT, diff --git a/src/mod/cisco/cisco_actions_wtp.c b/src/mod/cisco/cisco_actions_wtp.c index c5b63414..a65ce24e 100644 --- a/src/mod/cisco/cisco_actions_wtp.c +++ b/src/mod/cisco/cisco_actions_wtp.c @@ -66,7 +66,7 @@ static cw_action_in_t actions_in[] = { /* ECN Support - Join Response */ { /* Make ECN Support non-mand */ - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_RESPONSE, .elem_id = CW_ELEM_ECN_SUPPORT, .item_id = CW_ITEM_ECN_SUPPORT, @@ -80,7 +80,7 @@ static cw_action_in_t actions_in[] = { /* AC Descriptor - Join Response */ { /* Cisco's AC Descriptor */ - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CAPWAP_MSG_JOIN_RESPONSE, .elem_id = CAPWAP_ELEM_AC_DESCRIPTOR, .item_id = CW_ITEM_AC_DESCRIPTOR, diff --git a/src/mod/fortinet/fortinet_actions_ac.c b/src/mod/fortinet/fortinet_actions_ac.c index 3519efbe..67cf9594 100644 --- a/src/mod/fortinet/fortinet_actions_ac.c +++ b/src/mod/fortinet/fortinet_actions_ac.c @@ -80,7 +80,7 @@ static cw_action_in_t actions_in[] = { /* WTP Descriptor - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CW_MSG_JOIN_REQUEST, .elem_id = CW_ELEM_WTP_DESCRIPTOR, .start = cisco_in_wtp_descriptor, @@ -92,7 +92,7 @@ static cw_action_in_t actions_in[] = { /* Session ID - Join Request */ { /* Cisco uses 4 byte session ids */ - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CW_MSG_JOIN_REQUEST, .elem_id = CW_ELEM_SESSION_ID, .start = cw_in_generic2, @@ -105,7 +105,7 @@ static cw_action_in_t actions_in[] = { /* Local IPv4 Address - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CW_MSG_JOIN_REQUEST, .elem_id = CW_ELEM_WTP_IPV4_IP_ADDRESS, .item_id = CW_ITEM_CAPWAP_LOCAL_IP_ADDRESS, @@ -118,7 +118,7 @@ static cw_action_in_t actions_in[] = { /* Local IPv6 Address - Join Request */ { - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CW_MSG_JOIN_REQUEST, .elem_id = CW_ELEM_WTP_IPV6_IP_ADDRESS, .item_id = CW_ITEM_CAPWAP_LOCAL_IP_ADDRESS, @@ -133,7 +133,7 @@ static cw_action_in_t actions_in[] = { { /* Cisco (using draft 7) does nothing know * about ECN support, so make it non-mandatory */ - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CW_MSG_JOIN_REQUEST, .elem_id = CW_ELEM_ECN_SUPPORT, .item_id = CW_ITEM_ECN_SUPPORT, diff --git a/src/mod/fortinet/fortinet_actions_wtp.c b/src/mod/fortinet/fortinet_actions_wtp.c index 5732ed9b..4ae3ce7c 100644 --- a/src/mod/fortinet/fortinet_actions_wtp.c +++ b/src/mod/fortinet/fortinet_actions_wtp.c @@ -60,7 +60,7 @@ static cw_action_in_t actions_in[] = { /* ECN Support - Join Response */ { /* Make ECN Support non-mand */ - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CW_MSG_JOIN_RESPONSE, .elem_id = CW_ELEM_ECN_SUPPORT, .item_id = CW_ITEM_ECN_SUPPORT, @@ -74,7 +74,7 @@ static cw_action_in_t actions_in[] = { /* AC Descriptor - Join Response */ { /* Cisco's AC Descriptor */ - .capwap_state = CW_STATE_JOIN, + .capwap_state = CAPWAP_STATE_JOIN, .msg_id = CW_MSG_JOIN_RESPONSE, .elem_id = CW_ELEM_AC_DESCRIPTOR, .item_id = CW_ITEM_AC_DESCRIPTOR, diff --git a/src/wtp/discovery.c b/src/wtp/discovery.c index 7113415c..42e00df0 100644 --- a/src/wtp/discovery.c +++ b/src/wtp/discovery.c @@ -260,6 +260,6 @@ int discovery() printf("Radios = %d\n",conn->radios->count); cw_run_discovery(conn, "255.255.255.255"); - conn->capwap_state=CW_STATE_JOIN; + conn->capwap_state=CAPWAP_STATE_JOIN; return 1; } diff --git a/src/wtp/join.c b/src/wtp/join.c index 2141564b..c6f27c5f 100644 --- a/src/wtp/join.c +++ b/src/wtp/join.c @@ -97,7 +97,7 @@ acinfo.result_code=99; int run_join_d(struct sockaddr *sa) { struct conn *conn = get_conn(); - conn->capwap_state = CW_STATE_JOIN; + conn->capwap_state = CAPWAP_STATE_JOIN; int sockfd; int rc;