Re: [exim] Bug in Expansion conditions

Top Page
Delete this message
Reply to this message
Author: Forum
Date:  
To: Mike Brudenell, Exim Users, Tim Clarke
Subject: Re: [exim] Bug in Expansion conditions
Hello together,

and thank you for your answers.

The problem is that i am really not an expert of Exim configuration.
On my desperate search for an usable mail server concept i landed here 2008:
http://struction.de/projects/HOWTO_VirtualMail_Exim-MySQL-Spamassassin-ClamAV-Dovecot/?set_lang=en
As you can see the author didn't develop his concept further. He seems not to migrate to a newer exim server ever.

The parts i am talking about are parts i didn't understand complete.
The syntax of exim is really not simple to understand in the context of what you want to do. ;-)
Specially working with more complex conditions you get crazy with the brackets.

Like this here where i tried to get a structure that is nearly readible:

  condition = ${if and {{\
              eq {${lookup mysql{ SELECT DISTINCT CONCAT(username,'@',domain) AS email FROM user WHERE
username='${quote_mysql:$local_part}' AND domain='${quote_mysql:$domain}' AND SMTP_allowed='YES'}{true}{false}}}{true}\
            }{\
            or {{\
                and {{\
                    eq {${sg{$local_part_suffix}{^#([^#]+)#[0-9]\{8\}\$}{\$1}}}{before}\
                    }{\
                    lt {$tod_logfile}{${sg{$local_part_suffix}{^#[^#]+#([0-9]\{8\})\$}{\$1}}}\
                         }\
                     }\
                }{\
                and {{\
                    eq {${sg{$local_part_suffix}{^#([^#]+)#.*\$}{\$1}}}{fromdomain}\
                    }{\
                    eq {$sender_address_domain}{${sg{$local_part_suffix}{^#[^#]+#(.*)\$}{\$1}}}\
                         }\
                     }\
                    }\
            }\
            }\
           }\
        }


There is no example for a virtual mailserver howto integrate the most wanted features for a mail system.
That's the reason most of the people are using systems like ISPConfig using postfix instead of exim.

Specially including senseful conditions that are needed to make a mail server stable for instance against spam.
You must build your system for yourself from the ground up understanding every feature step by step.

At this time the server is running somehow and i am glad i can work with it, because i don't have the time to make it
perfect now.
Sorry.

Best regards
Karsten


Am 13.07.2017 um 13:27 schrieb Mike Brudenell:
> Hi, Karsten -
>
> I can't spot anyone replying to this so, belatedly…
>
> You might be looking at the wrong thing. In your message you seem yo say that your Exim configuration includes this:
>
>     acl_check_data:
>           condition = ${if < {$message_size}{1M}}

>
>
> If so then the error is accurate and is telling you that you've forgotten to start the statement with a verb. That is,
> you need something like an *accept*, *deny* or *warn* before your conditions (such as *condition*).
>
> The verb tells Exim what action to take when all the conditions in the ACL statement are met.
>
> Cheers,
> Mike B-)
>