| |
 |
 |
|
|
|
|
|
|
gensnmptree
GENSNMPTREE(1) FreeBSD General Commands Manual GENSNMPTREE(1)
NAME
gensnmptree -- generate C and header files from a MIB description file
SYNOPSIS
gensnmptree [-helt] [-p prefix] [name ...]
DESCRIPTION
The gensnmptree utility is used to either generate C language tables and
header files from a MIB description or to numeric OIDs from MIB descrip-
tions. The first form is used only for maintaining the bsnmpd(1) daemon
or for module writers. The second form may be used by SNMP client pro-
gram writers.
If the -e option is not used gensnmptree reads a MIB description from its
standard input and creates two files: a C-file prefixtree.c containing a
table used by bsnmpd(1) during PDU processing and a header file
prefixtree.h containing appropriate declarations of the callback func-
tions used in this table and the table itself.
If the -e option is specified gensnmptree expects MIB variable names
(only the last component) on its command line. It reads a MIB specifica-
tion from standard input and for each MIB variable name emits three C
preprocessor defines on its standard output:
OIDX_name This define can be used to initialize a struct asn_oid in
the following way:
const struct asn_oid oid_sysDescr = OIDX_sysDescr;
OIDLEN_name is the length of the OID.
OID_name is the last component of the OID.
The options are as follows:
-h Print a short help page.
-e Enter extract mode.
-l Generate local preprocessor includes. This is used for
bootstrapping bsnmpd(1).
-t Instead of normal output print the resulting tree.
-p prefix Prefix the file names and the table name with prefix.
MIBS
The syntax of the MIB description file can formally be specified as fol-
lows:
file := tree | tree file
tree := head elements ')'
entry := head ':' index STRING elements ')'
leaf := head TYPE STRING ACCESS ')'
column := head TYPE ACCESS ')'
head := '(' INT STRING
elements := EMPTY | elements element
element := tree | leaf
index := TYPE | index TYPE
TYPE specifies a SNMP data type and may be one of
o NULL
o INTEGER
o INTEGER32 (same as INTEGER)
o UNSIGNED32 (same as GAUGE)
o OCTETSTRING
o IPADDRESS
o OID
o TIMETICKS
o COUNTER
o GAUGE
o COUNTER64
ACCESS specifies the accessibility of the MIB variable (which operation
can be performed) and is one of
o GET
o SET
INT is a decimal integer and STRING is any string starting with a letter
or underscore and consisting of letters, digits and underscores, that is
not one of the keywords.
EXAMPLES
The following MIB description describes the system group:
(1 internet
(2 mgmt
(1 mibII
(1 system
(1 sysDescr OCTETSTRING op_system_group GET)
(2 sysObjectId OID op_system_group GET)
(3 sysUpTime TIMETICKS op_system_group GET)
(4 sysContact OCTETSTRING op_system_group GET SET)
(5 sysName OCTETSTRING op_system_group GET SET)
(6 sysLocation OCTETSTRING op_system_group GET SET)
(7 sysServices INTEGER op_system_group GET)
(8 sysORLastChange TIMETICKS op_system_group GET)
(9 sysORTable
(1 sysOREntry : INTEGER op_or_table
(1 sysORIndex INTEGER)
(2 sysORID OID GET)
(3 sysORDescr OCTETSTRING GET)
(4 sysORUpTime TIMETICKS GET)
))
)
)
)
)
SEE ALSO
bsnmpd(1)
AUTHORS
Hartmut Brandt <hartiATfreebsd.org>
FreeBSD 6.2 February 27, 2006 FreeBSD 6.2
|
|
Copyright ©2006 TheBestISP.com |
|
|
|
 |
|