* Balazs Scheidler said: > > it anyway? It's not like openlog() returns a handle that's passed to > > syslog. Why force every user to deal with this? Especially since there's > > no real hint on the man page that it might be necessary. (Hmm, I guess > > that's the one man page I shouldn't complain about...:-)) > > I've just checked out glibc 2.1.2, and it does have error checking. If the > connection to the local syslogd is broken (e.g. a SIGPIPE or EPIPE is > received), the connection is reopened, and the message triggering EPIPE is > written to the console. Hmm.. then what I wrote in my previous mail doesn't hold valid anymore. Does the libc keep per-application state? > It's unfortunate, that sendmail opens a connection at startup, and this > connection is inherited through fork()-s, and if syslogd is restarted, the > broken connection is inherited, thus the first message of each forked > children is lost, and is sent to the console. Same happens with bind, I imagine. And also on 2.3.x kernels syslog doesn't start at all in the system bootup sequence - one has to start it by manually executing usin /etc/init.d/sys*log start. I guess it's some problem with the unix domain sockets on 2.3.x. marek
Attachment:
pgpHDzo0H4Wq4.pgp
Description: PGP signature