On 11/20/10 20:24, Victor Ustugov wrote:
> \N^195\.2\.252\.\d+(\.[^\.]+)+(\.[a-z]{2,6})$\N : ${if
> match{$acl_m_key}{\N^195\.2\.252\.\d+\.\N$sender_address_domain}{deny :
> Access denied : Suspicious MX record $acl_m_key}{warn pause=20
> greylist=10 : Suspicious MX record $acl_m_key}}
>> буду благодарен тому, кто придумает, как прямо в тексте регулярного
> выражения до первого двоеточия указать, что имя хоста MX записи должно
> оканчиваться на $sender_address_domain.
>> пока же приходится выполнять вторую проверку регулярным выражением.
> именно для его выполнения и потребовался expand результатов первого лукапа.
>> значение $acl_m_key при этом равно аргументу поиска, т. е. в данном
> случае имени хоста MX записи. значение $acl_m_key используется для
> вывода имени хоста MX записи в лог файл exim'а, при добавлении поля
> заголовка в письмо или в ответе SMTP клиенту.
А нельзя разве откусить $sender_address_domain от $acl_m_key перед
поиском? То есть, вместь того, чтобы делать
match
(195.2.252.124.domoswery.ru)
(^195\.2\.252\.\d+\.$sender_address_domain$)
делать
match
(195.2.252.124.)
(^195\.2\.252\.\d+\.$)
Другими словами так:
prefix1.suffix = prefix2.suffix <=> prefix1 = prefix2