On Tue, Aug 16, 2005 at 10:40:15AM -0400, Robert Story wrote:
> I'm dubious, but willing to be proven wrong.

Understandable.. Had hoped this would fix it myself..

> 1) Did you specify --enable-mfd-rewrites when you configured? (net-snmp-config
> --configure-options will tell you)

Yes.

$ net-snmp-config --configure-options
'--prefix=/usr' '--sysconfdir=/etc' '--mandir=/usr/share/man'
'--with-persistent-directory=/var/lib/snmp'
'--enable-ucd-snmp-compatibility' '--enable-shared' '--with-cflags=-O2
-D_REENTRANT' '--with-perl-modules=INSTALLDIRS=vendor' '--enable-ipv6'
'--with-logfile=none' '--without-rpm' '--with-libwrap' '--with-openssl'
'--without-dmalloc' '--without-efence' '--without-rsaref'
'--with-sys-contact=root' '--with-sys-location=Unknown'
'--with-mib-modules=host smux ucd-snmp/dlmod ucd-snmp/diskio
ucd-snmp/lmSensors' '--enable-mfd-rewrites' '--with-defaults'


Here's what I did:

Unpack fresh source tarball.

Apply patch:

$ patch -p0 </root/set-var-value.pat
patching file snmplib/snmp_api.c
Hunk #1 succeeded at 6328 (offset 86 lines).
patching file snmplib/snmp_client.c
Hunk #2 succeeded at 717 (offset 1 line).
$

(I assume the offsets are because I'm using 5.2.1.2 and not bare 5.2.1)

CONFIGURE_OPTIONS
--prefix=/usr
--sysconfdir=/etc
--mandir=/usr/share/man
--with-persistent-directory=/var/lib/snmp
--enable-ucd-snmp-compatibility
--enable-shared
--with-cflags=-O2 -D_REENTRANT
--with-perl-modules=INSTALLDIRS=vendor
--enable-ipv6
--with-logfile=none
--without-rpm
--with-libwrap
--with-openssl
--without-dmalloc
--without-efence
--without-rsaref
--with-sys-contact=root
--with-sys-location=Unknown
--with-mib-modules=host smux ucd-snmp/dlmod ucd-snmp/diskio
ucd-snmp/lmSensors
--enable-mfd-rewrites
--with-defaults

cat configure-summary
  SNMP Versions Supported:    1 2c 3
  UCD-SNMP compatability:     enabled
  Net-SNMP Version:           5.2.1.2
  Building for:               linux
  Network transport support:  Callback Unix TCP UDP TCPIPv6 UDPIPv6
  SNMPv3 Security Modules:    usm
  Agent MIB code:             mibII ucd_snmp snmpv3mibs notification
target agent_mibs agentx utilities host smux ucd-snmp/dlmod
ucd-snmp/diskio ucd-snmp/lmSensors mibII/ipv6
  SNMP Perl modules:          building -- not embeddable
  Embedded perl support:      disabled
  Authentication support:     MD5 SHA1
  Encryption support:         DES AES

Remove all binaries and support files.
Reinstall everything.
Start SNMP daemon.

Run test for a while and see the overflow be generated:

On localhost:

.1.3.6.1.2.1.2.2.1.10.1 = Counter32: 53262146
.1.3.6.1.2.1.2.2.1.10.2 = Counter32: 4640561108
.1.3.6.1.2.1.2.2.1.10.3 = Counter32: 211012599
.1.3.6.1.2.1.2.2.1.10.4 = Counter32: 0

And on the 32-bit client machine:

.1.3.6.1.2.1.2.2.1.10.1 = Counter32: 53262146
.1.3.6.1.2.1.2.2.1.10.2 = Counter32: 53262146
.1.3.6.1.2.1.2.2.1.10.3 = Counter32: 211012599
.1.3.6.1.2.1.2.2.1.10.4 = Counter32: 0

It's perhaps noteworthy that although the interface counters in Linux are way
over the 4Gb limit snmpd starts out correctly with a value that fits inside a 
32-bit value.

Eg. Ifconfig shows:

RX bytes:6324034915993 (5.7 TiB)  TX bytes:6312759750913 (5.7 TiB)

But the start value reported by snmpd is OK.

Only when it starts to add bytes to the counter does it somehow manage to
exceed the 32 bit boundary. It's like it doesn't check if the added
bytes to the counter needs to be wrapped in the Counter32 case.

So it's not the initial readout of the caounters. That's working fine.
It's only after it has been running for a while and then hits the 32 bit
limit when it doesn't wrap the 32 bit value to 0, but keeps counting.

> 2) After you applied the patch and ran make, did you run make install, or run
> snmpd from the source directory?

I always remove all the old binaries and support files first (and keep a
backup of my snmpd.conf) and then install the whole thing from scratch.

Have been bitten by the 'old binaries or libraries hanging around' in the 
past too often :)

                                                                Bye, Arno.


-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
Net-snmp-users mailing list
Net-snmp-users@lists.sourceforge.net
Please see the following page to unsubscribe or change other options:
https://lists.sourceforge.net/lists/listinfo/net-snmp-users

Reply via email to