actube/src/cw/cw_in_idx_generic_struct.c

32 lines
682 B
C
Raw Normal View History

#include "capwap.h"
#include "msgset.h"
2022-07-31 17:15:32 +02:00
#include "val.h"
#include "log.h"
#include "cw.h"
2022-08-13 09:47:12 +02:00
#include "dbg.h"
int cw_in_idx_generic_struct(struct cw_ElemHandler * handler, struct cw_ElemHandlerParams * params,
uint8_t * elem_data, int elem_len)
{
2022-08-14 12:26:34 +02:00
char key[CW_CFG_MAX_KEY_LEN];
int idx;
2022-08-13 09:47:12 +02:00
cw_dbg(DBG_X,"Fix cw_in_idx_generic_struct");
2022-08-14 12:26:34 +02:00
stop();
if (!handler->type){
cw_log(LOG_ERR,"Can't handle element: %s, no type defined",handler->name);
return CAPWAP_RESULT_UNRECOGNIZED_MESSAGE_ELEMENT;
}
idx = cw_get_byte(elem_data);
sprintf(key, handler->key, idx);
2022-08-13 09:47:12 +02:00
cw_ktv_read_struct(params->cfg,handler->type,key,elem_data+1,elem_len-1);
return CAPWAP_RESULT_SUCCESS;
}