** I am using the MfD configuration file to generate code and I am very
confused.
I have the following two tables defined in my MIB file.
TABLE 1 (osStbHostAVInterfaceTable):
ocStbHostAVInterfaceIndex
ocStbHostAVInterfaceType
ocStbHostAVInterfaceDesc
ocStbHostAVInterfaceStatus
TABLE 2 (osStbHostIEEE1394Table):
ocStbHost1394ActiveNodes
ocStbHost1394DataXMission
ocStbHost1394DTCPStatus
ocStbHost1394LoopStatus
ocStbHost1394RootStatus
ocStbHost1394CycleIsMaster
ocStbHost1394IRMStatus
ocStbHost1394AudioMuteStatus
ocStbHost1394VideoMuteStatus
1) Table1 has the "ocStbHostAVInterfaceIndex" field which I believe represents
the row index in the table. Actually. I believe this index field is used as
the row index value generated within NetSNMP by doing the following:
a) calling the "se_find_value_in_slist()" routine (from within the
"container_load" procedure) to obtain a unique index
b) calling the "ocStbHostAVInterfaceTable_allocate_rowreq_ctx" routine to
allocate new storage row space
c) storing the "ocStbHostAVInterfaceIndex" value into the row by calling the
following:
ocStbHostAVInterfaceTable_indexes_set(rowreq_ctx,
ocStbHostAVInterfaceIndex)
Is my interpretation correct? Am I using the "ocStbHostAVInterfaceIndex" index
field as the row number correctly?
2) You will notice Table2 does not have a specific "index" field defined,
however the MIB file indicates Table2 is related to the
"ocStbHostAVInterfaceIndex" field (which is defined from Table1). I have
recently learned from this forum (thanks David) this means Table2 is simply an
extension of Table1 and that Table1 is considered to be a sparse table. The
MIB file states that when Table1's "ocStbHostAVInterfaceType" value indicates
"1394", then Table2 data will exist, otherwise Table2 data will not exist.
Lets say Table1 is populated and stored as the following:
Example: Table1
Index Type Desc Status
-----------------------------------------
1 DVI DVI-Desc Enabled
2 1394 IEEE1394 Enabled
3 Analog Analog-Desc Enabled
4 1394 IEEE1394 Enabled
5 HDMI HDMI-Desc Enabled
I am not sure how to populate Table2 data within the MfD framework. Since
Table2 does not have a specific "index" field defined, then I am not sure how
to generate rows for Table2 to store the data correctly.
1) Should Table2 have the same internal NetSNMP row index used in Table1 (ie: 2
and 4) even though this index is not stored within Table2's data?
2) Do I need to call the "se_find_value_in_slist()" routine at all for Table2?
3) Do I need to still make the following procedure call for Table2 at all?
ocStbHostAVInterfaceTable_indexes_set(rowreq_ctx, <indexValue>)
If so, then does the <indexValue> need to be a specific
"ocStbHostAVInterfaceIndex" value which was used for Table1?
I am obviously confused on how Table2 should have rows defined but does not
have it's own unique index. I do not understand whether I have to use a
previously obtained index value used in Table1 ni order to help me store Table2
data.
I am also pretty sure I can not expand the data_context structure definition of
Table1 to include the data fields defined in Table2, since this is not how the
MIB file defined the Tables ...... they are defined to be separate tables.
Hopefully someone can help me out here with a good explanation.
---------------------------------
Need a vacation? Get great deals to amazing places on Yahoo! Travel.
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Net-snmp-coders mailing list
Net-snmp-coders@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/net-snmp-coders