Extending the UCD-SNMP agent

This is a first draft at documenting the procedure for writing code to extend the functionality of the UCD-SNMP network management agent.

It is copyright the author, and must not be distributed without explicit permission. This is purely because I do not yet regard this as sufficiently well checked or polished to be suitable for distribution. However, there is a clear need for this sort of information, hence it is being made available over the Web as an interim measure.

If you do make use of these documents, please can you contact me regarding how useful and accurate (or otherwise) you found the information. The more feedback I receive, the faster this guide will reach a presentable state - at which point it can be distributed with the main UCD-SNMP package.

The information is designed to be read in order - the structure being:

  1. Overview & Introduction
  2. MIB files, and how they relate to the agent implementation
  3. Header files
  4. The basic structure of module implementation code
  5. The details of non-table based implementations
  6. The details of simple table based implementations
  7. The details of more general table based implementations
  8. How to implement SET-able variables

There's also a step-by-step checklist that you can use if adding your MIB module doesn't seem to be working.
All feedback should be directed to the author Dave Shield