Vladimir Sharun wrote: > Привет, > > Потому что сейчас девелоперы exim'а работают над соблюдением типизации. > > Если раньше конструкции типа condition = {lookup} (без if) работали, то > сейчас - с очень переменным успехом.
То есть есть шанс, что рано или поздно и конструкция "accept condition = ${lookup{$local_part@$domain}lsearch{/etc/dovecot/aliases}{yes}{no}}" работать перестанет? Надо будет везде оборачивать в bool{...} ? > > Я вот такого типа конструкции проверяю через exim -be - выпадаешь в консоль > expression'ов и можно тестировать, только вместо expansion variables надо > использовать живые значения. Лукапы как минимум в mysql он в консоли делает > ок. Можно включить дебаг - покажет что он с чем сравнивает и почему факап. > > Да, в консоли я хз что там за редактор (если он вообще есть), лучше > копипастой вставлять готовые строки и enter. Можно на stdin ему. Я так и смотрю: echo '${lookup{v...@xxxx.com}lsearch{/etc/dovecot/aliases}{yes}{no}}' | exim -be потом стрелкой верх и меняю параметр. > > вторая тема - я бы врапнул вот эти длинные лукапы в named list - легче читать Примерчик можно? > > и третья тема (смое важное) - результат лукапа - это value, которое > при bool сравнении всегда будет или false или true - уже не помню; > если вам надо "есть или нет" надо использовать конструкцию типа > {bool{${lookup{$item}nwildlsearch{some_file}...} Зачем, почему? Работает же так root@mail3:/etc/exim4# echo 'bool{${lookup{v...@xxxx.com}lsearch{/etc/dovecot/users}{yes}{no}}}' | exim -be > bool{yes} > root@mail3:/etc/exim4# echo 'bool{${lookup{v...@xxxx.com}lsearch{/etc/dovecot/users}{yes}{no}}}' | exim -be > bool{no} > > Вот над этой конструкцией я потел часа два: > condition = ${if forall{<\n ${lc:${lookup dnsdb{ptr=$sender_host_address}}}} > {bool{${lookup{$item}nwildlsearch{/lists/HOSTS_REGEX}{1}{0}}}}} > > Тут все три секса сразу: и цикл forall, и передача $item в lookup, и > приведение к boolean результата лукапа. Для истинных поклонников sendmail.cf, чтобы не расслаблялись :-) -- Victor Sudakov, VAS4-RIPE, VAS47-RIPN 2:5005/49@fidonet http://vas.tomsk.ru/ _______________________________________________ Exim-users mailing list Exim-users@mailground.net http://mailground.net/mailman/listinfo/exim-users