Parcourir la source

[BT-6709 - BT-6711][snmp]change description

balbekova il y a 3 ans
Parent
commit
aeae5be5dd
3 fichiers modifiés avec 27 ajouts et 3 suppressions
  1. 8 0
      docs/bt6711/BT6711.MIB
  2. 10 1
      modules/Ethernet/private_mib_bt6711.c
  3. 9 2
      modules/Ethernet/snmp_api.c

+ 8 - 0
docs/bt6711/BT6711.MIB

@@ -522,6 +522,14 @@ IMPORTS
     "RADIUS secret word" 
     ::= { signals 61 }
 
+   	controllerSerial OBJECT-TYPE
+    SYNTAX  OCTET STRING
+    MAX-ACCESS  read-only
+    STATUS  current
+    DESCRIPTION
+    "Controller serial" 
+    ::= { signals 62 }
+
 -- DEVICE TRAPS
 
      fwVersionUpdate  NOTIFICATION-TYPE

+ 10 - 1
modules/Ethernet/private_mib_bt6711.c

@@ -6,7 +6,7 @@
  */
 
 
-#if defined HARDWARE_BT6711
+#if HARDWARE_BT6711 || HARDWARE_BT6711_V1
 #include "stm32f4xx.h"
 #include "private_mib.h"
 #include "parameters.h"
@@ -49,6 +49,10 @@ static s16_t signal_get_value(struct snmp_node_instance *instance, void *value);
 static snmp_err_t signal_set_value(struct snmp_node_instance *instance, u16_t len, void *value);
 static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len, void *value);
 
+/* signal .1.3.6.1.4.1.41752.911.11.1.62  */
+static const struct snmp_scalar_node signal62 = SNMP_SCALAR_CREATE_NODE_READONLY(62, SNMP_ASN1_TYPE_OCTET_STRING,
+        signal_get_value);
+
 /* signal .1.3.6.1.4.1.41752.911.11.1.61  */
 static const struct snmp_scalar_node signal61 = SNMP_SCALAR_CREATE_NODE(61, SNMP_NODE_INSTANCE_READ_WRITE,
         SNMP_ASN1_TYPE_OCTET_STRING, signal_get_value, signal_set_test, signal_set_value);
@@ -356,6 +360,7 @@ static const struct snmp_node *const signals_nodes[] = {
     &signal59.node.node,
     &signal60.node.node,
     &signal61.node.node,
+    &signal62.node.node,
 };
 static const struct snmp_tree_node signals_node = SNMP_CREATE_TREE_NODE(1, signals_nodes);
 
@@ -615,6 +620,9 @@ static s16_t signal_get_value(struct snmp_node_instance *instance, void *value)
         case 61: /* radiusServerPWD */
             GetRDSPasswordkStr((char *)paramStr, &paramLength);
             break;
+        case 62: /* ControllerModel*/
+            GetSerialNumberStr((char *)paramStr, &paramLength);
+            break;
         default:
             break;
     }
@@ -1233,3 +1241,4 @@ static snmp_err_t signal_set_test(struct snmp_node_instance *instance, u16_t len
 
 #endif
 
+

+ 9 - 2
modules/Ethernet/snmp_api.c

@@ -18,6 +18,7 @@
 #include "rtc.h"
 #include "megatec.h"
 #include "log.h"
+#include "parameters.h"
 
 #include "apps/snmp.h"
 #include "snmp_mib2.h"
@@ -188,10 +189,14 @@ void SNMP_SendUserTrap(uint8_t trapName)
 // TODO
 void SNMP_SetObjDescr(void)
 {
+    char str[50];
+    uint8_t len = 0;
 
     memset(sSettings.sSnmp.sysDesc.description, 0, sizeof(sSettings.sSnmp.sysDesc.description));
 
     strcpy(sSettings.sSnmp.sysDesc.description, HW_REV);
+#if HARDWARE_BT6711 || HARDWARE_BT6711_V1
+#else
     strcat(sSettings.sSnmp.sysDesc.description, " ");
     strcat(sSettings.sSnmp.sysDesc.description, VERSION);
     strcat(sSettings.sSnmp.sysDesc.description, " ");
@@ -202,8 +207,10 @@ void SNMP_SetObjDescr(void)
     strcat(sSettings.sSnmp.sysDesc.description, " ");
     strcat(sSettings.sSnmp.sysDesc.description, UPS.model);
     strcat(sSettings.sSnmp.sysDesc.description, " ");
-    strcat(sSettings.sSnmp.sysDesc.description, UPS.serial);
-
+    memset(str, 0, sizeof(str));
+    GetUPSSerialStr(str, &len);
+    strcat(sSettings.sSnmp.sysDesc.description, str);
+#endif
     sSettings.sSnmp.sysDesc.len = strlen(sSettings.sSnmp.sysDesc.description);
     snmp_mib2_set_sysdescr((u8_t *)sSettings.sSnmp.sysDesc.description, &sSettings.sSnmp.sysDesc.len);
 }