summaryrefslogtreecommitdiff
path: root/main/tcptls.c
diff options
context:
space:
mode:
authorKevin Harwell <kharwell@digium.com>2015-01-27 22:56:39 +0000
committerKevin Harwell <kharwell@digium.com>2015-01-27 22:56:39 +0000
commit61822e78ae8cab2f0da70f8b8349aa840e9a8932 (patch)
tree479b99828f7e3d0e3c6d26f39960bc1b06d3cbc2 /main/tcptls.c
parente2b493b8f0d04b5f881cf748001c3ef4b272d53a (diff)
tcptls: Bad file descriptor error when reloading chan_sip
While running through some scenarios using chan_sip and tcp a problem would occur that resulted in a flood of bad file descriptor messages on the cli: tcptls.c:712 ast_tcptls_server_root: Accept failed: Bad file descriptor The message is received because the underlying socket has been closed, so is valid. This is probably happening because unloading of chan_sip is not atomic. That however is outside the scope of this patch. This patch simply stops the logging of multiple occurrences of that message. ASTERISK-24728 #close Reported by: Thomas Thompson Review: https://reviewboard.asterisk.org/r/4380/ ........ Merged revisions 431218 from http://svn.asterisk.org/svn/asterisk/branches/11 git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/13@431219 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main/tcptls.c')
-rw-r--r--main/tcptls.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/main/tcptls.c b/main/tcptls.c
index 1930d61cf..dd2f5ea67 100644
--- a/main/tcptls.c
+++ b/main/tcptls.c
@@ -708,8 +708,9 @@ void *ast_tcptls_server_root(void *data)
}
fd = ast_accept(desc->accept_fd, &addr);
if (fd < 0) {
- if ((errno != EAGAIN) && (errno != EINTR)) {
+ if ((errno != EAGAIN) && (errno != EWOULDBLOCK) && (errno != EINTR) && (errno != ECONNABORTED)) {
ast_log(LOG_ERROR, "Accept failed: %s\n", strerror(errno));
+ break;
}
continue;
}