actube/src/capwap/cw_in_cisco_image_identifier.c
7u83@mail.ru 6d707d1725 Some improvements in colored debugging and more things.
FossilOrigin-Name: 8405db3519985e661123754a83e4dbde153f29dd22007ed31853117220e21000
2015-04-12 21:28:55 +00:00

38 lines
781 B
C

#include "action.h"
#include "dbg.h"
#include "itemstore.h"
#include "capwap.h"
#include "capwap_cisco.h"
int cw_in_cisco_image_identifier(struct conn *conn,struct cw_action_in * a,uint8_t *data,int len,struct sockaddr *from)
{
if (len<a->min_len) {
cw_dbg(DBG_ELEM_ERR,"Message element too short, %d < %d", len,a->min_len);
return 0;
}
uint32_t vendor_id = cw_get_dword(data);
int dstart;
switch (vendor_id) {
case CW_VENDOR_ID_ZYXEL:
case CW_VENDOR_ID_CISCO:
case CW_VENDOR_ID_FSF:
case 0:
dstart=4;
len-=4;
break;
default:
vendor_id=CW_VENDOR_ID_CISCO;
dstart=0;
}
// cw_itemstore_set(conn->remote,a->item_id,a->itemtype,data+dstart,len);
cw_itemstore_set_vendorstr(conn->incomming,a->item_id,vendor_id,data+dstart,len);
return 1;
}