I have no useful debugging, but we have occasionally seen this, including under 5.7.1. Our internal bug title is nearly the same: "AgentX subagent dies with SIGSEGV in handle_subagent_set_response" and the incomplete analysis is exactly the same: > -------------------- Comment 7 -------------------- > By: <<>>@aristanetworks.com 2011-12-19 17:14:34 > > I...
2012-05-21 07:18:55 PDT in net-snmp
When I change my exactEngineID configuration (and change all my users to use the new engineID), I end up with the same engineID but the new users, so of course none of the users work. The root cause of this is probably that the engineID keywords are registered with register_prenetsnmp_mib_handler(), which doesn't get re-read at config reload time.
2012-03-24 06:19:53 PDT in net-snmp
The kernel, not net-snmp, is in charge of calculating UDP checksums. If your NIC supports checksum offload, the kernel doesn't bother calculating it, so tcpdump/wireshark will claim that the checksum is bad. Even if your NIC doesn't support checksum offload, it's still not net-snmp's job to calculate the UDP checksum, so this would be a kernel problem to report to your vendor. The thing to do...
2011-12-11 06:29:39 PST in net-snmp
Not that anyone should be using this type that was obsoleted in 1996, but we had a customer accidentally use it, which exposed all sorts of error handling problems in AgentX. I spent a fair bit of time trying to chase the error handling, wandered through several weird problems (about which I've filed bugs) but ended up sufficiently lost that it turned out the easiest fix was just to support...
2011-12-10 18:58:20 PST in net-snmp
BTW, there's a patch titled "Respond with an AgentX error when we can't handle the rquest" at https://sourceforge.net/tracker/?func=detail&aid=3445440&group_id=12694&atid=312694 which introduces send_agentx_error(), which could be used to send the appropriate reply - but as with other parse failures, I can't figure out the error return path to be able to insert a call to...
2011-12-10 07:13:58 PST in net-snmp
If an agentx subagent gets a varbind with a type that it can't handle, it returns a parse failure: 2011-12-10 06:37:52 trace: agentx_parse_oid(): mibgroup/agentx/protocol.c, 1219: 2011-12-10 06:37:52 dumpv_recv: OID: Q-BRIDGE-MIB::dot1qPvid.1 2011-12-10 06:37:52 trace: _sess_process_packet(): snmp_api.c, 5225: 2011-12-10 06:37:52 sess_process_packet: received message id#0 reqid#8...
2011-12-10 07:07:51 PST in net-snmp
The failure that I experienced was obscure, but may not be the only way to experience it. While trying to muddle through being able to gracefully handle [the obsolete type] UInteger32 varbinds in set requests to AgentX subagents, I got into a state where agentx_build_varbind would return failure: trace: agentx_realloc_build_varbind(): mibgroup/agentx/protocol.c, 570: agentx_build_varbind...
2011-12-10 07:02:47 PST in net-snmp
It's easiest to describe this in terms of the obsolete UINTEGER32 type, because that is what I experienced, but I believe this problem occurs with any type that net-snmp doesn't understand (e.g., a future type, or just a badly encoded type). In a SET request, the master agent will simply skip objects that it can't parse. E.g., if you send a SET request for {dot1qPvid.1 UInteger 42}...
2011-12-10 06:57:55 PST in net-snmp
I accidentally found a smidge of code that pass_persist needed pass for, so Magnus was kind enough to move that code to pass_common.c. In further experimentation, there is a much bigger swath of code that is common: formatting objects for SET and parsing objects for GET, so I moved that too. There is no functional difference here, just moving code around. ("diff" says that the code...
2011-12-07 12:15:22 PST in net-snmp
I uploaded another patch that uses the test framework to test pass and pass_persist, including killing the pass_persist script. On Linux, without the patch I submitted here, the snmpget after killing pass_persist times out. (You will also need the pass_persisttest script fixes from my earlierpatch #3439294)
2011-12-07 08:39:50 PST in net-snmp