-
Notifications
You must be signed in to change notification settings - Fork 636
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bit more robustness for legacy systems #31
Conversation
This should appear as a v1 option rather referencing protocol details.
Do you have example output from snmpwalk for where this happens? That sounds like quite a broken device. |
Here is the output of the snmpwalk. The device itself doesn't support getbulk
snmpget vs snmpbulkget
|
I don't see where it's returning the same OID twice. |
With snmpwalk it's working fine. But with python-netsnmp it seems to be different.
Then i see this output:
Endless loop. |
Can you reproduce that with snmpgetnext? |
I'm going to presume this is dodgy hardware. |
Some devices (e.g. Emerson PSU) do not seem to support getbulk. We have introduced a configuration option "bulkget", which allows to switch to simple getnext.
This is also introducing more robust termination criteria for the walk. If the same oid reappears, the walk is terminated. This might also fix the hanging request as described in #8.
Also if the iid is None or empty, which would lead to an invalid oid (terminated by .), the walk is terminated.
/cc @totallyunknown