diff options
author | Vladimir Homutov <vl@nginx.com> | 2018-05-08 19:35:56 +0300 |
---|---|---|
committer | Vladimir Homutov <vl@nginx.com> | 2018-05-08 19:35:56 +0300 |
commit | 644d26e841ec06023d0dc3eb9b624b404043c473 (patch) | |
tree | ed9d92c6fe5891cec4aee23462d144925b9f76f8 /src/core/ngx_syslog.c | |
parent | 68b50f71e193e58ee117ef36f25387cbaa75edf3 (diff) | |
download | nginx-644d26e841ec06023d0dc3eb9b624b404043c473.tar.gz nginx-644d26e841ec06023d0dc3eb9b624b404043c473.zip |
Syslog: re-open syslog udp socket on send error (ticket #1477).
Previously, only unix domain sockets were reopened to tolerate cases when
local syslog server was restarted. It makes sense to treat other cases
(for example, local IP address changes) similarly.
Diffstat (limited to 'src/core/ngx_syslog.c')
-rw-r--r-- | src/core/ngx_syslog.c | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/src/core/ngx_syslog.c b/src/core/ngx_syslog.c index 0a67928e0..e2f9b6cba 100644 --- a/src/core/ngx_syslog.c +++ b/src/core/ngx_syslog.c @@ -289,9 +289,7 @@ ngx_syslog_send(ngx_syslog_peer_t *peer, u_char *buf, size_t len) n = ngx_os_io.send(&peer->conn, buf, len); } -#if (NGX_HAVE_UNIX_DOMAIN) - - if (n == NGX_ERROR && peer->server.sockaddr->sa_family == AF_UNIX) { + if (n == NGX_ERROR) { if (ngx_close_socket(peer->conn.fd) == -1) { ngx_log_error(NGX_LOG_ALERT, ngx_cycle->log, ngx_socket_errno, @@ -301,8 +299,6 @@ ngx_syslog_send(ngx_syslog_peer_t *peer, u_char *buf, size_t len) peer->conn.fd = (ngx_socket_t) -1; } -#endif - return n; } |