/************************************************************ * * Convert table index components to an oid. */ int ituAlarmTable_index_to_oid(char* name, unsigned long index, long severity, netsnmp_index *oid_idx) { int err = SNMP_ERR_NOERROR; netsnmp_variable_list var_alarmListName; netsnmp_variable_list var_alarmModelIndex; netsnmp_variable_list var_alarmModelSeverity; /* * set up varbinds */ memset(&var_alarmListName, 0x00, sizeof(var_alarmListName)); var_alarmListName.type = ASN_OCTET_STR; memset(&var_alarmModelIndex, 0x00, sizeof(var_alarmModelIndex)); var_alarmModelIndex.type = ASN_UNSIGNED; memset(&var_alarmModelSeverity, 0x00, sizeof(var_alarmModelSeverity)); var_alarmModelSeverity.type = ASN_INTEGER; /* * chain index varbinds together */ var_alarmListName.next_variable = &var_alarmModelIndex; var_alarmModelIndex.next_variable = &var_alarmModelSeverity; var_alarmModelSeverity.next_variable = NULL; DEBUGMSGTL(("verbose:ituAlarmTable:ituAlarmTable_index_to_oid", "called\n")); snmp_set_var_value(&var_alarmListName, (u_char*) name, strlen(name)); snmp_set_var_value(&var_alarmModelIndex, (u_char*) &index, sizeof(index)); snmp_set_var_value(&var_alarmModelSeverity, (u_char*) &severity, sizeof(severity)); err = build_oid(&oid_idx->oids, &oid_idx->len, NULL, 0, &var_alarmListName); if (err) { snmp_log(LOG_ERR, "error %d converting index to oid: ituAlarmTable_index_to_oid", err); } /* * parsing may have allocated memory. free it. */ snmp_reset_var_buffers(&var_alarmListName); return err; }
/************************************************************ * * Convert table index components to an oid. */ int alarmModelTable_index_to_oid(char* name, unsigned long index, unsigned long state, netsnmp_index *oid_idx) { int err = SNMP_ERR_NOERROR; netsnmp_variable_list var_alarmListName; netsnmp_variable_list var_alarmModelIndex; netsnmp_variable_list var_alarmModelState; /* * set up varbinds */ memset(&var_alarmListName, 0x00, sizeof(var_alarmListName)); var_alarmListName.type = ASN_OCTET_STR; memset(&var_alarmModelIndex, 0x00, sizeof(var_alarmModelIndex)); var_alarmModelIndex.type = ASN_UNSIGNED; memset(&var_alarmModelState, 0x00, sizeof(var_alarmModelState)); var_alarmModelState.type = ASN_UNSIGNED; /* * chain index varbinds together */ var_alarmListName.next_variable = &var_alarmModelIndex; var_alarmModelIndex.next_variable = &var_alarmModelState; var_alarmModelState.next_variable = NULL; DEBUGMSGTL(("verbose:alarmModelTable:alarmModelTable_index_to_oid", "called\n")); snmp_set_var_value(&var_alarmListName, (u_char*) name, strlen(name)); snmp_set_var_value(&var_alarmModelIndex, (u_char*) &index, sizeof(index)); snmp_set_var_value(&var_alarmModelState, (u_char*) &state, sizeof(state)); err = build_oid(&oid_idx->oids, &oid_idx->len, NULL, 0, &var_alarmListName); if (err) { TRC_ERROR("error %d converting index to oid: alarmModelTable_index_to_oid", err); // LCOV_EXCL_LINE } /* * parsing may have allocated memory. free it. */ snmp_reset_var_buffers(&var_alarmListName); return err; }
/* * generates the index portion of an table oid from a varlist. */ void _netsnmp_tdata_generate_index_oid (netsnmp_tdata_row * row) { build_oid (&row->oid_index.oids, &row->oid_index.len, NULL, 0, row->indexes); }
/* * generates the index portion of an table oid from a varlist. */ void netsnmp_table_data_generate_index_oid(netsnmp_table_row *row) { build_oid(&row->index_oid, &row->index_oid_len, NULL, 0, row->indexes); }