Add example ACL usage of ${run in exim spec.
authorTodd Lyons <tlyons@exim.org>
Thu, 19 Jul 2012 15:59:08 +0000 (08:59 -0700)
committerTodd Lyons <tlyons@exim.org>
Thu, 19 Jul 2012 15:59:08 +0000 (08:59 -0700)
doc/doc-docbook/spec.xfpt

index c8ed79102fd50396be4ccd5c720246a95163c843..19fb321ea0118318f409bf4f75db895f36e9276e 100644 (file)
@@ -9405,6 +9405,20 @@ can be the word &"fail"& (not in braces) to force expansion failure if the
 command does not succeed. If both strings are omitted, the result is contents
 of the standard output/error on success, and nothing on failure.
 
+.vindex "&$run_in_acl$&"
+The standard output/error of the command is put in the variable &$value$&.
+In this ACL example, the output of a command is logged for the admin to
+troubleshoot:
+.code
+warn  condition    = ${run{/usr/bin/id}{yes}{no}}
+      log_message  = Output of id: $value
+.endd
+If the command requires shell idioms, such as the > redirect operator, the
+shell must be invoked directly, such as with:
+.code
+${run{/bin/bash -c "/usr/bin/id >/tmp/id"}{yes}{yes}}
+.endd
+
 .vindex "&$runrc$&"
 The return code from the command is put in the variable &$runrc$&, and this
 remains set afterwards, so in a filter file you can do things like this: