[Exim] Re: Re: Re: pipe transport

Top Page
Delete this message
Reply to this message
Author: Derrick 'dman' Hudson
Date:  
To: exim-users
Subject: [Exim] Re: Re: Re: pipe transport
--
On Thu, Jul 04, 2002 at 02:00:40PM +0200, Torsten Curdt wrote:
| Hi, Derrick,

|
| > | Do you thing a bash script could do that? Or do I need to code it by
| > | myself?
| >
| > Yes.
| >
| > Sample C program to crash on-demand <g>.

|
| probably the most useful program ever written ;-)


LOL!

| ...but thanks for the code!


You're welcome.

| <snip/>

|
| > That exit code of 139 is very consistent on my system. You might even
| > be able to simply list that as a temporary error in your exim config.

|
| do you really think so?


Yes.

| I was assuming that the whole exim child dies and I will have no
| return code at all!?


The child on the receiving end of the pipe dies, and apparently the
exim process gets back a return code that indicates the child died
with SEGV (which is how it can log it and handle it rather gracefully).

| so I thought you mean a wrapper to catch the signal and return a
| specific code then...


That's what I meant, but as I was creating that wrapper (the one-liner
I posted, just replace the echo's with exit) I noticed that the shell
did have an exit code from the bad C program. Knowing that, the
solution can be simplified to simply telling exim to treat that code
as a temporary failure. Try it and find out! (that's what the C
program is for -- it allows you to control when it crashes and when it
doesn't for testing)

-D

--

In his heart a man plans his course,
but the Lord determines his steps.
        Proverbs 16:9


http://dman.ddts.net/~dman/

--
[ Content of type application/pgp-signature deleted ]
--