[vz-dev] vzlogger 0.3.3-rc1
Thorben Thuermer
r00t at constancy.org
Fri Feb 3 01:22:49 CET 2012
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.
>
More information about the volkszaehler-dev
mailing list