Autor: Sergei Gerasenko Data: A: exim-users Assumpte: Re: [Exim] ${pipe_addresses}
> The magic is that when it appears in a command for a pipe transport, the > delivery addresses get inserted into the command's arguments, *one
> address per argument*. If it were a regular variable, the complete list
> of addresses would be given in a single argument. So if you have
>
> command = /some/thing $pipe_addresses
>
> and the pipe is delivering to a@b, c@d, and e@f, the command is called
> with three separate arguments:
>
> arg[0] = /some/thing
> arg[1] = a@b
> arg[2] = c@d
> arg[3] = e@f
>
> If $pipe_addresses were a normal variable, you would have
>
> arg[0] = /some/thing
> arg[1] = a@b c@d e@f
>
> But that is not what happens. It is done this way so that the script
> does not have to parse a list of addresses.
This example explains everything indeed. It also makes sense now that
only "batch" is used in conjunction with ${pipe_addresses} because if it
was BSMTP, then all those addresses would be in RCPT commands and we
wouldn't have to go into the trouble of passing them as arguments.