[syslog-ng]Urgent: Mangled messages in pipe() destinations in versions >1.5.8
Balazs Scheidler
bazsi@balabit.hu
Sat, 28 Dec 2002 10:55:27 +0100
On Sat, Dec 28, 2002 at 12:05:12AM +0100, Andreas Schulze wrote:
> Balazs Scheidler wrote:
> > On Fri, Sep 27, 2002 at 02:47:25PM +0200, Carlos Inacio wrote:
>
> I think, you changed the internal buffering from a line based buffer
> to byte based buffer between 1.5.8 and 1.5.9.
> In 1.5.7 there isn't that problem.
> Maybe, line based buffering seems a better idea in this context.
>
> If you need better information, I could send you the complex config
> and a full truss ouput in private.
>
> Hope, this coveres the problem.
>
> Because a solution becomes more and more important for us, I hope
> that you can investigate this and maybe we can discuss a solution.
Thanks for the detailed report. I think I have found the problem this time.
Can you check this patch?
Index: pkt_buffer.c
===================================================================
RCS file: /var/cvs/syslog-ng/libol/src/pkt_buffer.c,v
retrieving revision 1.15
diff -u -r1.15 pkt_buffer.c
--- pkt_buffer.c 18 Dec 2002 12:40:28 -0000 1.15
+++ pkt_buffer.c 28 Dec 2002 09:53:00 -0000
@@ -132,7 +132,7 @@
if (self->super.writable)
(*self->super.writable) = 1;
}
- else if (res != 0) {
+ else {
/* this is slow, because of another memory move
* but this is run rarely anyway */
struct buffer_node *item;
--
Bazsi
PGP info: KeyID 9AF8D0A9 Fingerprint CD27 CFB0 802C 0944 9CFD 804E C82C 8EB1