summaryrefslogtreecommitdiff
path: root/doc/doc-docbook
diff options
context:
space:
mode:
authorPhil Pennock <pdp@exim.org>2011-02-13 00:09:18 -0500
committerPhil Pennock <pdp@exim.org>2011-02-13 00:09:18 -0500
commit2fe767453007d1b015f52313d16dc61635085621 (patch)
tree2fd6f75261353fa40cb2b1ef26e31915b19feb84 /doc/doc-docbook
parentb72aab7255159ea38ddcd7eef1051da0f07a7b8d (diff)
Implement freeze_signal on pipe transport.
Patch from Jakob Hirsch. fixes bug 1042
Diffstat (limited to 'doc/doc-docbook')
-rw-r--r--doc/doc-docbook/spec.xfpt17
1 files changed, 16 insertions, 1 deletions
diff --git a/doc/doc-docbook/spec.xfpt b/doc/doc-docbook/spec.xfpt
index 9dacb979c..b75e36ba4 100644
--- a/doc/doc-docbook/spec.xfpt
+++ b/doc/doc-docbook/spec.xfpt
@@ -21033,9 +21033,14 @@ later"&. In this case, delivery is deferred. Details of a permanent failure are
logged, but are not included in the bounce message, which merely contains
&"local delivery failed"&.
+If the command exits on a signal and the &%freeze_signal%& option is set then
+the message will be frozen in the queue. If that option is not set, a bounce
+will be sent as normal.
+
If the return code is greater than 128 and the command being run is a shell
script, it normally means that the script was terminated by a signal whose
-value is the return code minus 128.
+value is the return code minus 128. The &%freeze_signal%& option does not
+apply in this case.
If Exim is unable to run the command (that is, if &[execve()]& fails), the
return code is set to 127. This is the value that a shell returns if it is
@@ -21244,6 +21249,16 @@ is set, failure to exec is treated specially, and causes the message to be
frozen, whatever the setting of &%ignore_status%&.
+.new
+.otion freeze_signal pipe boolean false
+.cindex "signal exit"
+.cidenx "&(pipe)& transport", "signal exit"
+Normally if the process run by a command in a pipe transport exits on a signal,
+a bounce message is sent. If &%freeze_signal%& is set, the message will be
+frozen in Exim's queue instead.
+.wen
+
+
.option ignore_status pipe boolean false
If this option is true, the status returned by the subprocess that is set up to
run the command is ignored, and Exim behaves as if zero had been returned.