[mrtg-developers] Re: MRTG 2.10 (fwd)

Lorenzo Colitti lorenzo at colitti.com
Mon May 26 17:21:10 MEST 2003

Rafael Martinez Torres wrote:
> Summing up on the last patches...
> 2.- Faulty numeric IPv6 addresses:
> 	patch-mrtg-2.10pre1-numericv6  solved it:

Yes. This is fixed in 2.10.0pre2.

> 3.- snmpd in violation of RFC 1157:
> 	Possible causes: module faulty INET6?.
> 		Try alternative INET6.pm  (INET6-1.90).

No, you can't fix it that way.

The problem is that we have to work around a bug in the Debian INET6 
module. Specifically, if you call IO::Socket::INET6->new() without 
specifying a remote address, INET6.pm will create an IPv4 socket, and 
IPv6 won't work.

The workaround for this bug is to specify the host and port in the 
IO::Socket::INET6->new() call. But this causes the "reply from different 
IPv6 address doesn't work" problem. So you can't just use a different 
INET6, you have to modify both INET6 and SNMP_Session.

If you have found a workaround for this bug without modifying the Debian
INET6.pm, please let me know how you do it, so I can try to reproduce
your results (looking the INET6 code it seems improbable, though).

> 	My experience:
> 		Original MRTG was ready even to handle different origin
> 		and source addresses.Hence, this violation was already in
> 		mind and must be kept.

Yes, you are right. This should work.
I think the solution for this is that we agree on *one* version of
INET6.pm, find a maintainer for it, upload it to CPAN, and fix the bugs.
Distributing yet another version of INET6 is not the solution, IMHO.

> 		Using INET6-1.90 does NOT solve the problem.
> 		INET6-1.25 (that from Debian) is NOT wrong. It runs well
> 		even on my patch.

Could you please give me details on the exact patches you used and the
exact libraries (perhaps providing URLs), so I can reproduce the results?

> 		So, the problem must be in your SNMP modules...It is useless
> 		to track tcpdump.

As I said, you can't fix the bug just by fixing INET6. You have to fix 
the SNMP modules as well. But if you fix them, you have to fix INET6, 
which takes us back to the problem of agreeing on a version of INET6, 
finding a maintainer, and uploading it to CPAN.

> 4.- log session:
> 	patch-mrtg-2.10pre1-snmpsession.
> 		The patch is unapplyable to mrtg-2.10pre1 + numericIpv6 .
> 		If you apply to mrtg-2.10pre1, then
> 			numericIpv6 will not be appliable.

If you apply the snmpsession patch and then the numericv6 patch, 
everything works:

> $ patch -p0 < patch-mrtg-2.10.0pre1-snmpsessionv6patch
> patching file mrtg-2.10.0pre1/lib/mrtg2/SNMP_Session.pm
> $ patch -p0 < patch-mrtg-2.10.0pre1-numericv6
> patching file mrtg-2.10.0pre1/bin/cfgmaker
> patching file mrtg-2.10.0pre1/bin/mrtg
> patching file mrtg-2.10.0pre1/lib/mrtg2/SNMP_Session.pm
> Hunk #1 succeeded at 601 (offset 1 line).
> Hunk #2 succeeded at 614 (offset 1 line).
> patching file mrtg-2.10.0pre1/lib/mrtg2/SNMP_util.pm

In any case, 2.10.0pre2 is out now, and contains both fixes.

But we still have the problem of deciding on a version of INET6 and 
uploading it to CPAN. Do you want to upload your version of INET6 to 
CPAN and maintain it? Or shall I fix the bug in the Debian version?


Unsubscribe mailto:mrtg-developers-request at list.ee.ethz.ch?subject=unsubscribe
Help        mailto:mrtg-developers-request at list.ee.ethz.ch?subject=help
Archive     http://www.ee.ethz.ch/~slist/mrtg-developers

More information about the mrtg-developers mailing list