Hello,since exim 4.75, my pipe transport is not able to transfer more than 64kB of data. It is configured as follows:
e2s_transport: driver = pipe ignore_status = true path = /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin command = /usr/bin/email2system $address_data max_output = 50M user = mail group = mail initgroups = true home_directory = /var/spool/mailIn the shell script /usr/bin/email2system, I use "tee" to read the data from standard input and to save it into a file ("tee" because I also send it to a shell function for further processing). From exim 4.75 on, this file receives at most 65536 bytes.
I tracked down the problem to the following line in src/child.c, introduced in exim 4.75 (line 343, line 341 in exim 4.80):
signal(SIGPIPE, SIG_DFL);If I remove this line in current exim 4.80, everything works as expected. So I think that enabling default handling for SIGPIPE is wrong as it leads to data loss.
What do you think? Regards, Christoph
pgpPd8B1hxmAQ.pgp
Description: Digitale PGP-Signatur
-- ## List details at https://lists.exim.org/mailman/listinfo/exim-dev Exim details at http://www.exim.org/ ##
