[OLSR-users] Spurios crashes (SIGSEGV) on exit in 0.5.0 (and earlier)
Tue May 8 15:34:10 CEST 2007
I just bothered to look at spurious crashes I have observed with olsrd for a long time.
It turns out that olsr_shutdown gets called from signal context and uses
forbidden library calls. The crash I observed was in vsyslog, but I'm sure
other things could go wrong as well. In Unix only a very limited subset of
C library functions is signal safe and may be used from signal handlers (see http://www.opengroup.org/onlinepubs/009695399/functions/xsh_chap02_04.html
for the full list).
Looking at olsr_shutdown gave me a creepy feeling. This function must never
be called from a signal context. The right way would be to handle this signal
In Unix you can turn an asynchronous signal into a synchronous notification by
opening a pipe and writing the signal number in the write end and poll the read end
for activity (write is signal safe).
Heute schon einen Blick in die Zukunft von E-Mails wagen? Versuchen Sie´s mit dem neuen Yahoo! Mail. www.yahoo.de/mail
More information about the Olsr-users