On Mon, Jun 08, 2009 at 01:59:01PM +0200, Thomas kinghorn wrote:
> condition = ${if
> or{{match_address{$authenticated_id}{AUTH_LIST_1}}{eq{$value}{AUTH_LIST_2}}}}
> logwrite = :main: Compromised Account: Authid: $authenticated_id
>
> When I send a test mail using smtp_auth, the mail using the auth_id which is
> an email address, it denies the message correctly.
>
> However, when I try with the auth details smtpauth-username, if fails.
>
> The log shows:
>
> no @ found in the subject of an address list match:
> subject="smtpauth-username" pattern="user@???"
You're calling match_address but not giving it an address. As the error
message says, really.
One way of fixing this would be to wrap the "match_address" condition inside
a "match" condition, i.e. in pseudo-code:
condition = (match($value, '@') AND match_address($value, AUTH_LIST_1))
OR ($value is in AUTH_LIST_2)
That "eq" you've got for AUTH_LIST_2 looks wrong, too. Probably that's meant
to be some kind of lookup.
--
Dave Evans
http://djce.org.uk/
http://djce.org.uk/pgpkey