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; | |||
361 | v->iov_base = msg; | 361 | v->iov_base = msg; |
362 | v->iov_len = strlen(msg); | 362 | v->iov_len = strlen(msg); |
363 | 363 | ||
364 | writev_retry: | ||
364 | if ( -1 == writev(remotefd,iov, IOV_COUNT)){ | 365 | if ( -1 == writev(remotefd,iov, IOV_COUNT)){ |
365 | error_msg_and_die("syslogd: cannot write to remote file handle on " | 366 | if (errno == EINTR) goto writev_retry; |
367 | error_msg_and_die("syslogd: cannot write to remote file handle on" | ||
366 | "%s:%d",RemoteHost,RemotePort); | 368 | "%s:%d",RemoteHost,RemotePort); |
367 | } | 369 | } |
368 | } | 370 | } |