diff options
author | Jonathan Rose <jrose@digium.com> | 2012-05-10 18:35:14 +0000 |
---|---|---|
committer | Jonathan Rose <jrose@digium.com> | 2012-05-10 18:35:14 +0000 |
commit | 8227f70cd70f497cb03c1f9aab63950bcd979d8b (patch) | |
tree | 4f4587c0997f7a2d7ad8c6ecc89c3ad2971d5027 /channels/chan_iax2.c | |
parent | 3430da58e9f168e608e46133225e0fc81589f6ef (diff) |
Coverity Report: Fix issues for error type CHECKED_RETURN for core
(issue ASTERISK-19658)
Reported by: Matt Jordan
Review: https://reviewboard.asterisk.org/r/1905/
........
Merged revisions 366094 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 366106 from http://svn.asterisk.org/svn/asterisk/branches/10
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@366126 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/chan_iax2.c')
-rw-r--r-- | channels/chan_iax2.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c index baee946f2..8903041db 100644 --- a/channels/chan_iax2.c +++ b/channels/chan_iax2.c @@ -4382,11 +4382,13 @@ static struct iax2_peer *realtime_peer(const char *peername, struct sockaddr_in /* Whoops, we weren't supposed to exist! */ peer = peer_unref(peer); break; - } + } } else if (!strcasecmp(tmp->name, "regseconds")) { ast_get_time_t(tmp->value, ®seconds, 0, NULL); } else if (!strcasecmp(tmp->name, "ipaddr")) { - ast_sockaddr_parse(&peer->addr, tmp->value, PARSE_PORT_IGNORE); + if (!ast_sockaddr_parse(&peer->addr, tmp->value, PARSE_PORT_IGNORE)) { + ast_log(LOG_WARNING, "Failed to parse sockaddr '%s' for ipaddr of realtime peer '%s'\n", tmp->value, tmp->name); + } } else if (!strcasecmp(tmp->name, "port")) { ast_sockaddr_set_port(&peer->addr, atoi(tmp->value)); } else if (!strcasecmp(tmp->name, "host")) { @@ -11653,6 +11655,7 @@ static void iax2_process_thread_cleanup(void *data) ast_mutex_destroy(&thread->init_lock); ast_cond_destroy(&thread->init_cond); ast_free(thread); + /* Ignore check_return warning from Coverity for ast_atomic_dec_and_test below */ ast_atomic_dec_and_test(&iaxactivethreadcount); } @@ -12234,7 +12237,10 @@ static int start_network_thread(void) AST_LIST_UNLOCK(&idle_list); } } - ast_pthread_create_background(&netthreadid, NULL, network_thread, NULL); + if (ast_pthread_create_background(&netthreadid, NULL, network_thread, NULL)) { + ast_log(LOG_ERROR, "Failed to create new thread!\n"); + return -1; + } ast_verb(2, "%d helper threads started\n", threadcount); return 0; } |