I'm getting the following error while doing SNMP get with SNMPv3: "Response PDU Too Big".
For SNMPv2, I don't get that error, but the data I get is incomplete, which leads me to the conclusion that it's the same issue for both SNMPv3 and SNMPv2, but with different behavior. SNMPv2 doesn't see it as a problem, but it's still there: incomplete data because the response was too big.
Right after the error, there is a message "Continuing get...", as shown below.
Get for param() had error : snmp->get() failed: SNMP: Response PDU Too Big, duration: 2407 ms
Continuing get for param()
The parameter in question is a standalone parameter, the only parameter in the group, so it's not using MultipleGet.
When using SNMPv2, I can see the incomplete data I receive, which has 10239 characters before it's abruptly cut. As I understand it, it's less than the amount of data that should cause this issue, which would be 65535 bytes. That doesn't mean that the total amount of data that should be received will be able to fit in that amount of bytes, because I don't know how large a response can get.
What does this mean, and is there a way to resolve this? Is it possible to buffer these chunks of data I get until I have a complete response?
SLSNMPManager needs to parse the received bytes to appropriate types, for which it uses a buffer of 10240 bytes. With the current implementation, it can read up to 10239 bytes for a single OID value of the type octets, bits, or opaque (these may be called differently in the protocol xml's SNMP type element).
Response in question had more data than buffer allowed.