SNMP Subagent Programmer's Guide
Writing and Compiling MIBs
SNMP Subagent Programmer’s Guide—119728 3-3
Encoding MIBs
A construct defined in a #define directive can be used only with other directives, not
within MIB definition constructs. For example, GDMOC supports this use of the
#define directive:
#define MAX 255
#if MAX
DisplayString (0..255)
But GDMOC does not accept this use:
#define MAX 255
DisplayString (0..MAX)
GDMOC evaluates #if directives that contain string defines, but not numeric defines.
In the case of the #include directive, the search path GDMOC uses to find your include
file depends on the delimiters you use around the include file name.
"include-file"
directs GDMOC to search in your current subvolume, then in subvolumes specified
in the -I option of its RUN command.
<include-file>
directs GDMOC to search for the file only in subvolumes specified in the -I option
of its RUN command.
The #include directive is useful for isolating concise MIB constructs from the
extensions. For example:
standard-concise-MIB constructs ...
#include extdefs -- file containing extensions
More on the topics of extensions and isolating them from concise MIB constructs
appears later in this section, under “Isolating Standard Definitions.”
SNMP Type Definitions
Each scalar MIB object has associated with it one of the following SNMP data types:
INTEGER
Counter
Gauge
TimeTicks
IpAddress
OCTET STRING
DisplayString
OBJECT IDENTIFIER
Opaque
PhysAddress
#include { "include-file" | <include-file> }