bbtest-net crash: 4.2 RC with (fixed) all-in-one patch
John Payne
john at sackheads.org
Mon Aug 7 18:13:48 CEST 2006
I'm a new subscriber, been busy reading the archives.
First off... I don't think I saw this patch go through which fixes a
problem exposed by the all-in-one patch:
*** hobbitd/hobbitd_alert.c.old Fri Aug 4 17:55:04 2006
--- hobbitd/hobbitd_alert.c Fri Aug 4 17:55:16 2006
***************
*** 395,401 ****
namelist_t *hinfo;
int testdur = 0;
FILE *logfd = NULL;
! activealerts_t *awalk = NULL;;
int paramno = 0;
argi++; if (argi < argc) testhost = argv[argi];
--- 395,401 ----
namelist_t *hinfo;
int testdur = 0;
FILE *logfd = NULL;
! activealerts_t *awalk = NULL;
int paramno = 0;
argi++; if (argi < argc) testhost = argv[argi];
I also found an off by one error in bbtest-net.c:
*** bbnet/bbtest-net.c.old Mon Aug 7 12:06:27 2006
--- bbnet/bbtest-net.c Mon Aug 7 12:07:28 2006
***************
*** 1144,1150 ****
}
else {
/* parent */
! char ip[IP_ADDR_STRLEN];
close(pfd[0]);
pingcount = 0;
--- 1144,1150 ----
}
else {
/* parent */
! char ip[IP_ADDR_STRLEN+1];
close(pfd[0]);
pingcount = 0;
IP_ADDR_STRLEN is defined to be 16, but in start_ping_service, it's
being used:
sprintf(ip, "%s\n", ip_to_test(t->host));
123.456.789.012 + \n + \0 is 17 characters. Whenever I had a
"full" IP address configured, bbtest-net would crash and burn.
The very simple patch above seems to have done the trick :)
More information about the Xymon
mailing list