Re: [Exim] condition question

Top Page
Delete this message
Reply to this message
Author: George Schlossnagle
Date:  
To: Philip Hazel
CC: exim-users
Subject: Re: [Exim] condition question
Philip Hazel wrote:
>
> On Mon, 4 Dec 2000, George Schlossnagle wrote:
>
> > I am trying to to require two conditions to be met on a specific
> > transport:
> >
> > "${if and {{${lookup mysql{select login from accounts where
> > login='${local_part}'}{$value}fail}}{${perl{attach_check}{${message_body}}}}}}
> >
> > I keep getting misplaced { }'s errors. Any thoughts/suggestions?
>
> 1. You have a quote at the start and not at the end. This makes me
> suspicious that you may not have copied this correctly.


quote at the beginning does not belong. Otherwise all is good (I cut
and pasted form the -d9 output.

>
> 2. What option is this used for? Is it the "command" option? If so,
> beware of command-splitting problems. Take a look at the error message.
> Is it quoting the string back at you? If so, it is quoting only *part*
> of the string? If so, you have a command splitting problem.


This appears in a smartuser director

condition = ${if and {{${lookup mysql{select login from accounts where
    
login='${local_part}'}{$value}fail}}{${perl{attach_check}{${message_body}}}}}}

Baiscally, I want the mysql lookup to succeed as well as running a perl
script on the message body for certain validations.


>
> 3. It does seem to have matched brackets in the right places. What I
> would do is use the -be option to test it on its own, cutting various
> bits of it out until I spotted the problem. (Inserting a specific local
> part, of course.)


Even after Reading The Fine Manual in regards to this, I'm a bit
confused as to how to properly use the -be option.

>
> --
> Philip Hazel            University of Cambridge Computing Service,
> ph10@???      Cambridge, England. Phone: +44 1223 334714.