|
|
@@ -8,62 +8,42 @@
|
|
|
#include <net-snmp/agent/net-snmp-agent-includes.h>
|
|
|
#include "pduMIB_trap.h"
|
|
|
|
|
|
-extern const oid snmptrap_oid[];
|
|
|
-extern const size_t snmptrap_oid_len;
|
|
|
+const oid snmptrap_oid[] = {1,3,6,1,6,3,1,1,4,1,0};
|
|
|
+const size_t snmptrap_oid_len = OID_LENGTH(snmptrap_oid);
|
|
|
|
|
|
-int
|
|
|
-send_pduAlarmAdded_trap( void )
|
|
|
+void
|
|
|
+send_pduPowerAlarm_trap(unsigned int TrapNum,void *Data)
|
|
|
{
|
|
|
+ AlarmTrapinfo GlobalAlarmTrapinfo = *(AlarmTrapinfo*)Data;
|
|
|
netsnmp_variable_list *var_list = NULL;
|
|
|
- const oid pduAlarmAdded_oid[] = { 1,3,6,1,4,1,2024,2,1 };
|
|
|
- const oid pduAlarmType_oid[] = { 1,3,6,1,4,1,2024,1,6,1,1,2, /* insert index here */ };
|
|
|
- const oid pduAlarmContext_oid[] = { 1,3,6,1,4,1,2024,1,6,1,1,3, /* insert index here */ };
|
|
|
- const oid pduAlarmAction_oid[] = { 1,3,6,1,4,1,2024,1,6,1,1,4, /* insert index here */ };
|
|
|
- const oid pduAlarmActionPara_oid[] = { 1,3,6,1,4,1,2024,1,6,1,1,5, /* insert index here */ };
|
|
|
- const oid pduAlarmDate_oid[] = { 1,3,6,1,4,1,2024,1,6,1,1,6, /* insert index here */ };
|
|
|
- const oid pduAlarmTime_oid[] = { 1,3,6,1,4,1,2024,1,6,1,1,7, /* insert index here */ };
|
|
|
+ const oid pduPowerAlarmTraps_oid[] = { 1,3,6,1,4,1,2024,2,1 };
|
|
|
+ const oid pduAlarmID_oid[] = { 1,3,6,1,4,1,2024,1,6,1,1,2,GlobalAlarmTrapinfo.ID };
|
|
|
+ const oid pduAlarmContext_oid[] = { 1,3,6,1,4,1,2024,1,6,1,1,3, GlobalAlarmTrapinfo.ID};
|
|
|
+ const oid pduAlarmDate_oid[] = { 1,3,6,1,4,1,2024,1,6,1,1,6, GlobalAlarmTrapinfo.ID };
|
|
|
|
|
|
/*
|
|
|
* Set the snmpTrapOid.0 value
|
|
|
*/
|
|
|
snmp_varlist_add_variable(&var_list,
|
|
|
- snmptrap_oid, snmptrap_oid_len,
|
|
|
+ snmptrap_oid,OID_LENGTH(snmptrap_oid) ,
|
|
|
ASN_OBJECT_ID,
|
|
|
- pduAlarmAdded_oid, sizeof(pduAlarmAdded_oid));
|
|
|
+ pduPowerAlarmTraps_oid, sizeof(pduPowerAlarmTraps_oid));
|
|
|
|
|
|
/*
|
|
|
* Add any objects from the trap definition
|
|
|
*/
|
|
|
snmp_varlist_add_variable(&var_list,
|
|
|
- pduAlarmType_oid, OID_LENGTH(pduAlarmType_oid),
|
|
|
+ pduAlarmID_oid, OID_LENGTH(pduAlarmID_oid),
|
|
|
ASN_INTEGER,
|
|
|
- /* Set an appropriate value for pduAlarmType */
|
|
|
- NULL, 0);
|
|
|
+ &GlobalAlarmTrapinfo.Alarmid, sizeof(GlobalAlarmTrapinfo.Alarmid));
|
|
|
snmp_varlist_add_variable(&var_list,
|
|
|
pduAlarmContext_oid, OID_LENGTH(pduAlarmContext_oid),
|
|
|
ASN_OCTET_STR,
|
|
|
- /* Set an appropriate value for pduAlarmContext */
|
|
|
- NULL, 0);
|
|
|
- snmp_varlist_add_variable(&var_list,
|
|
|
- pduAlarmAction_oid, OID_LENGTH(pduAlarmAction_oid),
|
|
|
- ASN_INTEGER,
|
|
|
- /* Set an appropriate value for pduAlarmAction */
|
|
|
- NULL, 0);
|
|
|
- snmp_varlist_add_variable(&var_list,
|
|
|
- pduAlarmActionPara_oid, OID_LENGTH(pduAlarmActionPara_oid),
|
|
|
- ASN_INTEGER,
|
|
|
- /* Set an appropriate value for pduAlarmActionPara */
|
|
|
- NULL, 0);
|
|
|
+ GlobalAlarmTrapinfo.AlarmContext, strlen(GlobalAlarmTrapinfo.AlarmContext));
|
|
|
snmp_varlist_add_variable(&var_list,
|
|
|
pduAlarmDate_oid, OID_LENGTH(pduAlarmDate_oid),
|
|
|
ASN_OCTET_STR,
|
|
|
- /* Set an appropriate value for pduAlarmDate */
|
|
|
- NULL, 0);
|
|
|
- snmp_varlist_add_variable(&var_list,
|
|
|
- pduAlarmTime_oid, OID_LENGTH(pduAlarmTime_oid),
|
|
|
- ASN_OCTET_STR,
|
|
|
- /* Set an appropriate value for pduAlarmTime */
|
|
|
- NULL, 0);
|
|
|
+ GlobalAlarmTrapinfo.AlarmDate, strlen(GlobalAlarmTrapinfo.AlarmDate));
|
|
|
|
|
|
/*
|
|
|
* Add any extra (optional) objects here
|
|
|
@@ -76,31 +56,41 @@ send_pduAlarmAdded_trap( void )
|
|
|
send_v2trap( var_list );
|
|
|
snmp_free_varbind( var_list );
|
|
|
|
|
|
- return SNMP_ERR_NOERROR;
|
|
|
+ // return SNMP_ERR_NOERROR;
|
|
|
}
|
|
|
-int
|
|
|
-send_pduAlarmRemoved_trap( void )
|
|
|
+void
|
|
|
+send_pduSensorAlarm_trap( unsigned int TrapNum,void *Data)
|
|
|
{
|
|
|
+ AlarmTrapinfo GlobalAlarmTrapinfo = *(AlarmTrapinfo*)Data;
|
|
|
netsnmp_variable_list *var_list = NULL;
|
|
|
- const oid pduAlarmRemoved_oid[] = { 1,3,6,1,4,1,2024,2,2 };
|
|
|
- const oid pduAlarmContext_oid[] = { 1,3,6,1,4,1,2024,1,6,1,1,3, /* insert index here */ };
|
|
|
+ const oid pduSensorAlarmTraps_oid[] = { 1,3,6,1,4,1,2024,2,2 };
|
|
|
+ const oid pduAlarmID_oid[] = { 1,3,6,1,4,1,2024,1,6,1,1,2, GlobalAlarmTrapinfo.ID };
|
|
|
+ const oid pduAlarmContext_oid[] = { 1,3,6,1,4,1,2024,1,6,1,1,3, GlobalAlarmTrapinfo.ID};
|
|
|
+ const oid pduAlarmDate_oid[] = { 1,3,6,1,4,1,2024,1,6,1,1,6,GlobalAlarmTrapinfo.ID };
|
|
|
|
|
|
/*
|
|
|
* Set the snmpTrapOid.0 value
|
|
|
*/
|
|
|
snmp_varlist_add_variable(&var_list,
|
|
|
- snmptrap_oid, snmptrap_oid_len,
|
|
|
+ snmptrap_oid, OID_LENGTH(snmptrap_oid),
|
|
|
ASN_OBJECT_ID,
|
|
|
- pduAlarmRemoved_oid, sizeof(pduAlarmRemoved_oid));
|
|
|
+ pduSensorAlarmTraps_oid, sizeof(pduSensorAlarmTraps_oid));
|
|
|
|
|
|
/*
|
|
|
* Add any objects from the trap definition
|
|
|
*/
|
|
|
+ snmp_varlist_add_variable(&var_list,
|
|
|
+ pduAlarmID_oid, OID_LENGTH(pduAlarmID_oid),
|
|
|
+ ASN_INTEGER,
|
|
|
+ &GlobalAlarmTrapinfo.Alarmid, sizeof(GlobalAlarmTrapinfo.Alarmid));
|
|
|
snmp_varlist_add_variable(&var_list,
|
|
|
pduAlarmContext_oid, OID_LENGTH(pduAlarmContext_oid),
|
|
|
ASN_OCTET_STR,
|
|
|
- /* Set an appropriate value for pduAlarmContext */
|
|
|
- NULL, 0);
|
|
|
+ GlobalAlarmTrapinfo.AlarmContext, strlen(GlobalAlarmTrapinfo.AlarmContext));
|
|
|
+ snmp_varlist_add_variable(&var_list,
|
|
|
+ pduAlarmDate_oid, OID_LENGTH(pduAlarmDate_oid),
|
|
|
+ ASN_OCTET_STR,
|
|
|
+ GlobalAlarmTrapinfo.AlarmDate, strlen( GlobalAlarmTrapinfo.AlarmDate));
|
|
|
|
|
|
/*
|
|
|
* Add any extra (optional) objects here
|
|
|
@@ -113,5 +103,5 @@ send_pduAlarmRemoved_trap( void )
|
|
|
send_v2trap( var_list );
|
|
|
snmp_free_varbind( var_list );
|
|
|
|
|
|
- return SNMP_ERR_NOERROR;
|
|
|
-}
|
|
|
+ // return SNMP_ERR_NOERROR;
|
|
|
+}
|