Я пытаюсь настроить системный фильтр exim, он должен быть пропущен для определенных получателей, но условие всегда не выполняется:
Фильтр выглядит так:
# Exim filter
if foranyaddress $h_to: ( $thisaddress contains "lists.example.loc" )
then
finish
elif $h_X-SIGN-ADDED: is not contains "yes"
then
headers add "X-SIGN-ADDED: yes"
seen pipe "/etc/mailsystem/sign/sign.py $sender_address $recipients"
endif
мой test.msg
Message-ID: <4FE823B6.9040905@exmaple.loc>
Date: Mon, 25 Jun 2012 12:39:18 +0400
From: Hikaru <test@lists.exmaple.loc>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:13.0) Gecko/20120605 Thunderbird/13.0
MIME-Version: 1.0
To: <testuser@lists.exmaple.loc>
Subject: 1
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
1
И команда для запуска тестирования:
exim -bF exim.filter -f sender@example.loc -bfd lists.example.loc <test.msg
Почему он всегда запускает конвейер к сценарию? заранее спасибо
Мне кажется, я нашел, почему это не сработает: условие "foranyaddress" ожидает список адресов и не будет работать, если получатель только один. Итак, если заголовок «Кому:» разложить на несколько адресов, все заработает.