From d05617e84ec73982f5abb5d45d2fbe5275cefaa5 Mon Sep 17 00:00:00 2001
From: "7u83@mail.ru" <7u83@mail.ru@noemail.net>
Date: Wed, 28 Mar 2018 08:58:26 +0000
Subject: [PATCH] Added cisco_out_radio_generic
to handle radios starting with ID 0
FossilOrigin-Name: 41cc2ada858bf59094847e8c106ae23d4efe54660eddcecec3ef917f6e9695cb
---
actube.workspace | 4 ++--
mod_cisco.project | 1 +
src/mod/cisco/Makefile | 2 ++
src/mod/cisco/cisco_actions_ac.c | 12 +++++++++++-
src/mod/cisco/cisco_out_radio_generic.c | 25 +++++++++++++++++++++++++
src/mod/cisco/mod_cisco.h | 3 +++
src/wtp/config.ktv | 9 +++++----
7 files changed, 49 insertions(+), 7 deletions(-)
create mode 100644 src/mod/cisco/cisco_out_radio_generic.c
diff --git a/actube.workspace b/actube.workspace
index e0162c79..c63c2d68 100644
--- a/actube.workspace
+++ b/actube.workspace
@@ -4,8 +4,8 @@
-
-
+
+
diff --git a/mod_cisco.project b/mod_cisco.project
index 9f674b3f..7e01637f 100644
--- a/mod_cisco.project
+++ b/mod_cisco.project
@@ -34,6 +34,7 @@
+
diff --git a/src/mod/cisco/Makefile b/src/mod/cisco/Makefile
index e1835181..1c4788ba 100644
--- a/src/mod/cisco/Makefile
+++ b/src/mod/cisco/Makefile
@@ -8,6 +8,8 @@ OBJS=\
cisco_in_wtp_descriptor.o \
cisco_out_wtp_descriptor.o \
cisco_in_ac_descriptor.o\
+ cisco_out_radio_generic.o\
+
# cisco80211.o \
# cisco_out_radio_administrative_state.o \
diff --git a/src/mod/cisco/cisco_actions_ac.c b/src/mod/cisco/cisco_actions_ac.c
index 4cc39588..5373da6e 100644
--- a/src/mod/cisco/cisco_actions_ac.c
+++ b/src/mod/cisco/cisco_actions_ac.c
@@ -117,7 +117,17 @@ static struct cw_ElemHandler handlers[] = {
cw_out_generic /* put */
}
,
-
+ {
+ "80211 WTP Radio Information - Cisco", /* name */
+ CAPWAP80211_ELEM_WTP_RADIO_INFORMATION, /* Element ID */
+ 0, 0, /* Vendor / Proto */
+ 0, 0, /* min/max length */
+ CW_TYPE_DWORD, /* type */
+ "wtp-radio-information", /* Key */
+ cw_in_radio_generic, /* get */
+ cisco_out_radio_generic /* put */
+ }
+ ,
{0,0,0,0,0,0,0,0}
};
diff --git a/src/mod/cisco/cisco_out_radio_generic.c b/src/mod/cisco/cisco_out_radio_generic.c
new file mode 100644
index 00000000..4875b7de
--- /dev/null
+++ b/src/mod/cisco/cisco_out_radio_generic.c
@@ -0,0 +1,25 @@
+
+
+#include "cw/cw.h"
+#include "cw/dbg.h"
+
+#include "mod_cisco.h"
+
+
+int cisco_out_radio_generic(struct cw_ElemHandler * handler, struct cw_ElemHandlerParams * params
+ , uint8_t * dst)
+{
+ int len,i,l;
+ int radios;
+ len =0;
+
+ radios = cw_ktv_get_byte(params->conn->local_cfg,"wtp-descriptor/max-radios",0);
+
+ for(i=0;iconn,params->msgdata->type,handler,dst,l);
+ len+=l;
+ }
+ return len;
+}
+
diff --git a/src/mod/cisco/mod_cisco.h b/src/mod/cisco/mod_cisco.h
index d86d0f89..8c58814d 100644
--- a/src/mod/cisco/mod_cisco.h
+++ b/src/mod/cisco/mod_cisco.h
@@ -12,6 +12,9 @@ int cisco_in_ac_descriptor(struct cw_ElemHandler *eh,
struct cw_ElemHandlerParams *params,
uint8_t * data, int len);
+int cisco_out_radio_generic(struct cw_ElemHandler * handler, struct cw_ElemHandlerParams * params
+ , uint8_t * dst);
+
struct cw_MsgSet * cisco_register_msg_set(struct cw_MsgSet * set, int mode);
#endif
diff --git a/src/wtp/config.ktv b/src/wtp/config.ktv
index 0577276a..5e531b9b 100644
--- a/src/wtp/config.ktv
+++ b/src/wtp/config.ktv
@@ -6,8 +6,8 @@ basic/mod:Bstr16:cisco
ansi/hallo:Dword:1
discovery-type:Byte:0
-wtp-frame-tunnel-mode:Byte:3
-wtp-mac-type:Byte:7
+wtp-frame-tunnel-mode:Byte:1
+wtp-mac-type:Byte:2
wtp-board-data/vendor:Dword:1234567
@@ -26,7 +26,8 @@ wtp-descriptor/bootloader/vendor:Dword:906090
wtp-descriptor/bootloader/version:Bstr16:.x171312
wtp-descriptor/max-radios:Byte:2
-radio/1/wtp-radio-information:Dword:01
-radio/2/wtp-radio-information:Dword:02
+radio/0/wtp-radio-information:Dword:01
+radio/1/wtp-radio-information:Dword:15
+radio/2/wtp-radio-information:Dword:03
wtp-name:Bstr16:WFAT01