Author: Reinaldo Matukuma Date: To: exim-users Subject: [exim] How to identify when a receive-and-deliver dont need more
the message on the queue
Hello.
There are any way to know when a deliver process launched by a smtp receive process has successfully delivered by all the transports used for all the address received or also expanded by the alias redirect router?
Explaining better...
I know that the smtp receive process call another process to do the transport deliver for local deliver and for remote deliver. But both local and remote deliver suffer by problems to complete (disk full, nfs unavailable by error, smtp timeout, etc) and then the message continue on queue. So, I cannot simply assumes that when the deliver process launched by the smtp receive process reach at the end the message has effectively delivered. But, I need to know if there are some return code or return message or exim variable or exim hook that informs when the message has successfully delivered for all its recipients. I want to know this to don't be dependent of another process that search at exim log to simply increment a statistic counter on a database that I had implemented and that needs to look like real-time.
If there are no exim variable available to inform this or no exim hook that I can use, I can make a patch to implement just a popen to call a simple program to do the correct insert on the database but i need to know if there are some return code to do this and where are the best position in exim source functions to put the popen call.