> >>   # acl_check_rcpt:
> >>       warn    recipients  = lsearch;/etc/exim/strict_recipients
> >>           set acl_m0  = catched
> >>   # acl_check_data:
> >>       deny  message   = "Denided by message size = $message_size"
> >>           condition = ${if eq {$acl_m0}{catched} {yes}{no}}
> >>           condition = ${if >{$message_size}{100k} {yes}{no}}
> >>           logwrite  = "$recipients Denided by message size"

> >Можно письмо совсем не доставить (как сейчас), но в дополнение к
> >нормальному баунсу можно прямо из ACL отправить письмо отправителю,
> >получателю и админу с сообщением по-русски, что письмо от
> >такого-то отправителя такому-то получателю такого-то размера
> >не доставлено из-за превышения лимита размера письма.
> >Устраивает такое решение?
> >  
> Да, более чем!
> Правда, совершенно неясно как прямо из ACL это осуществить...

В начале конфига:

untrusted_set_sender = *
local_from_check = false

В acl_check_data вместо вышеприведенного
после всех проверок на спам:

  deny message = "Denied by message size = $message_size"
       condition = ${if def:acl_m0}
       condition = ${if >{$message_size}{100k}}
       logwrite = "$recipients Denied by message size"
       continue = ${run{/bin/sh -c "\N{\N echo Subject: \
         '=?koi8-r?B?8MnT2M3PIM7FIMTP09TB18zFzs8=?=';\
         # Письмо не доставлено
         echo 'Content-Type: text/plain; charset=koi8-r';\
         echo Content-Transfer-Encoding: 8bit;\
         echo; echo '${sg{Письмо от $sender_address для $recipients\n\
         с темой $h_subject\nразмером ${eval:$message_size/1024} килобайтов \
         не доставлено из-за превышения\n\
         лимита размера письма (100 килобайтов).}{'}{}}'; \
         \N}\N | /usr/local/sbin/exim -f root ad...@example.com \
         ${sg{${filter{<, $sender_address,$recipients}\
         {!match{$item}{\N(^-|[^\w.=+%!@-])\N}}}}{,}{ }}}}

Тут я подразумеваю, что у Exim файл конфига в кодировке koi8-r.
Если он в кодировке utf-8, то поправьте Content-Type и Subject.
Также подразумеваю, что в домене $primary_hostname существует адрес root@.
Замените ad...@example.com на адрес админа и проверьте пути
(/bin/sh и /usr/local/sbin/exim - для FreeBSD).
Проверьте, расскажите нам работает ли.

_______________________________________________
Exim-users mailing list
Exim-users@mailground.net
http://mailground.net/mailman/listinfo/exim-users

Reply via email to