[syslog-ng]Bug in unix_stream/dgram() dest drivers 1.6.0rc4

Andreas Schulze syslog-ng@lists.balabit.hu
Tue, 17 Feb 2004 19:51:59 +0100


>>I think, the general question is:
>>Who is responsible to create (bind()) the socket?
>>The client or the server process? In general IMHO the server process.
> 
> absolutely true. the client could not even try to bind it.
> 
>>In destination {unix-dgram()} context syslogd acts like a server
>>process and should do the bind().
> 
> no. destination { unix-dgram() } is a client process. you want to use
> source { unix-dgram() } instead. (source in the context of syslog-ng
> means that messages are read _from_ this source, e.g. it behaves like a
> server for other processes)

Hmm. But if there is a client proc, that wants
to read messages _from_ syslog-ng?
In a context, where syslog-ng acts as a central
message multiplexer (a server context, from this
point of view).

In this case it would be fine to let syslog-ng
write messages _to_ a destination {unix-stream()}

Let mediate a bit. Feedback is welcome, of course.

Thx.
-- 
Best regards --Andreas Schulze
                [phone: +49.5246.80.1275, fax: +49.5246.80.2275]

| I believe, it was Dennis Ritchie who said something like:
|   "C is rarely the best language for a given task,
|    but it's often the second-best".
| The implication being that: "[...]"
|     http://www.ioccc.org/1990/dds.c