Adding MIBs

The process for adding SNMP device support to the VOCAL system includes working with both the SNMPd and agent sides.

SNMPd Side

Follow these steps on the SNMPd side:

  1. Create new agent code as described in the upcoming section “Creating New Agent Code.”

  2. Move new agents to vocal-1.3.0/snmp/vovidaSNMP/agent/mibgroup, under the proper subdirectory.

Here are some places to find more information:

  • Tables can use code similar to that found in applTable.c.

  • Traps are similar to softSwitchNotifications.c.

  • Nontable items are similar to localGrp.c.

Agent Side

Here are some tips about working with the agent side:

  • The threads on the agent side are part of the monitored processes for the different VOCAL servers.

  • vocal-1.3.0/util/AgentApi is the class from which the agents are derived.

  • vocal-1.3.0/heartbeat/hbs/HBAgent.cxx is the current agent for the HBS and can be used as a basis for other agents.

  • vocal-1.3.0/util/AgentApiMibVars.hxx is a large enumerator that includes all VOCAL-specific MIB variables. New variables should be included here as well.

MIB Group Directory

The point of having an MIB group directory is to help the developer organize her MIBs in the Concurrent Versioning System (CVS) tree. The directory—vocal-1.3.0/snmp/vovidaSnmp/agent/mibgroup/—holds the implementation of individual MIB groups. Currently, this contains the eight MIB II groups, plus a basic template for new MIB groups (examples/example.c and examples/example.h). See the Net-SNMP manual pages for information about how ...

Get Practical VoIP Using VOCAL now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.