This is why I love mailing lists! Thank you very much! That worked great!
Quoting Jakob Hirsch <[email protected]>: > David Cunningham, 2010-03-23 12:46: > >> The short of the story is that I need exim to execute another program >> upon the delivery of an email and send that program the following >> string: >> "/var/spool/maildirs/${substr_0_10:$tod_log}/${domain}/${local_part}/Maildir/new" > > What do you mean by "send"? Give as an argument? Write to its stdin? > >> For example, I tried adding a condition to my local_delivery transport >> that looked like this: >> >> condition = {run echo >> "/var/spool/maildirs/${substr_0_10:$tod_log}/${domain}/${local_part}/Maildir" >> >> /dev/shm/temp.file}{0}{1} > > RTFM: > > 1. The syntax is > ${run{<command> <args>}{<string1>}{<string2>}} > not > {run <command> ...} > > 2. "As in other command executions from Exim, a shell is not used by > default. If you want a shell, you must explicitly code it. " > > As you use redirection in your test, you need to use a shell there. > > 3. You have to give the full path to the executable you want to run. > (Unfortunately, this is not documented in the spec of the ${run...} > expansion item. Should probably be added.) > > So the expansion string would look like this: > > ${run {/bin/sh -c "echo > /var/spool/maildirs/${substr_0_10:$tod_log/${domain}/${local_part}/Maildir >>> /dev/shm/temp.file"}{0}{1}} > > You really have to take care here that nobody can do shell injection > (e.g. by using ';' or other special shell chars in the local part). This > only applies when using a shell, so you should probably avoid that. Just > use a little script, that logs what your program would get, e.g. > > #/bin/sh > echo $1 >> /tmp/bla.log > > and use that instead of your real program. > >> In this example I am simply trying to echo that string to a file in >> /dev/shm. I do not get an error in my logs, but I also do not get >> this file. > > Errors are hidden here. Look into $runrc to see what went wrong. > > -- ## List details at http://lists.exim.org/mailman/listinfo/exim-users ## Exim details at http://www.exim.org/ ## Please use the Wiki with this list - http://wiki.exim.org/
