after log error, reset errno

This commit is contained in:
luwenpeng
2020-07-30 15:57:34 +08:00
parent 7e2f36d416
commit 13289d5a71
10 changed files with 103 additions and 5 deletions

View File

@@ -50,25 +50,37 @@ static int watchdog_kni_fd_make_keepalive(int fd)
if (setsockopt(fd, SOL_SOCKET, SO_KEEPALIVE, (const void *) &so_keepalive, sizeof(int)) == -1)
{
TFE_LOG_ERROR(g_default_logger, "watchdog fd setup setsockopt(SO_KEEPALIVE, %d) failed : %s",
so_keepalive, strerror(errno)); goto errout;
so_keepalive, strerror(errno));
/* after log, reset errno */
errno = 0;
goto errout;
}
if (setsockopt(fd, IPPROTO_TCP, TCP_KEEPCNT, (const void *) &tcp_keepcnt, sizeof(int)) == -1)
{
TFE_LOG_ERROR(g_default_logger, "watchdog fd setup setsockopt(TCP_KEEPCNT, %d) failed: %s",
tcp_keepcnt, strerror(errno)); goto errout;
tcp_keepcnt, strerror(errno));
/* after log, reset errno */
errno = 0;
goto errout;
}
if (setsockopt(fd, IPPROTO_TCP, TCP_KEEPINTVL, (const void *) &tcp_keepintvl, sizeof(int)) == -1)
{
TFE_LOG_ERROR(g_default_logger, "watchdog fd setup setsockopt(TCP_KEEPINTVL, %d) failed: %s",
tcp_keepintvl, strerror(errno)); goto errout;
tcp_keepintvl, strerror(errno));
/* after log, reset errno */
errno = 0;
goto errout;
}
if (setsockopt(fd, IPPROTO_TCP, TCP_KEEPIDLE, (const void *) &tcp_keepidle, sizeof(int)) == -1)
{
TFE_LOG_ERROR(g_default_logger, "watchdog fd setup setsockopt(TCP_KEEPIDLE, %d) failed: %s",
tcp_keepidle, strerror(errno)); goto errout;
tcp_keepidle, strerror(errno));
/* after log, reset errno */
errno = 0;
goto errout;
}
return 0;
@@ -155,6 +167,8 @@ static void watchdog_kni_eventcb(struct bufferevent *bev, short what, void *ctx)
if (what & BEV_EVENT_ERROR)
{
TFE_LOG_ERROR(__ctx->logger, "KNI watchdog connection broken: %s.", strerror(errno));
/* after log, reset errno */
errno = 0;
goto retry;
}
}
@@ -232,6 +246,8 @@ struct watchdog_kni * watchdog_kni_create(struct tfe_proxy * proxy, const char *
if (!__ctx->ev_base)
{
TFE_LOG_ERROR(logger, "failed at watchdog event_base_new(): %s", strerror(errno));
/* after log, reset errno */
errno = 0;
goto __errout;
}
@@ -243,6 +259,8 @@ struct watchdog_kni * watchdog_kni_create(struct tfe_proxy * proxy, const char *
if (unlikely(ret < 0))
{
TFE_LOG_ERROR(__ctx->logger, "Failed at creating watchdog thread: %s", strerror(errno));
/* after log, reset errno */
errno = 0;
goto __errout;
}