summaryrefslogtreecommitdiff
path: root/local/mib2c-conf.d/generic-table-indexes-to-oid.m2i
diff options
context:
space:
mode:
Diffstat (limited to 'local/mib2c-conf.d/generic-table-indexes-to-oid.m2i')
-rw-r--r--local/mib2c-conf.d/generic-table-indexes-to-oid.m2i52
1 files changed, 52 insertions, 0 deletions
diff --git a/local/mib2c-conf.d/generic-table-indexes-to-oid.m2i b/local/mib2c-conf.d/generic-table-indexes-to-oid.m2i
new file mode 100644
index 0000000..c17de4c
--- /dev/null
+++ b/local/mib2c-conf.d/generic-table-indexes-to-oid.m2i
@@ -0,0 +1,52 @@
+############################################################# -*- c -*-
+## generic include for XXX. Do not use directly.
+##
+## $Id$
+########################################################################
+@if $m2c_mark_boundary == 1@
+/** START code generated by $RCSfile$ $Revision$ */
+@end@
+########################################################################
+##
+/**
+ * @internal
+ * convert the index component stored in the context to an oid
+ */
+int
+${context}_index_to_oid(netsnmp_index *oid_idx,
+ ${context}_mib_index *mib_idx)
+{
+@include generic-table-indexes-varbind-setup.m2i@
+
+ DEBUGMSGTL(("verbose:${context}:${context}_index_to_oid","called\n"));
+
+@ foreach $node index@
+@ include m2c_setup_node.m2i@
+ /* $m2c_node_summary */
+@ if $m2c_node_needlength == 1@
+ snmp_set_var_value(&var_$node, &mib_idx->$node,
+ mib_idx->${node}_len * sizeof(mib_idx->${node}[0]));
+@ else@
+ snmp_set_var_value(&var_$node, &mib_idx->$node, sizeof(mib_idx->$node));
+@ end@
+
+@ end@ # for each column
+
+ err = build_oid_noalloc(oid_idx->oids, oid_idx->len, &oid_idx->len,
+ NULL, 0, &var_$m2c_dii_first);
+ if(err)
+ snmp_log(LOG_ERR,"error %d converting index to oid\n", err);
+
+ /*
+ * parsing may have allocated memory. free it.
+ */
+ snmp_reset_var_buffers( &var_$m2c_dii_first );
+
+ return err;
+} /* ${context}_index_to_oid */
+
+##
+########################################################################
+@if $m2c_mark_boundary == 1@
+/** END code generated by $RCSfile$ $Revision$ */
+@end@