Windows NT SNMP by James D. Murray Unconfirmed error reports are from readers. They have not yet been approved or disproved by the author or editor and represent solely the opinion of the reader. If you have any error reports or technical questions, you can send them to booktech@oreilly.com. (Please specify the printing date of your copy.) This page was last updated April 26, 2001. Here's a key to the markup: [page-number]: serious technical mistake {page-number}: minor technical mistake : important language/formatting problem (page-number): language change or minor formatting problem ?page-number?: reader question or request for clarification UNCONFIRMED errors and comments from readers: [75] 1st paragraph under MIB-II Managed Objects: The third sentence states: MIB-II contains 171 managed objects organized into eleven funtional groups. When I review RFC 1213 from the included CD-ROM, file rfc1213.txt seems to me to have 10 groups with 1 historical (cmot) and 190 objects (when I count OBJECT-TYPEs). Is this correct, or am I mis-counting? {90} The second full paragraph now reads: For example, to reference intValue2 in row 3 we use the OID, intValue2.4 It should read: For example, to reference intValue2 in row 3 we use the OID, intValue2.3 (146) In Table 5-2, the OID for LMMIB2 now reads: 1.3.6.1.2.1.77.1.3 It should read: 1.3.6.1.4.1.77.1.3 [160] NOTE at the bottom of page: The regmon utility noted is located at http://www.sysinternals.com, not http://www.ntinternals.com. This may affect other books referencing the ntregmon.exe utility. RegSpy95 is not available on the Sysinternals site. {179} Line 1 of the first paragraph reads: Most SNMP API functions that return a value use the INT (32-bit unsigned integer)... INT is actually a signed 32-bit integer. This should read: Most SNMP API functions that return a value use the INT (32-bit signed integer)... [247] Figure 7-1: Shouldn't the three DLL's (INETMIB1.DLL, MINAGENT.DLL, and LMMIB2.DLL) be labeled "Extension Agent," instead of "Extendible Agent?" The dataflow arrows are so labeled, and the text on page 246 also refers to the DLLs as extension agents. {296} Line 18 should be changed from: UINT OidOraTrapAgentOnePrefix[] = { 1, 3, 6, 1, 4, 1, 2035, 1, 6, 1 }; to: UINT OidOraTrapAgentOnePrefix[] = { 1, 3, 6, 1, 4, 1, 2035, 1, 8, 1 }; This is based on the MIB definition for agent one as shown in the following: enterprises FROM RFC1155-SMI; ora OBJECT IDENTIFIER ::= enterprises 2035 } oraNtSnmpBook OBJECT IDENTIFIER ::= { ora 1 } oraNtSnmpBookChapter8 OBJECT IDENTIFIER ::= { oraNtSnmpBook 8 } oraTrapAgentOne OBJECT IDENTIFIER ::= oraNtSnmpBookChapter8 1 } which is .1.3.6.1.4.1.2035.1.8.1 not .1.3.6.1.4.1.2035.1.6.1 [323] In the section "pIPAddress," the last sentence states that "The memory for this data is allocated by MGMTAPI and must be freed by the management application using SnmpUtilMemFree." However, Example 9-5 on page 325 uses SnmpUtilOidFree to free the memory associated with the TrapIpAddress pointer. Which is the correct function to use to release the memory allocated for pIPAddress?