Exim lendo o destinatário da mensagem durante o acl

2

Eu quero ser capaz de acessar o endereço de email do destinatário (ou parte local, não importa qual) durante a ACL como uma variável (por exemplo, eu quero ser capaz de usar "$ local_part")

A documentação parece implicar que a variável $ local_part está disponível durante o acl, no entanto, não é para mim.

Dentro da ACL de dados, bem como o rcpt

warn condition = true
     log_message = A

warn condition = true
     log_message = $local_part

warn condition = true
     log_message = B

produz essas linhas de log

2011-03-31 16:12:00 1Q5ODo-0000iy-9q H=.net (.com) [.150] Warning: A
2011-03-31 16:12:00 1Q5ODo-0000iy-9q H=.net (.com) [.150] Warning: B
2011-03-31 16:12:00 1Q5ODo-0000iy-9q <= [email protected] H=.net (.com) [.150] P=esmtp S=679 [email protected] from <[email protected]> for [email protected]
2011-03-31 16:12:01 1Q5ODo-0000iy-9q => [email protected] R=dnslookup T=remote_smtp H=aspmx.l.google.com [.27] C="250 2.0.0 OK"
2011-03-31 16:12:01 1Q5ODo-0000iy-9q Completed

Deveria haver uma linha de registro adicional "Aviso: cara", mas não há.

Alguém sabe por que isso pode estar acontecendo?

    
por Radmilla Mustafa 31.03.2011 / 22:25

1 resposta

0

Como a ACL de dados é executada uma vez para toda a mensagem e uma mensagem pode ter mais de um destinatário, as informações do destinatário não estarão disponíveis nesse contexto. Use o RCPT ACL se você precisar das informações do destinatário.

Da seção 42.14 na documentação do Exim:

When a MAIL or RCPT ACL, or either of the DATA ACLs, is running, the variables that contain information about the host and the message’s sender (for example, $sender_host_address and $sender_address) are set, and can be used in ACL statements. In the case of RCPT (but not MAIL or DATA), $domain and $local_part are set from the argument address.

    
por 08.08.2013 / 10:58

Tags