[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
re: lib/47055: libc diagassert issues
> (1) it calls syslog() blindly, so if an assertion happens in a program
> that hasn't called openlog(), it ends up using uninitialized state in
> syslog.c. The observable effect of this seems to be to issue syslog
> messages with no hostname field; however, it could be (or become,
> without much notice) a good deal worse.
that shouldn't be a problem. it sounds like a bug in syslog(3) itself.
i've never seen any requirement for openlog(3) being necessary and indeed
our documentation says:
The openlog() function provides for more specialized processing of the
messages sent by syslog() and vsyslog().
> (2) it isn't thread-safe. It frob a global variable (diagassert_flags)
> without locking. It also should probably be using syslog_r() rather
> than syslog().
probably. (i don't think we had syslog_r() back when diagassert
Main Index |
Thread Index |