Index: netsnmp/client_intf.c =================================================================== RCS file: /cvsroot/net-snmp/net-snmp/python/netsnmp/client_intf.c,v retrieving revision 1.9 diff -u -p -r1.9 client_intf.c --- netsnmp/client_intf.c 29 Sep 2006 20:28:12 -0000 1.9 +++ netsnmp/client_intf.c 27 Oct 2006 14:31:25 -0000 @@ -1934,13 +1934,23 @@ netsnmp_walk(PyObject *self, PyObject *a if (!response || !response->variables || (response->variables->name_length < oid_arr_len) || (memcmp(oid_arr, response->variables->name, - oid_arr_len * sizeof(oid)))) { + oid_arr_len * sizeof(oid))) || + status != STAT_SUCCESS || + response->errstat != SNMP_ERR_NOERROR) { notdone = 0; } else { for(vars = (response ? response->variables : NULL), varlist_ind = 0; vars && (varlist_ind <= varlist_len); vars = vars->next_variable, varlist_ind++) { + if ((vars->type == SNMP_ENDOFMIBVIEW) || + (vars->type == SNMP_NOSUCHOBJECT) || + (vars->type == SNMP_NOSUCHINSTANCE)) { + fprintf(stderr, "here\n"); + notdone = 0; + break; + } + varbind = py_netsnmp_construct_varbind(); if (PyObject_HasAttrString(varbind, "tag")) {