Weber, Markus fvd at
Thu Nov 7 12:57:29 UTC 2002

Hi, this might be a duplicate of

with just some minor additions. Plattform: Solaris 8, perl-5.8.0,
gcc 3.2, inn-2.3.3.

Symptoms:	cnfsstat generates inaccurate output (rounding errors)

Analysis:	The problem seems to be of some changes in perl-5.8.0
		and the return of BigInts (sorry, I'm not a perl guy,
		but this is the stripped down example):

			use Math::BigInt;
				sub d1 { my $i =3D new Math::BigInt '20483';
				  $i =3D~ s/^\+//; return $i}
			printf d1() / 7.0;

		With perl-5.8.0 this prints an integer, while with for-
		mer version it was a float. Thus human_printable in
		cnfsstat fails and prints values rounded downwards to
		the last integer. Might be at the end a perl problem?

Workaround:	For me it was sufficient to change in bhex
		   my $integerValue =3D new Math::BigInt '0';
		   my $integerValue =3D 0; #new Math::BigInt '0';
		but this might break the with larger files ...

[KPN Euro(rings|link)  *  Emmy-Noether-Str. 9  *  D--76131 Karlsruhe]=20
[E] Markus Weber <fvd at> / <fvd at>
[T] +49 721 9652 213 [F] +49 721 9652 171 [IRC] FvD [P] <fvd at>

More information about the inn-bugs mailing list