⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 readme

📁 ucd-snmp源代码
💻
字号:
This directory holds the implementation of individual MIB groups.Currently, this contains the eight MIB-2 groups, plus a basic templatefor new MIB groups (examples/example.c and examples/example.h)Additionally, you may wish to check out the 'mib2c' perl script in the SRCDIR/local directory that can convert a written mib into C templatefiles for use with this package as mib modules.Each group consists of two files:  examples/example.h:	interface information	- declaration of the initialisation function 'init_example'		(optional)	- declaration of the function(s) for retrieving variable		information 'var_example'	- declaration of the function(s) for setting variable		information (if appropriate)	- declaration of the function(s) for parsing the snmpd.conf file		(optional)        - a call to config_parse_dot_conf() to explain to the .conf		parser which tokens we want to parse.		(optional)	- definitions of the MIB group 'magic numbers'		declarations of the 'public' functions	- a list of the variables in the group, including		type information, mapping between magic numbers		and OID sub-identifiers within the group,		accessibility information, and the relevant		function for retrieving this variable's value.                They *must* be listed in the mib-descending order.	- a call to 'config_load_mib', identifying the location of		this MIB group within the general MIB structure.	- a call to 'config_require' to identify any other files		that are required by the implementation of this group.		(optional)    (these last three are only visible within the 'glue' file 'snmp_vars.c'	(if at all), but are declared here for ease of maintainance)  examples/example.c:	implementation code		(can be non-existant if only the .h file is needed)	- a list of kernel information needed to report		on this group	- an initialisation function (optional)        - a routine to parse an snmpd.conf line.        - a routine to free resources from above and return to                 default settings.	- 'header' function(s) to map the OID requested		to the next appropriate OID		(and similar system-independent setup)	- function(s) (possibly system-specific) to		determine and return the value of the		variable requested.	- (optionally) functions used to set values	- other functions used internallyTo implement a new MIB group, copy the two files 'example.c'and 'example.h' to appropriate new files ({MODULENAME}.c and {MODULENAME}.h),and edit them as follows:	example.h:		globally change "example" to the new module name		    and update the initial comment.		replace the EXAMPLE* defines with the list of		    variables within this new group		fill in the 'MODULENAME_variables' structure with these		    new variables, updating the type, accessibility		    and sub-identifier information as appropriate.		replace 'variableN' with the maximum size of the		    returned OID (omitting the group prefix).		    For non-table values, this will probably be one		    greater than the length of the sub-identifier.                update or remove the 'config_parse_dot_conf' call if                    you need to handle lines in the snmpd.conf files.		update the 'config_load_mib' call with the appropriate		    location within the global MIB structure, and		    its length (note that 'MIB' has length 6)		provide a suitable 'config_require' call if this		    code uses routines from any other files within		    the 'mibgroup' directory (such as 'util_funcs.c')	example.c:		globally change "example" to the new module name		    and update the initial comment.		replace the 'MODULENAME_nl' name list with any necessary		    kernel variables, and update the associated #define's		replace the name length definition within the 'header'		    function with the length of the requesting OID		    (i.e. the sum of the lengths given in the subtree		     definition, and the variable structure above).		replace the basic 'switch' structure within the		    'var_MODULENAME' function with the necessary code		    to calculate the required information.		(plus any other internal functions as needed).  It will then be necessary to (re-)run the configure script with theoption	--with-mib-modules="MODULENAME"(where MODULENAME matches the name of the .c/.h file pair exactly).Note that if anything in the config_* macros changes, or the init functionis added or removed, then the configure script will need to be re-run.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -