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;