FossilOrigin-Name: 71f629df1cccad394595950c2419a3523113d36cf07c39418a075b6601d89ad8
This commit is contained in:
7u83@mail.ru
2016-04-18 05:40:30 +00:00
parent a0ee1bc9be
commit cbd513792b
23 changed files with 207 additions and 78 deletions

View File

@ -17,7 +17,7 @@
#include "cw/conn.h"
#include "cw/bstr.h"
#include "cw/dbg.h"
static int skip(jsmntok_t * t)
@ -191,7 +191,7 @@ static int scn_obj(char *js, jsmntok_t * t,
*(js + (to + 1)->end) = 0;
const char * val = js+(to+1)->start;
//printf("Key: %s Val: %s\n",key,val);
printf("Key: %s Val: %s\n",key,val);
if ((to+1)->type == JSMN_OBJECT) {
@ -318,8 +318,17 @@ int mbag_tojson(char *dst, mbag_t m, cw_itemdef_t *defs, int n)
d+=sprintf(d,"\"");
if (i->type->to_str){
d+=i->type->to_str(i,d);
// char bu[1000];
// i->type->to_str(i,bu);
// cw_dbg(DBG_X,"Put: %s::: %s",i->id,bu);
}
else{
cw_dbg(DBG_X,"Noooooooooooooooooo to_str method for %s",i->id);
}
d+=sprintf(d,"\"");
}
}
if (n==0){

View File

@ -13,7 +13,7 @@ int changestate()
/* Update operational states, so they will be included
in the change Change State Event Request message. */
cw_radio_update_oper_states(conn->radios,0);
// cw_radio_update_oper_states(conn->radios,0);
mbag_set_dword(conn->outgoing,CW_ITEM_RESULT_CODE,0);

View File

@ -18,7 +18,8 @@ int configure()
mbag_del(conn->incomming,CW_ITEM_RESULT_CODE);
mbag_set_str(conn->local,CW_ITEM_AC_NAME,"abc");
mbag_set_byte(conn->config,CW_ITEM_WTP_MAC_TYPE,WTP_MAC_TYPE_BOTH);
// mbag_set_byte(conn->config,CW_ITEM_WTP_MAC_TYPE,WTP_MAC_TYPE_BOTH);
// mbag_set_byte(conn->config,CW_ITEM_WTP_MAC_TYPE,CAPWAP_WTP_MAC_TYPE_SPLIT);
/* for config status request send the whole config */
mbag_t radios_upd = conn->radios_upd;

View File

@ -107,7 +107,7 @@ int run_join_d(struct sockaddr *sa)
cw_log(LOG_ERR, "Can't create socket: %s\n", strerror(errno));
return -1;
}
sock_set_recvtimeout(sockfd, 15);
sock_set_recvtimeout(sockfd, 1);
conn->sock = sockfd;
sock_copyaddr(&conn->addr, sa);

View File

@ -46,6 +46,7 @@ int handle_update_req(struct conn *conn, struct cw_action_in *a, uint8_t * data,
}
cw_dbg(DBG_X,"Saving configuration ...");
cfg_to_json();
return 0;
@ -58,8 +59,6 @@ int handle_update_req(struct conn *conn, struct cw_action_in *a, uint8_t * data,
static void update_radio(struct conn * conn, int rid, mbag_t radio_upd, mbag_t radio,mbag_t iresult )
{
// mbag_item * admin mbag_get(radio_upd,CW_ITEM_RADIO_ADMIN_STATE,
printf("Updating radio with rid %d\n",rid);
}
@ -94,6 +93,14 @@ static void do_update(struct conn * conn)
update_radios(conn,result);
cw_dbg(DBG_INFO, "Saving configuration ...");
cfg_to_json();
/* Change State ... */
int rc = cw_send_request(conn,CW_MSG_CHANGE_STATE_EVENT_REQUEST);
if ( !cw_rcok(rc) ) {
cw_strresult(rc);
return ;
}
}

View File

@ -141,7 +141,7 @@ int main()
conn->detected = 1;
conn->dtls_verify_peer=0;
conn->dtls_mtu = 2000;
conn->dtls_mtu = 12000;
conn->actions = &capwap_actions;
@ -194,8 +194,8 @@ printf("Setting to 8 %p %p\n",mri,r);
mbag_set_byte(conn->local, CW_ITEM_WTP_MAC_TYPE, 0);
mbag_set_byte(conn->local, CW_ITEM_WTP_FRAME_TUNNEL_MODE, 0);
mbag_set_byte(conn->local, CW_ITEM_WTP_MAC_TYPE, CW_WTP_MAC_TYPE_SPLIT);
mbag_set_byte(conn->local, CW_ITEM_WTP_FRAME_TUNNEL_MODE, CW_WTP_FRAME_TUNNEL_MODE_E);
conn->wbid=1;
@ -212,6 +212,7 @@ printf("Setting to 8 %p %p\n",mri,r);
if (!configure())
return -1;
cw_dbg(DBG_X,"Saveing config 0");
cfg_to_json();