summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPhilip Hazel <ph10@hermes.cam.ac.uk>2006-10-31 11:14:17 +0000
committerPhilip Hazel <ph10@hermes.cam.ac.uk>2006-10-31 11:14:17 +0000
commitc1114884ce069db8d691e217cc79b2e5ff242df8 (patch)
tree2aba0c13b197455e7b0a125e05b9da14caed9970 /src
parent17af4a1772521e9a4174c37cc6aaa311003ad7cd (diff)
Close writing end of socket for ${readsocket before reading.
Diffstat (limited to 'src')
-rw-r--r--src/ACKNOWLEDGMENTS5
-rw-r--r--src/src/expand.c10
2 files changed, 12 insertions, 3 deletions
diff --git a/src/ACKNOWLEDGMENTS b/src/ACKNOWLEDGMENTS
index 15827ea0c..71f532f63 100644
--- a/src/ACKNOWLEDGMENTS
+++ b/src/ACKNOWLEDGMENTS
@@ -1,4 +1,4 @@
-$Cambridge: exim/src/ACKNOWLEDGMENTS,v 1.61 2006/10/24 15:01:26 ph10 Exp $
+$Cambridge: exim/src/ACKNOWLEDGMENTS,v 1.62 2006/10/31 11:14:18 ph10 Exp $
EXIM ACKNOWLEDGEMENTS
@@ -20,7 +20,7 @@ relatively small patches.
Philip Hazel
Lists created: 20 November 2002
-Last updated: 24 October 2006
+Last updated: 31 October 2006
THE OLD LIST
@@ -120,6 +120,7 @@ Jochen Erwied Fix for BDB 4.1 API
Stefan Esser Fix for DNS RR parsing bug
Peter Evans Suggested using modification time of "new" for time
of "mailbox last read" for maildir
+Andrew Findlay Patch to close writing end of ${readsocket
Michael Fischer
v. Mollard Suggested patch for exigrep -t option
Kevin Fleming Callout cache code
diff --git a/src/src/expand.c b/src/src/expand.c
index 665d3d8f9..4943bcb5c 100644
--- a/src/src/expand.c
+++ b/src/src/expand.c
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/src/src/expand.c,v 1.66 2006/10/30 14:59:15 ph10 Exp $ */
+/* $Cambridge: exim/src/src/expand.c,v 1.67 2006/10/31 11:14:18 ph10 Exp $ */
/*************************************************
* Exim - an Internet mail transport agent *
@@ -3833,6 +3833,14 @@ while (*s != 0)
}
}
+ /* Shut down the sending side of the socket. This helps some servers to
+ recognise that it is their turn to do some work. Just in case some
+ system doesn't have this function, make it conditional. */
+
+ #ifdef SHUT_WR
+ shutdown(fd, SHUT_WR);
+ #endif
+
/* Now we need to read from the socket, under a timeout. The function
that reads a file can be used. */