2018-03-27 18:37:17 +02:00
|
|
|
|
|
|
|
#include "capwap.h"
|
2022-07-31 17:15:32 +02:00
|
|
|
#include "val.h"
|
2018-03-27 18:37:17 +02:00
|
|
|
#include "msgset.h"
|
|
|
|
#include "log.h"
|
|
|
|
#include "cw.h"
|
|
|
|
|
2022-08-13 09:47:12 +02:00
|
|
|
#include "dbg.h"
|
2018-03-27 18:37:17 +02:00
|
|
|
|
|
|
|
int cw_in_radio_generic(struct cw_ElemHandler * handler, struct cw_ElemHandlerParams * params,
|
|
|
|
uint8_t * elem_data, int elem_len)
|
|
|
|
{
|
2022-08-13 09:47:12 +02:00
|
|
|
char key[CW_CFG_MAX_KEY_LEN];
|
2018-03-27 18:37:17 +02:00
|
|
|
int radio;
|
2022-08-13 09:47:12 +02:00
|
|
|
struct cw_Type *type;
|
|
|
|
type = (struct cw_Type*)handler->type;
|
2018-03-27 18:37:17 +02:00
|
|
|
|
2022-08-13 09:47:12 +02:00
|
|
|
if (!type){
|
2018-03-27 18:37:17 +02:00
|
|
|
cw_log(LOG_ERR,"Can't handle element: %s, no type defined",handler->name);
|
|
|
|
return CAPWAP_RESULT_UNRECOGNIZED_MESSAGE_ELEMENT;
|
|
|
|
}
|
2022-08-13 09:47:12 +02:00
|
|
|
|
|
|
|
|
2018-03-27 18:37:17 +02:00
|
|
|
|
|
|
|
radio=cw_get_byte(elem_data);
|
2018-04-17 07:46:09 +02:00
|
|
|
sprintf(key,"radio.%d/%s",radio,handler->key);
|
2018-03-27 18:37:17 +02:00
|
|
|
|
2022-08-13 09:47:12 +02:00
|
|
|
/*cw_cfg_set_val(params->cfg, key,
|
|
|
|
handler->type, handler->param, elem_data+1,elem_len-1);*/
|
2018-03-27 18:37:17 +02:00
|
|
|
|
2022-08-13 09:47:12 +02:00
|
|
|
type->read(params->cfg, key,elem_data+1,elem_len-1,handler->param);
|
2018-03-27 18:37:17 +02:00
|
|
|
return CAPWAP_RESULT_SUCCESS;
|
|
|
|
}
|