Nagios SIGSEGV on FreeBSD 8

Scott Lambert lambert at
Wed Sep 23 00:43:11 UTC 2009

Bcc:ing port to close the thread there.

On Wed, Sep 23, 2009 at 12:58:01AM +0200, Stefan Bethke wrote:
> 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.

"sudo ln -s 'j' /etc/malloc.conf" seems to have done the trick.  Nice,
easy, fix (or bandaid?).

I don't know how I failed to find your thread before.

I found your thread on nagios-devel:

Thank you for taking the time to figure this out in the first place and
to reply to my message.

Scott Lambert                    KC5MLE                       Unix SysAdmin
lambert at

More information about the freebsd-ports mailing list