📄 snmp-faq-1.1.ascii
字号:
commands,other than SIOCGMIB2CNFG and GIOCGMIB2CNTRS, for other MIB-II variables?RESOLUTION:SNMP uses UDP and responds to all the queries on a transaction basis. Anynumber of SNMP managers can talk to the SNMP agent.There are three things going on here:1) The TCP/IP MIB is called the MIB-II, and this is what is shipped by VxWorks. This MIB defines information for all the IP interfaces in the systems. Whether they are ethernet, token ring, fddi, ppp, ..etc. Each interface is responsible for providing this information in their IP interface driver with the IOCTL described in the release notes. The interface MIB support is described in MIB-II RFC which is rfc1213.2) An FDDI driver is more complicated than an ethernet driver. It requires a protocol of its own to maintain ring communications. This protocol is call Station Management (SMT). This protocol has a MIB of its own and it is defined RFC-1512. Look in target/src/snmpv1/mibs/rfc1512.mib This is a MIB which requires new development and is independet of MIB-II.3) There are SNMP FDDI station variables which defines a MIB, this MIB is define in RFC-1285. Again these are FDDI station specific parameters and have nothing to do with the IOCTL that is sent from the MIB-II parameter interface definitions.NOTE - The FDDI MIB is not part of the TCP/IP MIB. FDDI MIB is independent and the user needs to develop the MIB. The FDDI MIB is defined in the RFC-1285,1512,1558. At the time of writing this FAQ the BSP Porting Kit is for Tornado 1.0.1 is not yet published for users. The BSP Port. Kit document should include the details on how to add a custom network interaface driver to VxWorks.SPR / PATCH: 3452KEYWORDS:--------------------------------------------------------------------------5. TITLE: getproc_got_string manpage missing how snmpdMemoryFree is used. SCOPE DISCOVERED ON HOST: All ------------------- ------------------- ARCHITECTURE: All ------------------- ------------------- BSP: All ------------------- -------------------PRODUCT / REVISION: snmpv1/v2c 1.0 ------------------- -------------------DESCRIPTION OF PROBLEM:In WindNet SNMPv1/v2c Component Release Supplement, SNMP LibrariesReference, pg 160, getproc_got_string. The "dynamicFlg" tells the agentthat snmpdMemoryAlloc was used to allocate memory for the data buffer.It also says that snmpdMemoryFree should be called to free it. Who callssnmpdMemoryFree? If the SNMP designer needs to add this call, whereshould he add it? What is meant by "freed later" ?RESEARCH:RESOLUTION:The snmpdMemoryFree is called by the agent when the packet processingis finished i.e. when the agent has finished generating the responsepacket for the request (this is what means by "freed later").It is not clear from the man page who is calling the free routine andNote that snmpdMemoryFree is distributed in snmpIoLib.c and the usercan write their own free routine if they do not want to use the one provided by WindNet snmp agent.SPR / PATCH: 8484KEYWORDS:--------------------------------------------------------------------------6. TITLE: The trap processing is missing a reference to the hook for releasing privately allocated memory. SCOPE DISCOVERED ON HOST: All ------------------- ------------------- ARCHITECTURE: All ------------------- ------------------- BSP: All ------------------- -------------------PRODUCT / REVISION: snmpv1/v2c 1.0 ------------------- -------------------DESCRIPTION OF PROBLEM:In WindNet SNMPv1/v2c Component Release Supplement, Section 4.12.8Trap Processing, pg 42, Figure 4-4. The diagram shows an optional hookto release privately-allocated memory. How do I tell the SNMP Agentabout this Hook and what are the parameters? Reference to this optionalhook is missing in the trap processing section on pg 41.RESOLUTION:snmpdInitFinish() and pPrivRlse can be used to release privatelyallocated memory. The section 4.10.4 on VarBind Private Field for setoperations talks about private-memory-deallocation hook. The same processcan be used for trap processing also, see pg. 34.SPR / PATCH: 8485--------------------------------------------------------------------------7. TITLE: nextproc_next_instance() does not explain the reference point of the instance. SCOPE DISCOVERED ON HOST: All ------------------- ------------------- ARCHITECTURE: All ------------------- ------------------- BSP: All ------------------- -------------------PRODUCT / REVISION: snmpv1/v2c 1.0 ------------------- -------------------DESCRIPTION OF PROBLEM:In WindNet SNMPv1/v2c Component Release Supplement, SNMP LibrariesReference, pg 165. nextproc_next_instance: What is the reference pointof the instance? Is it the next instance related to the instance passedinto the getproc procedure, or is it the next instance relating to theinstance found?RESOLUTION: It is instance found.nextproc_next_instance(pktp, vbp, GroupEntry_INSTANCE_LEN, next_inst);The instance part described here should be the instance part of thenext value that is retrieved.SPR / PATCH: 8486--------------------------------------------------------------------------8. TITLE: snmpSet() and snmpTest() in snmpSnmp.c have incorrect code. SCOPE DISCOVERED ON HOST: all ------------------- ------------------- ARCHITECTURE: all ------------------- ------------------- BSP: all ------------------- -------------------PRODUCT / REVISION: snmpv1/v2c 1.0 FCS ------------------- -------------------DESCRIPTION OF PROBLEM: Unable to SET the MIB variable snmpEnableAuthenTraps from the SNMP manager.The following problem is in snmpSnmp.cIn function snmpSet() setproc_good() is missing.In function snmpTest() the logical operator is incorrect.RESEARCH:RESOLUTION:In snmpSet() the code should be ... { snmp_stats.snmpEnableAuthTraps = vbp->value_u.v_number; setproc_good(pktp, vbp); return; }In snmpSet() the code should be ... /* Check for the only 2 permissible values */ if ((vbp->value_u.v_number != VAL_snmpEnableAuthenTraps_enabled) && (vbp->value_u.v_number != VAL_snmpEnableAuthenTraps_disabled)) { testproc_error (pktp, vbp, WRONG_VALUE); return; }SPR / PATCH: 8490, 8491KEYWORDS:--------------------------------------------------------------------------9. TITLE: SNMPv1/v2c 1.0 demo MIB exmaple from the user guide does not compile. SCOPE DISCOVERED ON HOST: All ------------------- ------------------- ARCHITECTURE: All ------------------- ------------------- BSP: All ------------------- -------------------PRODUCT / REVISION: SNMPv1/v2c 1.0 Tornado 1.0 ------------------- -------------------DESCRIPTION OF PROBLEM: The SNMP demo MIB example 6-4 (augmented demo.c withmethod routines) does not build when executing step 5.Example 6-1 demo.mib that is on the WEB (Windsurf)does not compile using mibcomp.RESOLUTION: A patch is available in support Patched Modules - demo.mib and demo.c The makefile in this patch can be used as a reference to modify the Makefile that is in your agent dirctory. Follow the instructions in Step 5 (pg 67) on how to build the snmp the instructions in Step 5 (pg 67) on how to build the snmp agent with the demo.c(method routines). And execute Step 6 to integrate the agent into vxworks.The following files should be distributed with this patch -demo.mib, demo.c, MakefileSPR / PATCH: 8373 / 5.3FCS-spr8373-snmpv1v2c-demo-mib--------------------------------------------------------------------------10. TITLE: snmpGroupedVbsProcess() prototype defined in snmpdLib.h is not found. SCOPE DISCOVERED ON HOST: All ------------------- ------------------- ARCHITECTURE: All ------------------- ------------------- BSP: All ------------------- -------------------PRODUCT / REVISION: snmpv1/v2c 1.0 ------------------- -------------------DESCRIPTION OF PROBLEM:In snmpdLib.h file the following prototype exists but it cannot be foundin the snmp manual or vxworks image: extern void snmpGroupedVbsProcess (SNMP_PKT_T *, VB_T *, VOIDFUNCPTR, int);RESOLUTION:This is not a user function, this was used internally and it doesnot exist in the current product.SPR / PATCH: 8388KEYWORDS:--------------------------------------------------------------------------11. TITLE: Prototype for snmpdContinue() is missing in snmpdLib.h. SCOPE DISCOVERED ON HOST: All ------------------- ------------------- ARCHITECTURE: All ------------------- ------------------- BSP: All ------------------- -------------------PRODUCT / REVISION: snmpv1/v2c 1.0 ------------------- -------------------DESCRIPTION OF PROBLEM:Prototype for snmpdContinue is missing in snmpdLib.h and compiler warningsare generated. RESOLUTION:A valid header file with the prototype is needed. SPR / PATCH: 8041KEYWORDS:--------------------------------------------------------------------------12. TITLE: What can I do to make the -stub option generate method routines for the SNMP trap objects. SCOPE DISCOVERED ON HOST: All ------------------- ------------------- ARCHITECTURE: All ------------------- ------------------- BSP: All ------------------- -------------------PRODUCT / REVISION: snmpv1/v2c 1.0 ------------------- -------------------DESCRIPTION OF PROBLEM:We have a MIB, and by using -stub, method routines are generated forObjects, Table Objects, but not for TRAP ?What can I do to make it generate meothod routines for TRAP object ?RESOLUTION:The snmpv1/v2c 1.0 MIB compiler does not support the trap flag option so the trap stub routines will not be created. However there is request forenhacement to provide this option. SPR / PATCH: 8227KEYWORDS:--------------------------------------------------------------------------13. TITLE: When to use non-asynch functions, %n or %N option. SCOPE DISCOVERED ON HOST: All ------------------- ------------------- ARCHITECTURE: All ------------------- ------------------- BSP: All ------------------- -------------------PRODUCT / REVISION: snmpv1/v2c 1.0 ------------------- -------------------DESCRIPTION OF PROBLEM:snmpMib2.mib DEFAULTs are always 'asynch' and for the parent (%p) node.When would you use the non-asynch functions? When would you use the %n or %N option? Does it depend whether the variable is scalar or a tabular leaf ?I've been using the defaults from snmpMib2.mib.RESOLUTION:Currently all method routines are synchronous. Synchronous functionscan be used when you want sequential execution. For example if you have aGET process for OID 1.4.0 and 1.5.0, The method routine for 1.5.0 will notget invoked until method for 1.4.0 is done. If you have asynchronous method routine for 1.4.0, it can return to the main thread, and the task that was started off by this routine will go about doing the necessary work for the response packet; While this is being done you can have method routine for 1.5.0 invoked and not wait for 1.4.0 to finish. The async version of the functions holds good for async and non-async routines, so use async suffix.The difference beteween %n and %N is described in appendix A. of the WindNetSNMPv1/v2c Component Release Supplement 1.0 Edition 1You can use this for scalar or table variable.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -