[exim] Get msg:fail: event after "retry timeout exceeded"

Page principale
Supprimer ce message
Répondre à ce message
Auteur: Dmitriy Makarov
Date:  
À: exim-users
Sujet: [exim] Get msg:fail: event after "retry timeout exceeded"
Hello,

I am trying to track the final delivery status of sent email by the "event_action" option.

Faced with the issue to get "msg:fail:*" event after long retry period and finally "retry timeout exceeded" case (when nothing is listen on 25 port on recipient's MTA),
there in no event when message expires and bounce "Mail delivery failed" genereated.

What I was expected : one of msg:fail:* event appears according http://www.exim.org/exim-html-current/doc/html/spec_html/ch-events.html

msg:fail:delivery      after    main        per recipient
msg:fail:internal      after    main        per recipient


but got nothing.


Adding event_raise function near "retry timeout exceeded" seems did event as I was expected, like:

./src/retry.c:

           log_write(0, LOG_MAIN, "** %s%s%s%s: retry timeout exceeded",
            addr->address,
           (addr->parent == NULL)? US"" : US" <",
           (addr->parent == NULL)? US"" : addr->parent->address,
           (addr->parent == NULL)? US"" : US">");


 +++      (void) event_raise(event_action,
 +++                    US"msg:fail:internal", addr->user_message);


          if (addr == endaddr) break;



Any advice to achive "msg:fail:*" event without hacking sources?

Thanks!

Using Exim 4.89.