From 7c7fb131a1503f5c470d3172fa687822b84fedce Mon Sep 17 00:00:00 2001 From: Riza Sulistyo Date: Wed, 26 Jun 2024 09:58:34 +0700 Subject: [PATCH] Fix coverity warning --- pjlib/src/pjlib-test/ioq_tcp.c | 2 +- pjmedia/src/pjmedia/endpoint.c | 6 ++++-- pjmedia/src/pjmedia/stream.c | 2 +- pjsip/src/pjsip-ua/sip_100rel.c | 6 ++++++ 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/pjlib/src/pjlib-test/ioq_tcp.c b/pjlib/src/pjlib-test/ioq_tcp.c index e3410dda7..3f665b4cc 100644 --- a/pjlib/src/pjlib-test/ioq_tcp.c +++ b/pjlib/src/pjlib-test/ioq_tcp.c @@ -887,7 +887,7 @@ static int compliance_test_2(const pj_ioqueue_cfg *cfg) if (client[i].key != NULL) { pj_ioqueue_unregister(client[i].key); client[i].key = NULL; - server[i].sock = PJ_INVALID_SOCKET; + client[i].sock = PJ_INVALID_SOCKET; } else if (client[i].sock != PJ_INVALID_SOCKET) { pj_sock_close(client[i].sock); client[i].sock = PJ_INVALID_SOCKET; diff --git a/pjmedia/src/pjmedia/endpoint.c b/pjmedia/src/pjmedia/endpoint.c index c752c397e..b9fe6b642 100644 --- a/pjmedia/src/pjmedia/endpoint.c +++ b/pjmedia/src/pjmedia/endpoint.c @@ -803,8 +803,10 @@ pjmedia_endpt_create_video_sdp(pjmedia_endpt *endpt, continue; } - pjmedia_vid_codec_mgr_get_default_param(NULL, &codec_info[i], - &codec_param); + status = pjmedia_vid_codec_mgr_get_default_param(NULL, &codec_info[i], + &codec_param); + if (status != PJ_SUCCESS) + return status; fmt = &m->desc.fmt[m->desc.fmt_count++]; fmt->ptr = (char*) pj_pool_alloc(pool, 8); diff --git a/pjmedia/src/pjmedia/stream.c b/pjmedia/src/pjmedia/stream.c index b09a42ec3..d5d62aa43 100644 --- a/pjmedia/src/pjmedia/stream.c +++ b/pjmedia/src/pjmedia/stream.c @@ -2895,7 +2895,7 @@ PJ_DEF(pj_status_t) pjmedia_stream_create( pjmedia_endpt *endpt, pj_sockaddr_cp(&stream->rem_rtp_addr, &info->rem_addr); if (stream->si.rtcp_mux) { pj_sockaddr_cp(&att_param.rem_rtcp, &info->rem_addr); - } else if (pj_sockaddr_has_addr(&info->rem_rtcp.addr)) { + } else if (pj_sockaddr_has_addr(&info->rem_rtcp)) { pj_sockaddr_cp(&att_param.rem_rtcp, &info->rem_rtcp); } att_param.addr_len = pj_sockaddr_get_len(&info->rem_addr); diff --git a/pjsip/src/pjsip-ua/sip_100rel.c b/pjsip/src/pjsip-ua/sip_100rel.c index 3cfd8dcc4..a3788858c 100644 --- a/pjsip/src/pjsip-ua/sip_100rel.c +++ b/pjsip/src/pjsip-ua/sip_100rel.c @@ -269,6 +269,12 @@ PJ_DEF(pj_status_t) pjsip_100rel_create_prack( pjsip_inv_session *inv, } rseq = (pj_uint32_t) pj_strtoul(&rseq_hdr->hvalue); + if (rseq < 1) { + PJ_LOG(4, (dd->inv->dlg->obj_name, + "Ignoring 100rel response RSeq header value less than 1")); + return PJSIP_EINVALIDMSG; + } + /* Find UAC state for the specified call leg */ uac_state = dd->uac_state_list; while (uac_state) {