The dummy WTP goes with CAPWAP until run state.

FossilOrigin-Name: a37b72762fff7de284209c42086e17d92c5c03adc7ed1d3ffd1a3d1a9d83a4dc
This commit is contained in:
7u83@mail.ru 2016-03-09 19:15:36 +00:00
parent 97ec43861c
commit ea80dfc883
6 changed files with 107 additions and 2 deletions

View File

@ -156,6 +156,7 @@ CAPWAPOBJS= \
cw_in_capwap_local_ipv6_address.o \
cw_in_radio_administrative_state.o \
cw_in_radio_administrative_state_wtp.o \
cw_in_radio_operational_state.o\
strheap.o \
cw_check_missing_mand.o \
md5sum.o \

View File

@ -110,6 +110,10 @@ extern int cw_in_capwap_local_ipv4_address(struct conn *conn, struct cw_action_i
extern int cw_in_capwap_local_ipv6_address(struct conn *conn, struct cw_action_in *a,
uint8_t * data, int len,struct sockaddr *from);
extern int cw_in_radio_operational_state(struct conn *conn, struct cw_action_in *a, uint8_t * data,
int len, struct sockaddr *from);
/**
* @}
*/

View File

@ -12,6 +12,6 @@ int cw_in_radio_operational_state(struct conn *conn, struct cw_action_in *a, uin
{
return 1;
}

View File

@ -309,6 +309,49 @@ static cw_action_in_t actions_in[] = {
/* Message: Change State Event Request - in Config State */
{
.capwap_state=CW_STATE_CONFIGURE,
.msg_id = CW_MSG_CHANGE_STATE_EVENT_REQUEST,
.end = cw_in_check_chng_state_evnt_req
}
,
/* Element: Result Code */
{
.capwap_state = CW_STATE_CONFIGURE,
.msg_id= CW_MSG_CHANGE_STATE_EVENT_REQUEST,
.elem_id = CW_ELEM_RESULT_CODE,
.item_id = CW_ITEM_RESULT_CODE,
.start = cw_in_generic2,
.min_len=4,
.max_len=4,
.mand = 1
}
,
/* Element: Radio Poprational State */
{
.capwap_state = CW_STATE_CONFIGURE,
.msg_id= CW_MSG_CHANGE_STATE_EVENT_REQUEST,
.elem_id = CW_ELEM_RADIO_OPERATIONAL_STATE,
.item_id = CW_RADIO_OPER_STATE,
.start = cw_in_radio_operational_state,
.min_len=3,
.max_len=3,
.mand = 0
}
,
/* ------------------------------------------------------------------------------- */
/* ECHO REQUEST Request */
{
.capwap_state = CW_STATE_RUN,
.msg_id = CW_MSG_ECHO_REQUEST,
}
,
/* End of list */
{0, 0}
@ -386,6 +429,25 @@ static cw_action_out_t actions_out[]={
,
/* Change State Event Response */
{
.msg_id = CW_MSG_CHANGE_STATE_EVENT_RESPONSE,
.elem_id = CW_ELEM_RESULT_CODE,
.item_id = CW_ITEM_RESULT_CODE,
.out = cw_out_generic,
.get = cw_out_get_outgoing,
.mand = 1
}
,
/* ECHO Response */
{
.msg_id = CW_MSG_ECHO_RESPONSE,
}
,
{0,0}

View File

@ -137,7 +137,36 @@ static cw_action_in_t actions_in[] = {
}
,
{
.capwap_state = CW_STATE_CONFIGURE,
.msg_id = CW_MSG_CHANGE_STATE_EVENT_RESPONSE,
.end = cw_in_check_cfg_update_req
}
,
{
.capwap_state = CW_STATE_CONFIGURE,
.msg_id = CW_MSG_CHANGE_STATE_EVENT_RESPONSE,
.elem_id = CW_ELEM_RESULT_CODE,
.item_id = CW_ITEM_RESULT_CODE,
.start = cw_in_generic2,
.min_len = 4,
.max_len = 4,
.mand = 1
}
,
{
.capwap_state = CW_STATE_RUN,
.msg_id = CW_MSG_ECHO_RESPONSE,
}
,
};
@ -350,6 +379,16 @@ static cw_action_out_t actions_out[] = {
,
/* ---------------------------------------------------------------
* Echo Request - Out
*/
/* Echo Request */
{
.msg_id = CW_MSG_ECHO_REQUEST,
}
,
/* Radio Ooerational State */

View File

@ -29,7 +29,6 @@ int run()
{
struct conn *conn = get_conn();
conn->capwap_state = CW_STATE_RUN;