Hi.
I have a question about notification (trap) type since I am getting
"Wrong Type (should be INTEGER)".
For example, let's say this is in my MIB:
Object definition:
myTrigger OBJECT-TYPE
SYNTAX INTEGER { down1(10), up1(11), down2(20), up2(21) }
MAX-ACCESS read-write
STATUS current
DESCRIPTION "Some desc."
::= { mySystem 39 }
Trap definition:
myTrap NOTIFICATION-TYPE
OBJECTS { myTrigger }
STATUS current
DESCRIPTION "Some desc."
::= { myTraps 9 }
What I want is to do snmpset of myTrigger as integer, but get a trap as a
string. Inside my agent's myTrigger handler, I take the integer and create
a string, like "Trap triggered by %d.":
snmptrapd[13583]: 2019-12-02 13:39:29 <UNKNOWN> [UDP:
[192.168.0.1]:34138->[192.168.0.2]:162]:#012DISMAN-EVENT-MIB::sysUpTimeInstance
= Timeticks: (884381) 2:27:23.81#011SNMPv2-MIB::snmpTrapOID.0 = OID:
MY-MIB::myTrap#011MY-MIB::myTrigger.0 = Wrong Type (should be INTEGER):
STRING: "Trap triggered by 10."
Is that because myTrap output is string not integer and thus of different
type as myTrigger?
Here is myTrigger handler from the agent:
int myTrigger(netsnmp_mib_handler *handler,
netsnmp_handler_registration *reginfo,
netsnmp_agent_request_info *reqinfo,
netsnmp_request_info *requests)
{
int ival = *(requests->requestvb->val.integer); // integer from snmpset
char msg[64] = {0}; // resulting string
switch (reqinfo->mode) {
case MODE_SET_ACTION:
switch (ival)
{
case 10: strncpy(msg, " Trap triggered by 10", 64 - 1);
break;
case 11: strncpy(msg, " Trap triggered by 11", 64 - 1);
break;
case 20: strncpy(msg, " Trap triggered by 20", 64 - 1);
break;
case 21: strncpy(msg, " Trap triggered by 21", 64 - 1);
break;
default: strncpy(msg, "Unknown port state.", 64 - 1); break;
}
sendTrap_myTrap(msg); // this function will wend the trap
break;
default:
break;
}
return SNMP_ERR_NOERROR;
}
Thank you very much for your help.
RegK
_______________________________________________
Net-snmp-users mailing list
[email protected]
Please see the following page to unsubscribe or change other options:
https://lists.sourceforge.net/lists/listinfo/net-snmp-users