|
@@ -6,6 +6,7 @@
|
|
#include "lwip/snmp_asn1.h"
|
|
#include "lwip/snmp_asn1.h"
|
|
#include "lwip/snmp_structs.h"
|
|
#include "lwip/snmp_structs.h"
|
|
|
|
|
|
|
|
+#include "settings_api.h"
|
|
#include "parameters.h"
|
|
#include "parameters.h"
|
|
#include "web_params_api.h"
|
|
#include "web_params_api.h"
|
|
#include "snmp_api.h"
|
|
#include "snmp_api.h"
|
|
@@ -20,6 +21,12 @@
|
|
#ifdef PRINTF_CUSTOM
|
|
#ifdef PRINTF_CUSTOM
|
|
#include "tinystdio.h"
|
|
#include "tinystdio.h"
|
|
#endif
|
|
#endif
|
|
|
|
+#include <stdlib.h>
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * @brief Общая структура настроек
|
|
|
|
+ */
|
|
|
|
+extern SETTINGS_t sSettings;
|
|
|
|
|
|
extern void ocstrncpy(u8_t *dst, u8_t *src, u16_t n);
|
|
extern void ocstrncpy(u8_t *dst, u8_t *src, u16_t n);
|
|
|
|
|
|
@@ -67,9 +74,9 @@ const mib_scalar_node signals_var =
|
|
|
|
|
|
// узел SIGNALS -----------------------------------------------------
|
|
// узел SIGNALS -----------------------------------------------------
|
|
|
|
|
|
-const s32_t signals_ids[27] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 };
|
|
|
|
|
|
+const s32_t signals_ids[18] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18 };
|
|
|
|
|
|
-struct mib_node* const signals_nodes[13] =
|
|
|
|
|
|
+struct mib_node* const signals_nodes[18] =
|
|
{
|
|
{
|
|
(struct mib_node* const)&signals_var,
|
|
(struct mib_node* const)&signals_var,
|
|
(struct mib_node* const)&signals_var,
|
|
(struct mib_node* const)&signals_var,
|
|
@@ -83,7 +90,12 @@ struct mib_node* const signals_nodes[13] =
|
|
(struct mib_node* const)&signals_var,
|
|
(struct mib_node* const)&signals_var,
|
|
(struct mib_node* const)&signals_var,
|
|
(struct mib_node* const)&signals_var,
|
|
(struct mib_node* const)&signals_var,
|
|
(struct mib_node* const)&signals_var,
|
|
- (struct mib_node* const)&signals_var
|
|
|
|
|
|
+ (struct mib_node* const)&signals_var,
|
|
|
|
+ (struct mib_node* const)&signals_var,
|
|
|
|
+ (struct mib_node* const)&signals_var,
|
|
|
|
+ (struct mib_node* const)&signals_var,
|
|
|
|
+ (struct mib_node* const)&signals_var,
|
|
|
|
+ (struct mib_node* const)&signals_var,
|
|
};
|
|
};
|
|
|
|
|
|
const struct mib_array_node signals =
|
|
const struct mib_array_node signals =
|
|
@@ -93,7 +105,7 @@ const struct mib_array_node signals =
|
|
&noleafs_set_test,
|
|
&noleafs_set_test,
|
|
&noleafs_set_value,
|
|
&noleafs_set_value,
|
|
MIB_NODE_AR,
|
|
MIB_NODE_AR,
|
|
- 13,
|
|
|
|
|
|
+ 18,
|
|
signals_ids,
|
|
signals_ids,
|
|
signals_nodes
|
|
signals_nodes
|
|
};
|
|
};
|
|
@@ -122,7 +134,7 @@ const struct mib_array_node bt6701 =
|
|
|
|
|
|
// узел swt ------------------------------------------------------------
|
|
// узел swt ------------------------------------------------------------
|
|
const s32_t swt_ids[1] = {
|
|
const s32_t swt_ids[1] = {
|
|
-1
|
|
|
|
|
|
+3
|
|
};
|
|
};
|
|
|
|
|
|
struct mib_node* const swt_nodes[1] =
|
|
struct mib_node* const swt_nodes[1] =
|
|
@@ -244,89 +256,124 @@ static void signals_get_object_def (u8_t ident_len, s32_t *ident, struct obj_def
|
|
od->v_len = paramLength;
|
|
od->v_len = paramLength;
|
|
break;
|
|
break;
|
|
case 2: /* RestoreSignal */
|
|
case 2: /* RestoreSignal */
|
|
- GetRestore(paramStr, ¶mLength);
|
|
|
|
|
|
+
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
- od->access = MIB_OBJECT_READ_WRITE;
|
|
|
|
|
|
+ od->access = MIB_OBJECT_WRITE_ONLY;
|
|
od->asn_type = SNMP_ASN1_INTEG;
|
|
od->asn_type = SNMP_ASN1_INTEG;
|
|
od->v_len = sizeof(s32_t);
|
|
od->v_len = sizeof(s32_t);
|
|
break;
|
|
break;
|
|
case 3: /* RebootSignal */
|
|
case 3: /* RebootSignal */
|
|
- GetReboot(paramStr, ¶mLength);
|
|
|
|
|
|
+
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
- od->access = MIB_OBJECT_READ_WRITE;
|
|
|
|
|
|
+ od->access = MIB_OBJECT_WRITE_ONLY;
|
|
od->asn_type = SNMP_ASN1_INTEG;
|
|
od->asn_type = SNMP_ASN1_INTEG;
|
|
od->v_len = sizeof(s32_t);
|
|
od->v_len = sizeof(s32_t);
|
|
break;
|
|
break;
|
|
- case 4: /* IntTemp */
|
|
|
|
- GetInternalTempStr(paramStr, ¶mLength);
|
|
|
|
- od->instance = MIB_OBJECT_SCALAR;
|
|
|
|
- od->access = MIB_OBJECT_READ_ONLY;
|
|
|
|
- od->asn_type = SNMP_ASN1_OC_STR;
|
|
|
|
- od->v_len = paramLength;
|
|
|
|
- break;
|
|
|
|
- case 5: /* LineFailBit */
|
|
|
|
- GetLineFailBitStr(paramStr, ¶mLength);
|
|
|
|
|
|
+ case 4: /* UPSModel*/
|
|
|
|
+ GetUPSModelStr(paramStr, ¶mLength);
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
od->access = MIB_OBJECT_READ_ONLY;
|
|
od->access = MIB_OBJECT_READ_ONLY;
|
|
od->asn_type = SNMP_ASN1_OC_STR;
|
|
od->asn_type = SNMP_ASN1_OC_STR;
|
|
od->v_len = paramLength;
|
|
od->v_len = paramLength;
|
|
break;
|
|
break;
|
|
- case 6: /* LowBatBit */
|
|
|
|
- GetLowBatteryBitStr(paramStr, ¶mLength);
|
|
|
|
|
|
+ case 5: /* DO1*/
|
|
|
|
+ GetDOUTStatusStr(paramStr, ¶mLength, 0);
|
|
|
|
+ od->instance = MIB_OBJECT_SCALAR;
|
|
|
|
+ od->access = MIB_OBJECT_READ_WRITE;
|
|
|
|
+ od->asn_type = SNMP_ASN1_OC_STR;
|
|
|
|
+ od->v_len = paramLength;
|
|
|
|
+ break;
|
|
|
|
+ case 6: /* DO2*/
|
|
|
|
+ GetDOUTStatusStr(paramStr, ¶mLength, 1);
|
|
|
|
+ od->instance = MIB_OBJECT_SCALAR;
|
|
|
|
+ od->access = MIB_OBJECT_READ_WRITE;
|
|
|
|
+ od->asn_type = SNMP_ASN1_OC_STR;
|
|
|
|
+ od->v_len = paramLength;
|
|
|
|
+ break;
|
|
|
|
+ case 7: /* BatTest*/
|
|
|
|
+
|
|
|
|
+ od->instance = MIB_OBJECT_SCALAR;
|
|
|
|
+ od->access = MIB_OBJECT_WRITE_ONLY;
|
|
|
|
+ od->asn_type = SNMP_ASN1_INTEG;
|
|
|
|
+ od->v_len = sizeof(s32_t);
|
|
|
|
+ break;
|
|
|
|
+ case 8: /* Shutdown UPS*/
|
|
|
|
+
|
|
|
|
+ od->instance = MIB_OBJECT_SCALAR;
|
|
|
|
+ od->access = MIB_OBJECT_WRITE_ONLY;
|
|
|
|
+ od->asn_type = SNMP_ASN1_OC_STR;
|
|
|
|
+ od->v_len = paramLength;
|
|
|
|
+ break;
|
|
|
|
+ case 9: /* DIO*/
|
|
|
|
+ GetDINStatusStr(paramStr, ¶mLength, 0);
|
|
|
|
+ od->instance = MIB_OBJECT_SCALAR;
|
|
|
|
+ od->access = MIB_OBJECT_READ_ONLY;
|
|
|
|
+ od->asn_type = SNMP_ASN1_OC_STR;
|
|
|
|
+ od->v_len = paramLength;
|
|
|
|
+ break;
|
|
|
|
+ case 10: /* IntTemp */
|
|
|
|
+ GetInternalTempStr(paramStr, ¶mLength);
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
od->access = MIB_OBJECT_READ_ONLY;
|
|
od->access = MIB_OBJECT_READ_ONLY;
|
|
od->asn_type = SNMP_ASN1_OC_STR;
|
|
od->asn_type = SNMP_ASN1_OC_STR;
|
|
od->v_len = paramLength;
|
|
od->v_len = paramLength;
|
|
break;
|
|
break;
|
|
- case 7: /* InFreq */
|
|
|
|
|
|
+ case 11: /* InFreq */
|
|
GetInputFreqStr(paramStr, ¶mLength);
|
|
GetInputFreqStr(paramStr, ¶mLength);
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
od->access = MIB_OBJECT_READ_ONLY;
|
|
od->access = MIB_OBJECT_READ_ONLY;
|
|
od->asn_type = SNMP_ASN1_OC_STR;
|
|
od->asn_type = SNMP_ASN1_OC_STR;
|
|
od->v_len = paramLength;
|
|
od->v_len = paramLength;
|
|
break;
|
|
break;
|
|
- case 8: /* OutFreq */
|
|
|
|
- GetOutputFreqStr(paramStr, ¶mLength);
|
|
|
|
- od->instance = MIB_OBJECT_SCALAR;
|
|
|
|
- od->access = MIB_OBJECT_READ_ONLY;
|
|
|
|
- od->asn_type = SNMP_ASN1_OC_STR;
|
|
|
|
- od->v_len = paramLength;
|
|
|
|
- break;
|
|
|
|
- case 9: /* InVoltVAC */
|
|
|
|
|
|
+ case 12: /* InVoltVAC */
|
|
GetInputVoltageStr(paramStr, ¶mLength);
|
|
GetInputVoltageStr(paramStr, ¶mLength);
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
od->access = MIB_OBJECT_READ_ONLY;
|
|
od->access = MIB_OBJECT_READ_ONLY;
|
|
od->asn_type = SNMP_ASN1_OC_STR;
|
|
od->asn_type = SNMP_ASN1_OC_STR;
|
|
od->v_len = paramLength;
|
|
od->v_len = paramLength;
|
|
break;
|
|
break;
|
|
- case 10: /* OutVoltVAC */
|
|
|
|
|
|
+ case 13: /* OutVoltVAC */
|
|
GetOutputVoltageStr(paramStr, ¶mLength);
|
|
GetOutputVoltageStr(paramStr, ¶mLength);
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
od->access = MIB_OBJECT_READ_ONLY;
|
|
od->access = MIB_OBJECT_READ_ONLY;
|
|
od->asn_type = SNMP_ASN1_OC_STR;
|
|
od->asn_type = SNMP_ASN1_OC_STR;
|
|
od->v_len = paramLength;
|
|
od->v_len = paramLength;
|
|
break;
|
|
break;
|
|
- case 11: /* Power */
|
|
|
|
|
|
+ case 14: /* Power */
|
|
GetPowerStr(paramStr, ¶mLength);
|
|
GetPowerStr(paramStr, ¶mLength);
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
od->access = MIB_OBJECT_READ_ONLY;
|
|
od->access = MIB_OBJECT_READ_ONLY;
|
|
od->asn_type = SNMP_ASN1_OC_STR;
|
|
od->asn_type = SNMP_ASN1_OC_STR;
|
|
od->v_len = paramLength;
|
|
od->v_len = paramLength;
|
|
break;
|
|
break;
|
|
- case 12: /* BatCap */
|
|
|
|
|
|
+ case 15: /* BatCap */
|
|
GetBatCapacityStr(paramStr, ¶mLength);
|
|
GetBatCapacityStr(paramStr, ¶mLength);
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
od->access = MIB_OBJECT_READ_ONLY;
|
|
od->access = MIB_OBJECT_READ_ONLY;
|
|
od->asn_type = SNMP_ASN1_OC_STR;
|
|
od->asn_type = SNMP_ASN1_OC_STR;
|
|
od->v_len = paramLength;
|
|
od->v_len = paramLength;
|
|
|
|
+ break;
|
|
|
|
+ case 16: /* BatTime */
|
|
|
|
+ GetRuntimeStr(paramStr, ¶mLength);
|
|
|
|
+ od->instance = MIB_OBJECT_SCALAR;
|
|
|
|
+ od->access = MIB_OBJECT_READ_ONLY;
|
|
|
|
+ od->asn_type = SNMP_ASN1_OC_STR;
|
|
|
|
+ od->v_len = paramLength;
|
|
break;
|
|
break;
|
|
- case 13: /* ConnectMonitor */
|
|
|
|
|
|
+ case 17: /* ConnectMonitor */
|
|
GetConnectMonitorStr(paramStr, ¶mLength);
|
|
GetConnectMonitorStr(paramStr, ¶mLength);
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
od->instance = MIB_OBJECT_SCALAR;
|
|
od->access = MIB_OBJECT_READ_ONLY;
|
|
od->access = MIB_OBJECT_READ_ONLY;
|
|
od->asn_type = SNMP_ASN1_OC_STR;
|
|
od->asn_type = SNMP_ASN1_OC_STR;
|
|
od->v_len = paramLength;
|
|
od->v_len = paramLength;
|
|
- break;
|
|
|
|
|
|
+ break;
|
|
|
|
+ case 18: /* Alarms */
|
|
|
|
+ GetAlarmStr(paramStr, ¶mLength);
|
|
|
|
+ od->instance = MIB_OBJECT_SCALAR;
|
|
|
|
+ od->access = MIB_OBJECT_READ_ONLY;
|
|
|
|
+ od->asn_type = SNMP_ASN1_OC_STR;
|
|
|
|
+ od->v_len = paramLength;
|
|
|
|
+ break;
|
|
default:
|
|
default:
|
|
//LWIP_DEBUGF(SNMP_MIB_DEBUG,("planar_get_object_def: no such object\n"));
|
|
//LWIP_DEBUGF(SNMP_MIB_DEBUG,("planar_get_object_def: no such object\n"));
|
|
od->instance = MIB_OBJECT_NONE;
|
|
od->instance = MIB_OBJECT_NONE;
|
|
@@ -365,36 +412,51 @@ static void signals_get_value (struct obj_def *od, u16_t len, void *value)
|
|
case 3: /* RebootSignal */
|
|
case 3: /* RebootSignal */
|
|
*((s32_t*)value) = 0;
|
|
*((s32_t*)value) = 0;
|
|
break;
|
|
break;
|
|
- case 4: /* IntTemp */
|
|
|
|
|
|
+ case 4: /* UPSModel */
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
- break;
|
|
|
|
- case 5: /* LineFailBit */
|
|
|
|
|
|
+ break;
|
|
|
|
+ case 5: /* DO1 */
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
- break;
|
|
|
|
- case 6: /* LowBatBit */
|
|
|
|
|
|
+ break;
|
|
|
|
+ case 6: /* DO2 */
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
- break;
|
|
|
|
- case 7: /* InFreq */
|
|
|
|
|
|
+ break;
|
|
|
|
+ case 7: /* BatTest */
|
|
|
|
+ *((s32_t*)value) = 0;
|
|
|
|
+ break;
|
|
|
|
+ case 8: /* Shutdown UPS */
|
|
|
|
+ *((s32_t*)value) = 0;
|
|
|
|
+ break;
|
|
|
|
+ case 9: /* DIO */
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
- break;
|
|
|
|
- case 8: /* OutFreq */
|
|
|
|
|
|
+ break;
|
|
|
|
+ case 10: /* IntTemp */
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
break;
|
|
break;
|
|
- case 9: /* InVoltVAC */
|
|
|
|
|
|
+ case 11: /* InFreq */
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
break;
|
|
break;
|
|
- case 10: /* OutVoltVAC */
|
|
|
|
|
|
+ case 12: /* InVoltVAC */
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
break;
|
|
break;
|
|
- case 11: /* Power */
|
|
|
|
|
|
+ case 13: /* OutVoltVAC */
|
|
|
|
+ ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
|
|
+ break;
|
|
|
|
+ case 14: /* Power */
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
break;
|
|
break;
|
|
- case 12: /* BatCap */
|
|
|
|
|
|
+ case 15: /* BatCap */
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
break;
|
|
break;
|
|
- case 13: /* ConnectMonitor */
|
|
|
|
|
|
+ case 16: /* BatTime */
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
- break;
|
|
|
|
|
|
+ break;
|
|
|
|
+ case 17: /* ConnectMonitor */
|
|
|
|
+ ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
|
|
+ break;
|
|
|
|
+ case 18: /* Alarms */
|
|
|
|
+ ocstrncpy((u8_t*)value, (u8_t*)paramStr, len);
|
|
|
|
+ break;
|
|
default :
|
|
default :
|
|
break;
|
|
break;
|
|
};
|
|
};
|
|
@@ -412,23 +474,46 @@ static void signals_set_value (struct obj_def *od, u16_t len, void *value)
|
|
{
|
|
{
|
|
u8_t id;
|
|
u8_t id;
|
|
uint32_t val;
|
|
uint32_t val;
|
|
|
|
+ char *val_string;
|
|
|
|
|
|
id = od->id_inst_ptr[0];
|
|
id = od->id_inst_ptr[0];
|
|
-
|
|
|
|
- val = *((s32_t*)value);
|
|
|
|
|
|
|
|
switch (id)
|
|
switch (id)
|
|
{
|
|
{
|
|
case 2: /* RestoreSignal */
|
|
case 2: /* RestoreSignal */
|
|
|
|
+ val = *((s32_t*)value);
|
|
if (val == 1) {
|
|
if (val == 1) {
|
|
SNMP_SendUserTrap(DEVICE_RESTORED);
|
|
SNMP_SendUserTrap(DEVICE_RESTORED);
|
|
HTTP_ResetSettings();
|
|
HTTP_ResetSettings();
|
|
}
|
|
}
|
|
break;
|
|
break;
|
|
case 3: /* RebootSignal */
|
|
case 3: /* RebootSignal */
|
|
|
|
+ val = *((s32_t*)value);
|
|
if (val == 1)
|
|
if (val == 1)
|
|
HTTP_StartResetTask(false);
|
|
HTTP_StartResetTask(false);
|
|
break;
|
|
break;
|
|
|
|
+ case 5: /* DO1 */
|
|
|
|
+ if(sSettings.sInOuts.ro_type_source[0] == SNMP_SET){
|
|
|
|
+ val_string = (char*)value;
|
|
|
|
+ SetROStr(val_string, 0);
|
|
|
|
+ SNMP_SendUserTrap(DO0_TOGGLED);
|
|
|
|
+ }
|
|
|
|
+ break;
|
|
|
|
+ case 6: /* DO2 */
|
|
|
|
+ if(sSettings.sInOuts.ro_type_source[1] == SNMP_SET){
|
|
|
|
+ val_string = (char*)value;
|
|
|
|
+ SetROStr(val_string, 1);
|
|
|
|
+ SNMP_SendUserTrap(DO1_TOGGLED);
|
|
|
|
+ }
|
|
|
|
+ break;
|
|
|
|
+ case 7: /* BatTest */
|
|
|
|
+ val_string = (char*)value;
|
|
|
|
+
|
|
|
|
+ break;
|
|
|
|
+ case 8: /* Shutdown UPS */
|
|
|
|
+ val_string = (char*)value;
|
|
|
|
+
|
|
|
|
+ break;
|
|
default :
|
|
default :
|
|
break;
|
|
break;
|
|
};
|
|
};
|
|
@@ -447,6 +532,7 @@ static void signals_set_value (struct obj_def *od, u16_t len, void *value)
|
|
static u8_t signals_set_test (struct obj_def *od, u16_t len, void *value)
|
|
static u8_t signals_set_test (struct obj_def *od, u16_t len, void *value)
|
|
{
|
|
{
|
|
u8_t id, set_ok;
|
|
u8_t id, set_ok;
|
|
|
|
+ char *val_string;
|
|
|
|
|
|
LWIP_UNUSED_ARG(value);
|
|
LWIP_UNUSED_ARG(value);
|
|
set_ok = 0;
|
|
set_ok = 0;
|
|
@@ -467,6 +553,32 @@ static u8_t signals_set_test (struct obj_def *od, u16_t len, void *value)
|
|
set_ok = 1;
|
|
set_ok = 1;
|
|
}
|
|
}
|
|
break;
|
|
break;
|
|
|
|
+ case 5: /* DO1 */
|
|
|
|
+ if ( len >= 1 )
|
|
|
|
+ {
|
|
|
|
+ val_string = (char*)value;
|
|
|
|
+ if(atoi(val_string) <= 1){
|
|
|
|
+ if(sSettings.sInOuts.ro_type_source[0] == SNMP_SET)
|
|
|
|
+ set_ok = 1;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ break;
|
|
|
|
+ case 6: /* DO2 */
|
|
|
|
+ if ( len >= 1 )
|
|
|
|
+ {
|
|
|
|
+ val_string = (char*)value;
|
|
|
|
+ if(atoi(val_string) <= 1){
|
|
|
|
+ if(sSettings.sInOuts.ro_type_source[1] == SNMP_SET)
|
|
|
|
+ set_ok = 1;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ break;
|
|
|
|
+ case 7: /* BatTest */
|
|
|
|
+
|
|
|
|
+ break;
|
|
|
|
+ case 8: /* Shutdown UPS */
|
|
|
|
+
|
|
|
|
+ break;
|
|
};
|
|
};
|
|
|
|
|
|
return set_ok;
|
|
return set_ok;
|