Exiscan-ACL'nin “spam” kuralı hem SpamAssassin hem de Brightmail'i kullanabilir ve ileti bir döküntüyse bu kural bunu belirtecek şekilde tetiklenir. Exim öntanımlı olarak, localhost üzerinde çalışan bir SpamAssassin artalan sürecine (spamd) bağlanır. Ancak konak adresi ve port, Exim yapılandırma dosyasının ana bölümüne bir spamd_address ataması ile belirtilerek başka bir konaktaki SpamAssassin'in kullanılması sağlanabilir. Daha ayrıntılı bilgi için bu yamayla birlikte gelen exiscan-acl-spect.txt dosyasına bakınız.
Bizim gerçeklenimimizde, spam olarak tasnif edilmiş iletileri reddedeceğiz. Bununla birlikte, bu tür iletilerin bir kopyasını, kullanıcı arasıra
Hatalı Olumlamalar için bu dizini tarayabilsin diye, bir süreliğine ayrı bir posta dizininde tutacağız.
Exim, kabul edilen bir iletiye freeze adı verilen bazı denetimler uygulayabilir. Exiscan-ACL yaması bu denetimlere, fakereject ismiyle başka denetimler ekler. Bu şöyle bir SMTP yanıtına sebep olur:
550-FAKEREJECT id=ileti-kimliği
550-İletiniz reddedildi ancak değerlendirilmek üzere tutuluyor.
550 Eğer meşru bir iletiyse, hala alıcılarına teslim edilebilir.
Bu özelliği kendi gerçeklenimimize aşağıdaki satırları
acl_data içinde sonuncu
accept deyiminden önceye yerleştirerek kullanacağız:
# $spam_score ve $spam_report'a veri sağlamak için SpamAssassin'i
# çağıracağız. Tasnife bağlı olarak, $acl_m9 "ham" veya "spam"
# değerini alacak.
#
# İleti spam olarak tasnif edilmişse, reddetmiş gibi yapacağız.
#
warn
set acl_m9 = ham
spam = mail
set acl_m9 = spam
control = fakereject
logwrite = :reject: Rejected spam (score $spam_score): $spam_report
# İletinin başlığına bir X-Spam-Status: satırı ekleyelim.
#
warn
message = X-Spam-Status: \
${if eq {$acl_m9}{spam}{Yes}{No}} (score $spam_score)\
${if def:spam_report {: $spam_report}}
logwrite = :main: Classified as $acl_m9 (score $spam_score)
Bu örnekte,
$acl_m9 değişkeni “ham” değeriyle ilklendirildi. SpamAssassin
mail kullanıcısı olarak çağrıldı. Eğer ileti spam olarak tasnif edilmişse,
$acl_m9'a “spam” değeri atanıp, yukarıdaki
FAKEREJECT yanıtı verildi. Bunu yapmada ana fikir,
Posta Teslimatçısının veya alıcının
Posta İstemcisinin bu başlığı kullanarak döküntü postayı ayrı bir dizinde toplayabilmesine imkan sağlamaktır.