hardware verson sent in disc req

FossilOrigin-Name: f1bcc6902585c7547cc4ab386d0ba303b2739a18dc7e8589fbf07ede838cf326
This commit is contained in:
7u83@mail.ru 2016-03-04 20:42:39 +00:00
parent 5db45e2e95
commit 3840409aab
4 changed files with 75 additions and 65 deletions

View File

@ -3,6 +3,9 @@
#include "cw/capwap_items.h"
#include "mod_capwap.h"
static cw_action_in_t actions_in[] = {
@ -67,7 +70,7 @@ static cw_action_out_t actions_out[] = {
.msg_id = CW_MSG_DISCOVERY_REQUEST,
.elem_id = CW_ELEM_WTP_DESCRIPTOR,
.item_id = CW_ITEM_WTP_DESCRIPTOR,
.out = cw_out_wtp_descriptor,
.out = capwap_out_wtp_descriptor,
//.get = cw_out_get_outgoing,
.mand = 1
}

View File

@ -5,11 +5,14 @@ struct mod_ac * mod_capwap_ac();
struct mod_wtp *mod_capwap_wtp();
extern int capwap_in_wtp_descriptor(struct conn *conn, struct cw_action_in *a, uint8_t * data,
int len, struct sockaddr *from);
extern int capwap_in_wtp_descriptor(struct conn *conn, struct cw_action_in *a,
uint8_t * data, int len, struct sockaddr *from);
int capwap_in_wtp_board_data(struct conn *conn, struct cw_action_in *a, uint8_t * data,
int len, struct sockaddr *from);
extern int capwap_in_wtp_board_data(struct conn *conn, struct cw_action_in *a,
uint8_t * data, int len, struct sockaddr *from);
extern int capwap_out_wtp_descriptor(struct conn *conn, struct cw_action_out *a,
uint8_t * dst);
#endif

View File

@ -185,8 +185,8 @@ int read_config(const char * filename){
str = uci_lookup_option_string(ctx,section,"hardware_version");
if (str){
uint8_t * s = bstr_create_from_cfgstr(str);
bstr_replace(&conf_hardware_version,s);
uint8_t * s = bstr16_create_from_cfgstr(str);
bstr16_replace(&conf_hardware_version,s);
}
str = uci_lookup_option_string(ctx,section,"bootloader_version");

View File

@ -77,7 +77,6 @@ int main()
if (!read_config("./wtp_uci.conf")) {
return 1;
}
// cw_dbg_opt_level = conf_dbg_level;
wtpconf_init();
@ -166,14 +165,19 @@ conn->config=mbag_create();
mbag_set_bstr16n(board_data, CW_ITEM_WTP_BOARD_SERIALNO,
bstr_data(conf_serial_no), bstr_len(conf_serial_no));
mbag_set_bstr16n(board_data, CW_ITEM_WTP_BOARD_MODELNO, bstr_data(conf_model_no),bstr_len(conf_model_no));
mbag_set_bstr16n(board_data, CW_ITEM_WTP_BOARD_MODELNO, bstr_data(conf_model_no),
bstr_len(conf_model_no));
mbag_set_mbag(conn->config, CW_ITEM_WTP_BOARD_DATA, board_data);
// hw = bstrv_create(conf_vendor_id,conf_hardware_version
//mbag_set_bstr16(conn->config, CW_ITEM_WTP_HARDWARE_VERSION,conf_hardware_version);
bstrv_t hw =
bstrv_create(conf_vendor_id, bstr16_data(conf_hardware_version),
bstr16_len(conf_hardware_version));
mbag_set_bstr16(conn->config, CW_ITEM_WTP_HARDWARE_VERSION, hw);
//mbag_set_bstr16(conn->config, CW_ITEM_WTP_SOFTWARE_VERSION,conf_software_version);
printf("Board_data %p\n", board_data);