wtp
FossilOrigin-Name: 71f629df1cccad394595950c2419a3523113d36cf07c39418a075b6601d89ad8
This commit is contained in:
@ -159,8 +159,6 @@ CAPWAPOBJS= \
|
||||
cw_out_wtp_reboot_statistics.o \
|
||||
cw_in_wtp_reboot_statistics.o\
|
||||
cw_in_cisco_image_identifier.o\
|
||||
cw_out_radio_operational_states.o\
|
||||
cw_out_radio_operational_states_7.o\
|
||||
cw_put_radio_operational_states.o \
|
||||
cw_put_ac_status.o \
|
||||
cw_in_ac_descriptor.o\
|
||||
@ -196,6 +194,8 @@ CAPWAP80211OBJS=\
|
||||
capwap80211_items.o\
|
||||
capwap80211_type_rateset.o \
|
||||
|
||||
# cw_out_radio_operational_states.o\
|
||||
# cw_out_radio_operational_states_7.o\
|
||||
|
||||
#
|
||||
# SSL objects
|
||||
|
@ -302,10 +302,10 @@ CW_MSG_MAXMSG = 26
|
||||
|
||||
|
||||
/* Frame tunnnel mode bits */
|
||||
#define WTP_FRAME_TUNNEL_MODE_R 1 /* Reserved */
|
||||
#define WTP_FRAME_TUNNEL_MODE_L 2 /* Local bridging */
|
||||
#define WTP_FRAME_TUNNEL_MODE_E 4 /* 802.3 mode */
|
||||
#define WTP_FRAME_TUNNEL_MODE_N 8 /* native mode */
|
||||
#define CW_WTP_FRAME_TUNNEL_MODE_R 1 /* Reserved */
|
||||
#define CW_WTP_FRAME_TUNNEL_MODE_L 2 /* Local bridging */
|
||||
#define CW_WTP_FRAME_TUNNEL_MODE_E 4 /* 802.3 mode */
|
||||
#define CW_WTP_FRAME_TUNNEL_MODE_N 8 /* native mode */
|
||||
|
||||
#include "radioinfo.h"
|
||||
|
||||
@ -320,9 +320,9 @@ CW_MSG_MAXMSG = 26
|
||||
|
||||
|
||||
/* wtp mac types */
|
||||
#define WTP_MAC_TYPE_LOCAL 0
|
||||
#define WTP_MAC_TYPE_SPLIT 1
|
||||
#define WTP_MAC_TYPE_BOTH 2
|
||||
#define CW_WTP_MAC_TYPE_LOCAL 0
|
||||
#define CW_WTP_MAC_TYPE_SPLIT 1
|
||||
#define CW_WTP_MAC_TYPE_BOTH 2
|
||||
|
||||
|
||||
|
||||
@ -745,7 +745,7 @@ int cw_in_check_chng_state_evnt_req(struct conn *conn, struct cw_action_in *a, u
|
||||
int len,struct sockaddr *from);
|
||||
|
||||
|
||||
int cw_out_radio_operational_states(struct conn *conn, struct cw_action_out *a, uint8_t * dst);
|
||||
//int cw_out_radio_operational_states(struct conn *conn, struct cw_action_out *a, uint8_t * dst);
|
||||
|
||||
|
||||
int cw_in_check_cfg_update_req(struct conn *conn, struct cw_action_in *a, uint8_t * data,
|
||||
|
@ -41,7 +41,6 @@ const char CW_ITEM_WTP_OTHERSOFTWARE_VERSION,
|
||||
const char CW_ITEM_WTP_BOARD_DATA[]="wtp_board_data";
|
||||
const char CW_ITEM_WTP_DESCRIPTOR[]="0wtp_descriptor";
|
||||
const char CW_ITEM_CAPWAP_TIMERS[]="capwap_timers";
|
||||
//const char CW_ITEM_RADIO_ADMINISTRATIVE_STATE[]="radio_admin_state";
|
||||
|
||||
const char CW_ITEM_AC_NAME[]="ac_name";
|
||||
const char CW_ITEM_AC_DESCRIPTOR[]="ac_descriptor";
|
||||
@ -69,7 +68,7 @@ const char CW_ITEM_MAXIMUM_MESSAGE_LENGTH[]="maximum_message_length";
|
||||
|
||||
|
||||
/* CIPWAP and Cisco */
|
||||
const char CW_ITEM_WTP_GROUP_NAME[]="wtp_group_name";
|
||||
//const char CW_ITEM_WTP_GROUP_NAME[]="wtp_group_name";
|
||||
|
||||
|
||||
/* Other Items */
|
||||
@ -102,6 +101,7 @@ struct cw_itemdef capwap_itemdefs[] = {
|
||||
|
||||
{CW_ITEM_WTP_NAME,CW_ITEM_NONE,MBAG_STR},
|
||||
{CW_ITEM_WTP_MAC_TYPE,CW_ITEM_NONE,MBAG_BYTE},
|
||||
{CW_ITEM_WTP_FRAME_TUNNEL_MODE,CW_ITEM_NONE,MBAG_BYTE},
|
||||
{CW_ITEM_WTP_FALLBACK,CW_ITEM_NONE,MBAG_BYTE},
|
||||
|
||||
|
||||
@ -120,13 +120,12 @@ struct cw_itemdef capwap_itemdefs[] = {
|
||||
|
||||
{CW_ITEM_CAPWAP_TRANSPORT_PROTOCOL,CW_ITEM_NONE,MBAG_BYTE},
|
||||
|
||||
{CW_ITEM_WTP_FRAME_TUNNEL_MODE,CW_ITEM_NONE,MBAG_BYTE},
|
||||
{CW_ITEM_LOCATION_DATA,CW_ITEM_NONE,MBAG_STR},
|
||||
{CW_ITEM_WTP_HARDWARE_VERSION,CW_ITEM_NONE,MBAG_VENDORSTR},
|
||||
{CW_ITEM_WTP_SOFTWARE_VERSION,CW_ITEM_NONE,MBAG_VENDORSTR},
|
||||
{CW_ITEM_WTP_BOOT_VERSION,CW_ITEM_NONE,MBAG_VENDORSTR},
|
||||
{CW_ITEM_WTP_OTHER_VERSION,CW_ITEM_NONE,MBAG_VENDORSTR},
|
||||
{CW_ITEM_WTP_GROUP_NAME,CW_ITEM_NONE,MBAG_STR},
|
||||
//{CW_ITEM_WTP_GROUP_NAME,CW_ITEM_NONE,MBAG_STR},
|
||||
{CW_ITEM_MAXIMUM_MESSAGE_LENGTH,CW_ITEM_NONE,MBAG_WORD},
|
||||
{CW_ITEM_STATISTICS_TIMER,CW_ITEM_NONE,MBAG_WORD},
|
||||
{CW_ITEM_IDLE_TIMEOUT,CW_ITEM_NONE,MBAG_DWORD},
|
||||
@ -168,11 +167,11 @@ const char CW_RADIOITEM_OPER_STATE[]="oper_state";
|
||||
const char CW_RADIOITEM_DECRYPTION_ERROR_REPORT_PERIOD[]="decryption_error_report_period";
|
||||
|
||||
|
||||
struct cw_itemdef capwap_radiodefs[] = {
|
||||
struct cw_itemdef capwap_radioitemdefs[] = {
|
||||
{CW_RADIOITEM_ADMIN_STATE,CW_ITEM_NONE,MBAG_BYTE},
|
||||
{CW_RADIOITEM_OPER_STATE,CW_ITEM_NONE,MBAG_WORD},
|
||||
|
||||
{CW_RADIOITEM_DECRYPTION_ERROR_REPORT_PERIOD},
|
||||
{CW_RADIOITEM_DECRYPTION_ERROR_REPORT_PERIOD,CW_ITEM_NONE,MBAG_WORD},
|
||||
|
||||
{CW_ITEM_NONE}
|
||||
};
|
||||
|
@ -138,7 +138,7 @@ extern const char CW_ITEM_CAPWAP_TRANSPORT_PROTOCOL[];
|
||||
|
||||
|
||||
/* CIPWAP and Cisco */
|
||||
extern const char CW_ITEM_WTP_GROUP_NAME[];
|
||||
//extern const char CW_ITEM_WTP_GROUP_NAME[];
|
||||
|
||||
|
||||
/* Other Items */
|
||||
@ -199,7 +199,7 @@ extern const char CW_RADIOITEM_DECRYPTION_ERROR_REPORT_PERIOD[];
|
||||
|
||||
|
||||
extern struct cw_itemdef capwap_itemdefs[];
|
||||
extern struct cw_itemdef capwap_radiodefs[];
|
||||
extern struct cw_itemdef capwap_radioitemdefs[];
|
||||
|
||||
|
||||
#endif
|
||||
|
@ -3,10 +3,13 @@
|
||||
|
||||
#include "action.h"
|
||||
#include "cw.h"
|
||||
#include "cw/dbg.h"
|
||||
|
||||
|
||||
int cw_out_radio_generic(struct conn *conn, struct cw_action_out *a, uint8_t * dst)
|
||||
{
|
||||
cw_dbg(DBG_X,"Radio Generic out %s",a->item_id);
|
||||
|
||||
int l=0;
|
||||
MAVLITER_DEFINE(it,conn->radios_upd);
|
||||
mavliter_foreach(&it){
|
||||
@ -25,10 +28,13 @@ int cw_out_radio_generic(struct conn *conn, struct cw_action_out *a, uint8_t * d
|
||||
|
||||
struct mbag_item * item = mbag_get(radio->data,a->item_id);
|
||||
if (!item){
|
||||
cw_dbg(DBG_X,"Not found! %s for rid %d",a->item_id,radio->iid);
|
||||
continue;
|
||||
}
|
||||
int len=0;
|
||||
len += cw_put_byte(d+start,radio->iid);
|
||||
|
||||
cw_dbg(DBG_X, "Radio generic out '%s' fro rid %d",a->item_id,radio->iid);
|
||||
len += cw_put_mbag_item(d + start+1, item);
|
||||
|
||||
if (a->vendor_id)
|
||||
|
@ -24,7 +24,7 @@
|
||||
#include "radio.h"
|
||||
|
||||
|
||||
int cw_out_radio_operational_states(struct conn *conn, struct cw_action_out *a, uint8_t * dst)
|
||||
int xxcw_out_radio_operational_states(struct conn *conn, struct cw_action_out *a, uint8_t * dst)
|
||||
{
|
||||
int nerror=0;
|
||||
int l = cw_put_radio_operational_states(conn->radios,dst,&nerror,0);
|
||||
|
@ -29,7 +29,7 @@
|
||||
/**
|
||||
* Put all radio operational states
|
||||
*/
|
||||
int cw_put_radio_operational_states(mbag_t radios, uint8_t * dst, int *nerror, int d7mode)
|
||||
int xxcw_put_radio_operational_states(mbag_t radios, uint8_t * dst, int *nerror, int d7mode)
|
||||
{
|
||||
uint8_t *d=dst;
|
||||
|
||||
|
@ -4,10 +4,6 @@
|
||||
#include "radio.h"
|
||||
#include "dbg.h"
|
||||
|
||||
|
||||
|
||||
const char CW_RADIO_ADMIN_STATE[]="admin_state";
|
||||
const char CW_RADIO_OPER_STATE[]="oper_state";
|
||||
const char CW_RADIO_TYPE[]="radio_type";
|
||||
const char CW_RADIO_REG_DOMAIN[]="reg_domain";
|
||||
const char CW_RADIO_BSSID[]="bssid";
|
||||
@ -27,8 +23,8 @@ const char CW_RADIO_CFP_PERIOD[]="cfp_period";
|
||||
const char CW_RADIO_CFP_MAX_DURATION[]="cfp_max_duration";
|
||||
|
||||
|
||||
struct cw_itemdef capwap_radioitemdefs[] = {
|
||||
{CW_RADIO_ADMIN_STATE,CW_ITEM_NONE,MBAG_BYTE},
|
||||
struct cw_itemdef xxxcapwap_radioitemdefs[] = {
|
||||
//{CW_RADIO_ADMIN_STATE,CW_ITEM_NONE,MBAG_BYTE},
|
||||
{CW_RADIO_TYPE,CW_ITEM_NONE,MBAG_DWORD},
|
||||
{CW_RADIO_DECRYPTION_ERROR_REPORT_PERIOD,CW_ITEM_NONE,MBAG_WORD},
|
||||
|
||||
@ -39,27 +35,6 @@ struct cw_itemdef capwap_radioitemdefs[] = {
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Update all radio operational states.
|
||||
* @param radios definition of radios
|
||||
* @param cause cause to set
|
||||
*/
|
||||
int cw_radio_update_oper_states(mbag_t radios,int cause)
|
||||
{
|
||||
MAVLITER_DEFINE(it,radios);
|
||||
mavliter_foreach(&it){
|
||||
mbag_item_t * i = mavliter_get(&it);
|
||||
|
||||
/* Get admin state of the radio, set disabled (2) if admin state is
|
||||
not defined */
|
||||
int admin_state = mbag_get_byte(i->data,CW_RADIO_ADMIN_STATE,2);
|
||||
mbag_set_word(i->data,CW_RADIO_OPER_STATE,(admin_state<<8) | cause );
|
||||
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -15,6 +15,8 @@ int conn_send_msg(struct conn * conn, uint8_t *rawmsg)
|
||||
|
||||
int packetlen = cw_get_hdr_msg_total_len(rawmsg);
|
||||
|
||||
cw_dbg(DBG_X,"Here is a conn_send_msg for anything");
|
||||
|
||||
cw_dbg_msg(DBG_MSG_OUT, conn,rawmsg, packetlen,(struct sockaddr*)&conn->addr);
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user