On 19/07/2010 15:19, Martin Townsend wrote:
> Hi,
>
> I'm currently creating a test agent using my own mib. I have
> implemented all the scalar values using mib2c and then int-watch
> configuration file. The problem I have is with a table.
> mib2c.mfd.conf was used to create the files. I have implemented the
> data access routines but I can't see where the generated routine
> (loadMonitorUnitsPOTable_container_load) is called, i've used gdb and
> set a breakpoint but the routine doesn't get called and I'm seeing no
> table information when using snmpwalk or snmpbulkget. All the
> examples I've seen use container-cache which call the
> xx_container_load from a _cache_load hook routine that is passed to
> the netsnmp_cache_create function. I choose the default container
> option:
>
> container : [DEFAULT] This access method uses a netsnmp_container
> to store all row data in memory. This method is best for:
> - Internal data (maintained by the agent)
> - Access speed is important
> - Sufficient memory exists to contain all rows
>
> Does anyone know how to hook the container_load routine up, or know
> why I'm not getting any table information? I've tried add the
> container_load to loadMonitorUnitsPOTable_container_init but it seg
> faults.
>
> Just in case it helps here is the portion of the MIB that defines the
> table:
> loadMonitorUnitsPOIndex OBJECT-TYPE
> SYNTAX Integer32 (0..13)
> MAX-ACCESS accessible-for-notify
> STATUS current
> DESCRIPTION
> ""
> ::= { loadMonitorPOUnits 2 }
>
> loadMonitorUnitsPOTable OBJECT-TYPE
> SYNTAX SEQUENCE OF LoadMonitorUnitsPOEntry
> MAX-ACCESS not-accessible
> STATUS current
> DESCRIPTION
> ""
> ::= { loadMonitorPOUnits 3 }
>
> loadMonitorUnitsPOEntry OBJECT-TYPE
> SYNTAX LoadMonitorUnitsPOEntry
> MAX-ACCESS not-accessible
> STATUS current
> DESCRIPTION
> ""
> INDEX { loadMonitorUnitsPOIndex }
> ::= { loadMonitorUnitsPOTable 1 }
>
> LoadMonitorUnitsPOEntry ::= SEQUENCE {
> loadMonitorIDPO
> Integer32,
> loadMonitorFuseStatus1PO
> INTEGER,
> loadMonitorCurrent1PO
> Integer32,
> loadMonitorFuseStatus2PO
> INTEGER,
> loadMonitorCurrent2PO
> Integer32
> }
>
> loadMonitorIDPO OBJECT-TYPE
> SYNTAX Integer32
> MAX-ACCESS read-only
> STATUS current
> DESCRIPTION
> ""
> ::= { loadMonitorUnitsPOEntry 1 }
>
> loadMonitorFuseStatus1PO OBJECT-TYPE
> SYNTAX INTEGER {
> normal (0),
> alarm (1)
> }
> MAX-ACCESS read-only
> STATUS current
> DESCRIPTION
> "The state of the load fuses/breakers can be either normal(0)
> or alarm(1) "
> ::= { loadMonitorUnitsPOEntry 2 }
>
> loadMonitorCurrent1PO OBJECT-TYPE
> SYNTAX Integer32
> UNITS "Amperes or DeciAmperes"
> MAX-ACCESS read-only
> STATUS current
> DESCRIPTION
> "The current consumed by this load branch. Note that the units
> measured may be i Amperes or in Deciamperes depending on global system
> settings"
> ::= { loadMonitorUnitsPOEntry 3 }
>
> loadMonitorFuseStatus2PO OBJECT-TYPE
> SYNTAX INTEGER {
> normal (0),
> alarm (1)
> }
> MAX-ACCESS read-only
> STATUS current
> DESCRIPTION
> "The state of the load fuses/breakers can be either normal(0)
> or alarm(1) "
> ::= { loadMonitorUnitsPOEntry 4 }
>
> loadMonitorCurrent2PO OBJECT-TYPE
> SYNTAX Integer32
> UNITS "Amperes or DeciAmperes"
> MAX-ACCESS read-only
> STATUS current
> DESCRIPTION
> "The current consumed by this load branch. Note that the units
> measured may be i Amperes or in Deciamperes depending on global system
> settings"
> ::= { loadMonitorUnitsPOEntry 5 }
>
> Many Thanks in advance,
> Martin.
A bit more info:
If I call
loadMonitorUnitsPOTable_container_load(loadMonitorUnitsPOTable_if_ctx.container);
at the end of generated _loadMonitorUnitsPOTable_initialize_interface
function it works. don't know if this is the correct place though.
Cheers,
Martin.
------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
Net-snmp-users mailing list
[email protected]
Please see the following page to unsubscribe or change other options:
https://lists.sourceforge.net/lists/listinfo/net-snmp-users