int set_removeContext(netsnmp_mib_handler *handler, netsnmp_handler_registration *reginfo, netsnmp_agent_request_info *reqinfo, netsnmp_request_info *requests) { DEBUGMSGTL(("demo_module_7", "remove_filesize CALLED\n")); switch (reqinfo->mode) { case MODE_SET_RESERVE1: break; case MODE_SET_RESERVE2: break; case MODE_SET_ACTION: DEBUGMSGTL(("demo_module_7", "remove_filesize MODE_SET_ACTION CALLED\n")); DEBUGMSGTL(("demo_module_7", "remove_filesize MODE_SET_ACTION CALLED\n")); snprintf(filename, requests->requestvb->val_len + 1, "%s", (u_char *) requests->requestvb->val.string); filename[requests->requestvb->val_len + 1] = '\0'; DEBUGMSGTL(("demo_module_7", "filename after snmpset = %s:\n", filename)); unregister_mib_context(me1filesize_oid, OID_LENGTH(me1filesize_oid), PRIORITY, SUB_ID, RANGE_UBOUND, filename); break; case MODE_SET_COMMIT: break; case MODE_SET_FREE: break; case MODE_SET_UNDO: /* Not handling the undo case because we don't care about multi-phase sets for this example. */ break; default: /* we should never get here, so this is a really bad error */ DEBUGMSGTL(("demo_module_7", "set_removeContext CALLED\n")); } return (SNMP_ERR_NOERROR); }
void proxy_free_config(void) { struct simple_proxy *rm; DEBUGMSGTL(("proxy_free_config", "Free config\n")); while (proxies) { rm = proxies; proxies = rm->next; DEBUGMSGTL(( "proxy_free_config", "freeing ")); DEBUGMSGOID(("proxy_free_config", rm->name, rm->name_len)); DEBUGMSG(( "proxy_free_config", " (%s)\n", rm->context)); unregister_mib_context(rm->name, rm->name_len, DEFAULT_MIB_PRIORITY, 0, 0, rm->context); SNMP_FREE(rm->variables); SNMP_FREE(rm->context); snmp_close(rm->sess); SNMP_FREE(rm); } }
int unregister_agentx_list(netsnmp_session * session, netsnmp_pdu *pdu) { netsnmp_session *sp; int rc = 0; sp = find_agentx_session(session, pdu->sessid); if (sp == NULL) { return AGENTX_ERR_NOT_OPEN; } if (pdu->range_subid != 0) { oid ubound = pdu->variables->val.objid[pdu->range_subid - 1]; rc = netsnmp_unregister_mib_table_row(pdu->variables->name, pdu->variables->name_length, pdu->priority, pdu->range_subid, ubound, (char *) pdu->community); } else { rc = unregister_mib_context(pdu->variables->name, pdu->variables->name_length, pdu->priority, 0, 0, (char *) pdu->community); } switch (rc) { case MIB_UNREGISTERED_OK: return AGENTX_ERR_NOERROR; case MIB_NO_SUCH_REGISTRATION: return AGENTX_ERR_UNKNOWN_REGISTRATION; case MIB_UNREGISTRATION_FAILED: default: return AGENTX_ERR_REQUEST_DENIED; } }