Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
GENSNMPTREE(1)		  BSD General Commands Manual		GENSNMPTREE(1)

     gensnmptree -- generate C and header files	from a MIB description file

     gensnmptree [-helt] [-p prefix] [name ...]

     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 snmpd(1) daemon or
     for module	writers.  The second form may be used by SNMP client program

     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 snmpd(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 two C pre-
     processor defines on its standard output. One define OID_name can be used
     as	an array initialized to	initialize a struct asn_oid.  The other	define
     OIDLEN_name contains the length 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 boot-
		  strapping snmpd(1).

     -t		  Instead of normal output print the resulting tree.

     -p	prefix	  Prefix the file names	and the	table name with	prefix.

     The syntax	of the MIB description file can	formally be specified as fol-

	   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   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.

     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)


     Hartmut Brandt <>

BSD				October	7, 2003				   BSD


Want to link to this manual page? Use this URL:

home | help