Xymon Mailing List Archive search

Sigsegv in Bbtest-net

3 messages in this thread

list Thomas Schenk · Fri, 21 Jul 2006 12:17:08 +0200 ·
Hi,

bbtest-net version 4.2-RC-20060712
SSL library : OpenSSL 0.9.7e 25 Oct 2004
LDAP library: OpenLDAP 20320

Statistics:
 Hosts total           :      444
 Hosts with no tests   :       28
 Total test count      :      665
 Status messages       :      640
 Alert status msgs     :        0
 Transmissions         :        9

Bbtest-net crashed the second time today, first time it was red for
about 3 minutes, the second time it was down about 20 minutes before I
restarted it manually. I am not sure what triggered the crash.

(gdb) bt
#0  0xb7cea83b in raise () from /lib/tls/libc.so.6
#1  0xb7cebfa2 in abort () from /lib/tls/libc.so.6
#2  0x08064361 in sigsegv_handler (signum=0) at sig.c:57
#3  <signal handler called>
#4  0xb7d3c087 in memcpy () from /lib/tls/libc.so.6
#5  0x08065532 in strbuf_addtobuffer (buf=0x0, newtext=0x1 <Address 0x1
out of bounds>, newlen=137255296) at strfunc.c:113
#6  0x080655e1 in addtostrbuffer (buf=0x1, newtext=0x82e5980) at
strfunc.c:124
#7  0x080629ca in addtostrstatus (p=0x1) at sendmsg.c:658
#8  0x0804eb86 in send_results (service=0x8080098, failgoesclear=1) at
bbtest-net.c:1716
#9  0x0805096c in main (argc=4, argv=0xbfbe2d74) at bbtest-net.c:2261

Regards,
Thomas
list Henrik Størner · Fri, 21 Jul 2006 16:52:09 +0200 ·
quoted from Thomas Schenk
On Fri, Jul 21, 2006 at 12:17:08PM +0200, Thomas Schenk wrote:
#6  0x080655e1 in addtostrbuffer (buf=0x1, newtext=0x82e5980) at
strfunc.c:124
#7  0x080629ca in addtostrstatus (p=0x1) at sendmsg.c:658
#8  0x0804eb86 in send_results (service=0x8080098, failgoesclear=1) at
bbtest-net.c:1716
#9  0x0805096c in main (argc=4, argv=0xbfbe2d74) at bbtest-net.c:2261
This is a bug which gets triggered if you do a traceroute when the
ping test fails. Patch attached.


Regards,
Henrik

-------------- next part --------------
--- bbnet/bbtest-net.c	2006/07/20 16:06:41	1.238
+++ bbnet/bbtest-net.c	2006/07/21 14:49:58
@@ -1739,7 +1739,7 @@
 			}
 		}
 
-		if ((service == pingtest) && t->host->traceroute) {
+		if ((service == pingtest) && t->host->traceroute && (STRBUFLEN(t->host->traceroute) > 0)) {
 			addtostatus("Traceroute results:\n");
 			addtostrstatus(t->host->traceroute);
 			addtostatus("\n");
list Thomas Schenk · Fri, 21 Jul 2006 17:33:10 +0200 ·
 Thanks ;)

Regards,
Thomas
quoted from Henrik Størner
This is a bug which gets triggered if you do a traceroute when the
ping test fails. Patch attached.


Regards,
Henrik