user3618282
user3618282

Reputation: 1

unix daemon stops for unknown reason without coredump

I'm trying to find a bug in a linux-daemon written in C. The daemon is supposed to run in an endless loop answering requests. Once in a while it just stops for no apparent reason. No coredump is created. No kernel-segfault message is written to /var/log/messages

We already know that the death of the process is caused by certain requests but I cannot find the location within the source where the bug happens.

Here's what I did so far:

This all makes me believe, that the problem is not caused by a wrong pointer. Every exit()-statement is preceeded by syslog()-statements, so it's not the process that stops itself. And there are no users on this system that might kill the process.

What else might kill a unix process without a coredump ???

Peter

Upvotes: 0

Views: 81

Answers (1)

bltxd
bltxd

Reputation: 9113

The default handler of some signal.

If this is a daemon, it probably handles some network communications. By default, socket operations may raise SIG_PIPE signals. The default handler just exits the program.

Make sure you ignore SIG_PIPE.

Upvotes: 1

Related Questions