[SNMP4J] report bug for snmp4j
Frank Fock
fock at agentpp.com
Tue Aug 22 18:53:53 CEST 2017
Hi Vincent
I will fix it, but I think the error must be in the input stream, because the API clearly states, that if the length is 0, then 0 bytes are returned (and not -1 what you observed). Of course, the agent might also be the problem by encoding a wrong length.
Best regards
Frank
> Am 22.08.2017 um 10:47 schrieb Vincent Zhang <vinct.zh at gmail.com>:
>
> Hi Dear,
> I am not sure this is the correct mail address to report bug, please
> I found a bug for snmp4j. This is introduced in the latest snmp4j 2.5.7 release.
>
> Behaviour:
> When server returns an empty string for an oid, the 2.5.7 snmp4j will fail with fail with exception while the older jars can work.
>
> Cause
> In the latest release, you have improved the performance for BRE. See the line 799, the length will be 0 if the stream is already empty. In this case, consume stream line 803 will always get -1, as a result it will fail to pass the validation in line 804 and an exception will be thrown.
>
> <image.png>
>
> Suggested Fix
> When the stream is already empty, we need not consume the stream anymore, instead we can return the empty byte array as the previous snmp4j release did.
>
> Why I am concerning this
> I am not sure if the snmp protocol allows server return an empty string for an oid, but we do have related case in our product. My customers may have snmp server returning empty string, so currently I am using the 2.5.6 snmp4j as workaround. But it will be fantacy if the latest snmp4j release can support empty string as response.
>
>
> Cheers.
>
> Vincent
More information about the SNMP4J
mailing list