summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien Miller <djm@mindrot.org>2011-08-06 06:15:15 +1000
committerDamien Miller <djm@mindrot.org>2011-08-06 06:15:15 +1000
commit7741ce8bd2d0aef8aae0c2406eb51b617f1165fe (patch)
tree35d992393486ecb269fdcf16671490a366002b40
parentcd5e52ee784f0ff67b60ffeeab335ed64df688a4 (diff)
- djm@cvs.openbsd.org 2011/06/23 23:35:42
[monitor.c] ignore EINTR errors from poll()
-rw-r--r--ChangeLog6
-rw-r--r--Makefile.in4
-rw-r--r--monitor.c7
3 files changed, 14 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index f25da55fb..ae6de3f2a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
120110805
2 - OpenBSD CVS Sync
3 - djm@cvs.openbsd.org 2011/06/23 23:35:42
4 [monitor.c]
5 ignore EINTR errors from poll()
6
120110624 720110624
2 - (djm) [configure.ac Makefile.in sandbox-darwin.c] Add a sandbox for 8 - (djm) [configure.ac Makefile.in sandbox-darwin.c] Add a sandbox for
3 Darwin/OS X using sandbox_init() + setrlimit(); feedback and testing 9 Darwin/OS X using sandbox_init() + setrlimit(); feedback and testing
diff --git a/Makefile.in b/Makefile.in
index aeb67e1d8..3be3aa617 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,4 +1,4 @@
1# $Id: Makefile.in,v 1.324 2011/06/26 21:18:20 djm Exp $ 1# $Id: Makefile.in,v 1.325 2011/08/05 20:15:18 djm Exp $
2 2
3# uncomment if you run a non bourne compatable shell. Ie. csh 3# uncomment if you run a non bourne compatable shell. Ie. csh
4#SHELL = @SH@ 4#SHELL = @SH@
@@ -213,6 +213,8 @@ distclean: regressclean
213veryclean: distclean 213veryclean: distclean
214 rm -f configure config.h.in *.0 214 rm -f configure config.h.in *.0
215 215
216cleandir: veryclean
217
216mrproper: veryclean 218mrproper: veryclean
217 219
218realclean: veryclean 220realclean: veryclean
diff --git a/monitor.c b/monitor.c
index bb8003c67..a166fed2e 100644
--- a/monitor.c
+++ b/monitor.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: monitor.c,v 1.114 2011/06/17 21:44:30 djm Exp $ */ 1/* $OpenBSD: monitor.c,v 1.115 2011/06/23 23:35:42 djm Exp $ */
2/* 2/*
3 * Copyright 2002 Niels Provos <provos@citi.umich.edu> 3 * Copyright 2002 Niels Provos <provos@citi.umich.edu>
4 * Copyright 2002 Markus Friedl <markus@openbsd.org> 4 * Copyright 2002 Markus Friedl <markus@openbsd.org>
@@ -554,8 +554,11 @@ monitor_read(struct monitor *pmonitor, struct mon_table *ent,
554 pfd[0].events = POLLIN; 554 pfd[0].events = POLLIN;
555 pfd[1].fd = pmonitor->m_log_recvfd; 555 pfd[1].fd = pmonitor->m_log_recvfd;
556 pfd[1].events = pfd[1].fd == -1 ? 0 : POLLIN; 556 pfd[1].events = pfd[1].fd == -1 ? 0 : POLLIN;
557 if (poll(pfd, pfd[1].fd == -1 ? 1 : 2, -1) == -1) 557 if (poll(pfd, pfd[1].fd == -1 ? 1 : 2, -1) == -1) {
558 if (errno == EINTR || errno == EAGAIN)
559 continue;
558 fatal("%s: poll: %s", __func__, strerror(errno)); 560 fatal("%s: poll: %s", __func__, strerror(errno));
561 }
559 if (pfd[1].revents) { 562 if (pfd[1].revents) {
560 /* 563 /*
561 * Drain all log messages before processing next 564 * Drain all log messages before processing next