[syslog-ng] [Bug 128] template() broken in latest 3.3 git

Balazs Scheidler bazsi at balabit.hu
Wed Jul 20 12:28:40 CEST 2011


On Tue, 2011-07-19 at 13:14 +0100, Nix wrote:
> On 19 Jul 2011, Gergely Nagy verbalised:
> 
> > Nix <nix at esperi.org.uk> writes:
> >
> >> Full syslog-ng.conf attached, sorry that it's so ugly and verbose, I
> >> want a proper lisp-style macro system. :)
> >
> > Working on it! :] (3.3 also has block{}, which would make your config a
> 
> Aha, still known broken, just didn't want it to fly under the rug.
> 
> > lot more compact - I'll post a block{}-ized version aswell, when I had a
> > little time looking at this issue).
> 
> Ooo. That feature looks really neat! Doesn't seem to be documented
> anywhere...
> 
> ... ah. I should be following baszi's blog, shouldn't I?
> 
> > As for the template() bug, I'll look into that as soon as possible
> > aswell (friday latest, unless something unexpected happens, perhaps
> > earlier).
> 
> Assuming I don't get to it first (looks at todo list, laughs
> despairingly).
> 

I'm starting to think that I was not in the proper mood, when I've
committed this patch:

commit 2443b07b90c822414a628aae6a9ca513357b52fc
Author: Balazs Scheidler <bazsi at balabit.hu>
Date:   Sat Jun 11 14:09:01 2011 +0200

    template: make template compilation thread safe

This broke both inline templates (which Gergely has fixed), and external
templates, which Nix has noticed.

This patch finally makes both work for me:

commit 091f4c093b4836114badc8a7a4863bdac8757f42
Author: Balazs Scheidler <bazsi at balabit.hu>
Date:   Wed Jul 20 12:25:01 2011 +0200

    cfg-grammar: fixed template expansion for externally defined templates
    
    This patch fixes template expansion even if the template is not defined
    inline, but rather as an external object, referenced at a destination.
    
    Reported-By: Nix <nix at esperi.org.uk>
    Signed-off-by: Balazs Scheidler <bazsi at balabit.hu>


-- 
Bazsi




More information about the syslog-ng mailing list