[vz-dev] vzlogger 0.3.3-rc1

Steffen Vogel info at steffenvogel.de
Fri Feb 3 15:37:08 CET 2012


Hallo,

Danke Torben! Das ist ja schon etwas peinlich :-S So ist das, wenn man
sich vornimmt solche Sachen später ordentlich zu machen. Habs irgendwie
vergessen ^^.

Dafür ists jetzt ordentlich. Die Buffer und print() Ausgaben können
jetzt beliebig lang werden. (realloc())

Ich bin mit valgrind auch nochmal auf die Suche nach
Speicherverletzungen und Leaks gegangen..
        
        ==3001== HEAP SUMMARY:
        ==3001==     in use at exit: 88 bytes in 3 blocks
        ==3001==   total heap usage: 3,530 allocs, 3,527 frees, 247,318
        bytes allocated
        ==3001== 
        ==3001== LEAK SUMMARY:
        ==3001==    definitely lost: 0 bytes in 0 blocks
        ==3001==    indirectly lost: 0 bytes in 0 blocks
        ==3001==      possibly lost: 0 bytes in 0 blocks
        ==3001==    still reachable: 88 bytes in 3 blocks
        ==3001==         suppressed: 0 bytes in 0 blocks

Damit bin ich eigentlich ganz zufrieden. Die aktuelle Version liegt
wieder in meinem git: https://github.com/stv0g/vzlogger


@Torben: was hälst du davon vzlogger teils nach C++ zu portieren?
An einigen Stellen würde das den Code um einiges übersichtlicher machen.
Die Erweiterung um neue Zähler/Protokolle würde dadurch auch vereinfacht
werden. Auf der anderen Seite will ich aber die STL nicht benutzen.

Viele Grüße

Am Freitag, den 03.02.2012, 01:22 +0100 schrieb Thorben Thuermer:
> Hallo,
> 
> bug ist gefunden...
> ist ein sehr dummer...
> void print() in vzlogger.c benutzt einen festen buffer von 1024 bytes fuer die
> auszugebende zeile, und enthaelt keinerlei ueberlauf-checks...
> sobald der Buffer der da gedumpt wird so voll wird, dass die ausgabe des buffers
> (die in threads.c:buffer_dump() noch sorgsam auf 1024 bytes begrenz wird)
> PLUS der andere text aus "Buffer dump: %s (size=%i, keep=%i)", timestamp, usw.,
> zu gross fuer den 1024-byte buffer wird, haben wir einen klassichen overrun...
> 
> steffen: bitte fixen...
> einfache methode:
> --- a/bin/logger/src/vzlogger.c
> +++ b/bin/logger/src/vzlogger.c
> -       char buffer[1024];
> +       char buffer[4096];
> 
> sollte eigentlich fuer die debug-natur der ganzen sache reichen... oder immer
> brav sNprintf benutzen (und mitzaehlen), wenn du motivierter bist ;)
> 
> - T.
> 
> On Fri, 27 Jan 2012 23:34:06 +0100
> Justin Otherguy <justin at justinotherguy.org> wrote:
> > Der Buffer scheint nicht gelehrt zu werden (s. Details oben):
> > 
> > [Jan 27 21:26:53][ch1]  Buffer dump: |381920.30|381921.50|
> [...]
> > |381958.70|381959.10|381959.50|381959.90|!381960.30| (size=99, keep=150)
> > 
> > Klingelt das bei Dir?
> > 
> > Ich hab den lokalen Webserver in der Zeit zwischen Start und Absturz nicht aufgerufen.
> > 
> > 
> > Gruss, J.
> > 

-- 
Steffen Vogel
Robensstraße 69
52070 Aachen

Mail: info at steffenvogel.de
Web: http://www.steffenvogel.de
Jabber: stv0g at jabber.ccc.de
ICQ: 236033
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 490 bytes
Desc: This is a digitally signed message part
URL: <http://volkszaehler.org/pipermail/volkszaehler-dev/attachments/20120203/a6033828/attachment.pgp>


More information about the volkszaehler-dev mailing list