summaryrefslogtreecommitdiffstats
path: root/maildrop/filter.C
diff options
context:
space:
mode:
Diffstat (limited to 'maildrop/filter.C')
-rw-r--r--maildrop/filter.C19
1 files changed, 17 insertions, 2 deletions
diff --git a/maildrop/filter.C b/maildrop/filter.C
index 373eb47..d59e2ec 100644
--- a/maildrop/filter.C
+++ b/maildrop/filter.C
@@ -185,7 +185,15 @@ int maxfd=pipe1.fds[0];
if (n < 0)
{
- if (errno != EINTR) // Perfectly OK
+ if (errno != EINTR
+#ifdef EAGAIN
+ && errno != EAGAIN
+#endif
+#ifdef EWOULDBLOCK
+ && errno != EWOULDBLOCK
+#endif
+
+ ) // Perfectly OK
{
FD_CLR(pipe0.fds[1], &writefd);
pipe0.close1();
@@ -211,7 +219,14 @@ int maxfd=pipe1.fds[0];
if (readbuflen < 0)
{
- if (errno != EINTR)
+ if (errno != EINTR
+#ifdef EAGAIN
+ && errno != EAGAIN
+#endif
+#ifdef EWOULDBLOCK
+ && errno != EWOULDBLOCK
+#endif
+ )
{
merr << "maildrop: error reading from filter.\n";
errflag=1;