George L. Yermulnik wrote:
> 
> > > > > > А вот такие 2 условия, добавленные в acl_check_rcpt (контекст тоже 
> > > > > > привожу),
> > > > > > нормально выглядят или можно улучшить? А как бы их в одно 
> > > > > > логическое выражение
> > > > > > объединить, не подскажете?
> 
> > > > > >   # Accept mail for forwarded domains
> > > > > >   accept condition      = 
> > > > > > ${lookup{$local_part@$domain}lsearch{/etc/dovecot/aliases}{yes}}
> 
> > > > > >   # Accept valid recipient adresses in dovecot domains
> > > > > >   accept condition      = 
> > > > > > ${lookup{$local_part@$domain}lsearch{/etc/dovecot/users}{yes}}
> 
> > > > Хотел бы только понять синтаксис, как эти два условия объединить в ИЛИ.
> 
> > [dd]
> 
> > > Что-нить в таком духе:
> > >   accept condition      = ${or 
> > > {lookup{$local_part@$domain}lsearch{/etc/dovecot/aliases}} \
> > >                                
> > > {lookup{$local_part@$domain}lsearch{/etc/dovecot/users}} \
> > >                            }
> 
> > Благодарю! Хотя не вижу тут {yes} почему-то, как я привык.
> 
> А он там не нужен. Даже хуже может сделать.
> В этом контексте это значение по умолчанию, которое вернёт лукап, если
> зафейлится. А он же ж должен зафелить кондишен, если строка не была
> найдена, а не вернуть "yes".

Не, в вышеприведенном виде не работает с ошибкой:

failed to expand ACL string "${or 
{lookup{$local_part@$domain}lsearch{/etc/dovecot/aliases}} 
{lookup{$local_part@$domain}lsearch{/etc/dovecot/users}} }": "${or" is not a 
known operator (or a } is missing in a variable reference)

Я уж попробовал и через "${if or {..."  делать и всячески - не ест.
Нужна помощь клуба.

-- 
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

Ответить