PERFORCE change 82445 for review

Victor Cruceru soc-victor at FreeBSD.org
Tue Aug 23 14:12:26 GMT 2005


http://perforce.freebsd.org/chv.cgi?CH=82445

Change 82445 by soc-victor at soc-victor_82.76.158.176 on 2005/08/23 14:11:39

	1)Start the SNMP work for RFC 4022 (unified IPv4 and IPv6 TCP-MIB):
	a) Deactivated the old IPv4 only implementation (RFC1213-MIB) which is now
	deprecated - but covered by RFC 4022 for backward compatibility -.
	b) Added the boilerplate code for the new RFC 4022 module
	
	2) Fixed a bug in HOST-RESOURCES-MIB's hrPrinterTable: if the printer's device
	is gone, this means that the printer is missing.
	
	3)Added an example in the agent config file about how HOST-RESOURCES-MIB can
	be configured.

Affected files ...

.. //depot/projects/soc2005/bsnmp/contrib/bsnmp/snmp_mibII/mibII.c#3 edit
.. //depot/projects/soc2005/bsnmp/contrib/bsnmp/snmp_mibII/mibII_tree.def#2 edit
.. //depot/projects/soc2005/bsnmp/contrib/bsnmp/snmpd/snmpd.config#2 edit
.. //depot/projects/soc2005/bsnmp/usr.sbin/bsnmpd/modules/Makefile#4 edit
.. //depot/projects/soc2005/bsnmp/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_printer_tbl.c#4 edit
.. //depot/projects/soc2005/bsnmp/usr.sbin/bsnmpd/modules/snmp_mibII/Makefile#2 edit
.. //depot/projects/soc2005/bsnmp/usr.sbin/bsnmpd/modules/snmp_tcp46/INET-ADDRESS-MIB.txt#1 add
.. //depot/projects/soc2005/bsnmp/usr.sbin/bsnmpd/modules/snmp_tcp46/TCP-MIB.txt#1 add
.. //depot/projects/soc2005/bsnmp/usr.sbin/bsnmpd/modules/snmp_tcp46/tcp46_snmp.c#1 add
.. //depot/projects/soc2005/bsnmp/usr.sbin/bsnmpd/modules/snmp_tcp46/tcp46_tree.def#1 add

Differences ...

==== //depot/projects/soc2005/bsnmp/contrib/bsnmp/snmp_mibII/mibII.c#3 (text+ko) ====

@@ -57,7 +57,9 @@
 /* OR registrations */
 static u_int ifmib_reg;
 static u_int ipmib_reg;
+#if 0
 static u_int tcpmib_reg;
+#endif /*0*/
 static u_int udpmib_reg;
 static u_int ipForward_reg;
 
@@ -112,7 +114,9 @@
 
 static const struct asn_oid oid_ifMIB = OIDX_ifMIB;
 static const struct asn_oid oid_ipMIB = OIDX_ipMIB;
+#if 0
 static const struct asn_oid oid_tcpMIB = OIDX_tcpMIB;
+#endif /*0*/
 static const struct asn_oid oid_udpMIB = OIDX_udpMIB;
 static const struct asn_oid oid_ipForward = OIDX_ipForward;
 static const struct asn_oid oid_linkDown = OIDX_linkDown;
@@ -1441,9 +1445,10 @@
 	ipmib_reg = or_register(&oid_ipMIB,
 	   "The MIB module for managing IP and ICMP implementations, but "
 	   "excluding their management of IP routes.", module);
-
+#if 0
 	tcpmib_reg = or_register(&oid_tcpMIB,
 	   "The MIB module for managing TCP implementations.", module);
+#endif /*0*/
 
 	udpmib_reg = or_register(&oid_udpMIB,
 	   "The MIB module for managing UDP implementations.", module);
@@ -1505,7 +1510,9 @@
 
 	or_unregister(ipForward_reg);
 	or_unregister(udpmib_reg);
+#if 0	
 	or_unregister(tcpmib_reg);
+#endif /*0*/	
 	or_unregister(ipmib_reg);
 	or_unregister(ifmib_reg);
 

==== //depot/projects/soc2005/bsnmp/contrib/bsnmp/snmp_mibII/mibII_tree.def#2 (text+ko) ====

@@ -148,30 +148,30 @@
         (25 icmpOutAddrMasks COUNTER op_icmpstat GET)
         (26 icmpOutAddrMaskReps COUNTER op_icmpstat GET)
       )
-      (6 tcp
-        (1 tcpRtoAlgorithm INTEGER op_tcp GET)
-        (2 tcpRtoMin INTEGER32 op_tcp GET)
-        (3 tcpRtoMax INTEGER32 op_tcp GET)
-        (4 tcpMaxConn INTEGER32 op_tcp GET)
-        (5 tcpActiveOpens COUNTER op_tcp GET)
-        (6 tcpPassiveOpens COUNTER op_tcp GET)
-        (7 tcpAttemptFails COUNTER op_tcp GET)
-        (8 tcpEstabResets COUNTER op_tcp GET)
-        (9 tcpCurrEstab GAUGE op_tcp GET)
-        (10 tcpInSegs COUNTER op_tcp GET)
-        (11 tcpOutSegs COUNTER op_tcp GET)
-        (12 tcpRetransSegs COUNTER op_tcp GET)
-        (13 tcpConnTable
-          (1 tcpConnEntry : IPADDRESS INTEGER IPADDRESS INTEGER op_tcpconn
-            (1 tcpConnState INTEGER GET)
-            (2 tcpConnLocalAddress IPADDRESS GET)
-            (3 tcpConnLocalPort INTEGER GET)
-            (4 tcpConnRemAddress IPADDRESS GET)
-            (5 tcpConnRemPort INTEGER GET)
-        ))
-        (14 tcpInErrs COUNTER op_tcp GET)
-        (15 tcpOutRsts COUNTER op_tcp)		# don't know
-      )
+#      (6 tcp
+#        (1 tcpRtoAlgorithm INTEGER op_tcp GET)
+#        (2 tcpRtoMin INTEGER32 op_tcp GET)
+#        (3 tcpRtoMax INTEGER32 op_tcp GET)
+#        (4 tcpMaxConn INTEGER32 op_tcp GET)
+#        (5 tcpActiveOpens COUNTER op_tcp GET)
+#        (6 tcpPassiveOpens COUNTER op_tcp GET)
+#        (7 tcpAttemptFails COUNTER op_tcp GET)
+#        (8 tcpEstabResets COUNTER op_tcp GET)
+#        (9 tcpCurrEstab GAUGE op_tcp GET)
+#        (10 tcpInSegs COUNTER op_tcp GET)
+#        (11 tcpOutSegs COUNTER op_tcp GET)
+#        (12 tcpRetransSegs COUNTER op_tcp GET)
+#        (13 tcpConnTable
+#          (1 tcpConnEntry : IPADDRESS INTEGER IPADDRESS INTEGER op_tcpconn
+#            (1 tcpConnState INTEGER GET)
+#            (2 tcpConnLocalAddress IPADDRESS GET)
+#            (3 tcpConnLocalPort INTEGER GET)
+#            (4 tcpConnRemAddress IPADDRESS GET)
+#            (5 tcpConnRemPort INTEGER GET)
+#        ))
+#        (14 tcpInErrs COUNTER op_tcp GET)
+#        (15 tcpOutRsts COUNTER op_tcp)		# don't know
+#      )
       (7 udp
         (1 udpInDatagrams COUNTER op_udp GET)
         (2 udpNoPorts COUNTER op_udp GET)

==== //depot/projects/soc2005/bsnmp/contrib/bsnmp/snmpd/snmpd.config#2 (text+ko) ====

@@ -80,6 +80,13 @@
 #
 begemotSnmpdModulePath."mibII"	= "/usr/local/lib/snmp_mibII.so"
 
+
+#
+# Load HOST-RESOURCES-MIB module
+#
+begemotSnmpdModulePath."hostres"  = "/usr/lib/snmp_hostres.so"
+
+
 #
 # Netgraph module
 #

==== //depot/projects/soc2005/bsnmp/usr.sbin/bsnmpd/modules/Makefile#4 (text+ko) ====

@@ -10,7 +10,8 @@
         snmp_hostres \
 	snmp_mibII \
 	snmp_netgraph \
-	snmp_pf 
+	snmp_pf \
+	snmp_tcp46 
 
 INCS=	snmpmod.h
 INCSDIR= ${INCLUDEDIR}/bsnmp

==== //depot/projects/soc2005/bsnmp/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_printer_tbl.c#4 (text+ko) ====

@@ -79,6 +79,7 @@
 #include <paths.h>
 #include <syslog.h>
 #include <err.h>
+#include <sys/stat.h>
 
 
 #define	_PATH_PRINTCAP		"/etc/printcap"
@@ -692,7 +693,8 @@
 	struct hrDeviceTblEntry* dev_entry = NULL;
 	struct hrPrinterTblEntry* printer_entry = NULL;
 	char dev_only[128];
-
+	struct stat sb;
+	
 	if (pp->rp_matches_local != 1) {
 		HR_DPRINTF((stderr,
 		"hrPrinterTable: skipped %s because it is not a local one\n",
@@ -717,6 +719,16 @@
 		pp->printer,
 		dev_only ));	
 	
+	if (stat(pp->lp, &sb) < 0) {
+		if (errno == ENOENT) {
+			HR_DPRINTF((stderr,
+				"hrPrinterTable: printer %s has its device %s missing. SKIPPING it.\n",
+				pp->printer,
+				pp->lp));
+			return;	
+		}		
+		
+	}
 	
 	dev_entry = hrDeviceTblEntry_find_by_name(dev_only);
 

==== //depot/projects/soc2005/bsnmp/usr.sbin/bsnmpd/modules/snmp_mibII/Makefile#2 (text+ko) ====

@@ -8,8 +8,8 @@
 MOD=	mibII
 SRCS=	mibII.c mibII_ifmib.c mibII_ip.c mibII_interfaces.c		\
 	mibII_ipaddr.c mibII_ifstack.c mibII_rcvaddr.c			\
-	mibII_nettomedia.c mibII_tcp.c mibII_udp.c mibII_route.c
-XSYM=	ipAddrTable ifTable ifRcvAddressEntry ifMIB ipMIB tcpMIB udpMIB	\
+	mibII_nettomedia.c mibII_udp.c mibII_route.c
+XSYM=	ipAddrTable ifTable ifRcvAddressEntry ifMIB ipMIB udpMIB	\
 	ipForward ifIndex linkDown linkUp
 MAN=	snmp_mibII.3
 


More information about the p4-projects mailing list