[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

RE: onlinecalc - $BYTES_RCVD



From: Peter Blancke [mailto:blancke@gmx.de]
> Am 20.12.2002 15:22:10, Alexander Rose schrieb:
>
> > ich benutze onlinecalc
> > [...]
> > bis gestern hat auch alles gut geklappt, doch heute steht mit
> > einemmal für den letzten eintrag in der /var/log/ppp-usage ein
> > NEGATIVER wert für $BYTES_RCVD!
>
> Klingt gewoehnlich nach schlampiger Programmierung im Sinne der
> Verwendung einer Variable, die den aufzunehmenden Wert gar nicht
> aufnehmen kann und daher "ueberlaeuft", sprich: Bei Integervariablen
> ploetzlich im negativen Bereich wieder anfaengt.

hmm, vielleicht kann mir folgende idee abhelfen, zumindest ein wenig:

eine integer variable kann werte von -2^32 bis 2^32 annehmen,
also -4.294.967.296 bis 4.294.967.296 oder ist es falsch? 4.294.967.296
kommt mir als wert, bei dem der "ueberlauf" geschehen ist aber realitisch
vor, da die zahl für bytes steht. umgererchnet wären dies genau 4 gigabyte.
ein durchaus relistischer wert für meine verbindung.
falls dies richtig ist, kann ich den maximalen wert den das programm korrekt
erfassen kann verdoppeln, indem ich für negative werte den korrekten wert
als die 4 gig integergrenze plus den betrag des negativen wertes definiere.

mfg alex




Reply to: