Re: Nagios SIGSEGV on FreeBSD 8

From: Stefan Bethke <stb_at_lassitu.de>
Date: Wed, 23 Sep 2009 00:58:01 +0200
Am 22.09.2009 um 23:29 schrieb Scott Lambert:

> I've posted this to FreeBSD-ports and Nagios-Users without a nibble.
>
> I've been running a FreeBSD 8-BETA2 server for DNS on a network I
> recently took over.  No problems.  We needed to get Nagios running on
> that network to watch all the hosts in RFC 1918 space.  Taking the  
> easy
> route, I just installed the Nagios 3.0.6 port on this 8-BETA2 box.
>
> Nagios runs great until an acknowledged down host (with acknowledgment
> comment) comes back up.  Nagios exits on a SIGSEGV.  It seems to only
> happen when we have retention data (retention.dat) showing the host
> down.  If we just restart Nagios without removing the retention.dat
> file, it exists on SIGSEGV the next time it tries to mark the host  
> up.  I
> upgraded to the nagios-devel (Nagios 3.1.2) port and we have the same
> problem.

I'v discovered this bug in Nagios some weeks ago, but posting to  
nagios-devel did not elicit a response.  The problem is a use-after- 
free bug in the code that deals with comments (or it was in my case  
anyway).

The bug leads to a SEGV because -current (including all 8.0 betas) has  
malloc flags set that make free write a canary value to the just-freed  
block.  If you move up to rc1, or set the "j" flag, nagios appears to  
work.

If you need references to the threads on freebsd-ports and nagios- 
devel, let me know.


HTH,
Stefan

-- 
Stefan Bethke <stb_at_lassitu.de>   Fon +49 151 14070811
Received on Tue Sep 22 2009 - 20:58:05 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:55 UTC