From 4e116823f406a51daf1aeeaad538d613d2b51cc1 Mon Sep 17 00:00:00 2001
From: Eric Andersen <andersen@codepoet.org>
Date: Sat, 13 Apr 2002 14:07:32 +0000
Subject: Patch from Larry Doolittle to teach syslogd to not give up when errno
 is EINTR

---
 sysklogd/syslogd.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/sysklogd/syslogd.c b/sysklogd/syslogd.c
index ae5a1d0ba..e1e71378c 100644
--- a/sysklogd/syslogd.c
+++ b/sysklogd/syslogd.c
@@ -361,8 +361,10 @@ static const int IOV_COUNT = 2;
 		v->iov_base = msg;
 		v->iov_len = strlen(msg);          
 
+writev_retry:
 		if ( -1 == writev(remotefd,iov, IOV_COUNT)){
-			error_msg_and_die("syslogd: cannot write to remote file handle on " 
+			if (errno == EINTR) goto writev_retry;
+			error_msg_and_die("syslogd: cannot write to remote file handle on"
 					"%s:%d",RemoteHost,RemotePort);
 		}
 	}
-- 
cgit v1.2.3-55-g6feb