diff options
-rw-r--r-- | sysklogd/syslogd.c | 4 |
1 files changed, 3 insertions, 1 deletions
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); } } |