diff options
author | Nanang Izzuddin <nanang@teluu.com> | 2011-10-27 15:33:31 +0000 |
---|---|---|
committer | Nanang Izzuddin <nanang@teluu.com> | 2011-10-27 15:33:31 +0000 |
commit | 17b5c995b10b37079298257932f95272f56fda96 (patch) | |
tree | c1bf56e12add72134f502fb0978e5c7078e2d5df | |
parent | 3577698c096f24b2dfb8fe36ff00accca188f1e7 (diff) |
Close #1404: handle static payload types match in pjmedia_sdp_neg_fmt_match().
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@3869 74dad513-b988-da41-8d7b-12977e46ad98
-rw-r--r-- | pjmedia/src/pjmedia/sdp_neg.c | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/pjmedia/src/pjmedia/sdp_neg.c b/pjmedia/src/pjmedia/sdp_neg.c index 48a8fc27..f98f9004 100644 --- a/pjmedia/src/pjmedia/sdp_neg.c +++ b/pjmedia/src/pjmedia/sdp_neg.c @@ -1737,15 +1737,27 @@ PJ_DECL(pj_status_t) pjmedia_sdp_neg_register_fmt_match_cb( /* Match format in the SDP media offer and answer. */ -PJ_DEF(pj_bool_t) pjmedia_sdp_neg_fmt_match( pj_pool_t *pool, - pjmedia_sdp_media *offer, - unsigned o_fmt_idx, - pjmedia_sdp_media *answer, - unsigned a_fmt_idx, - unsigned option) +PJ_DEF(pj_status_t) pjmedia_sdp_neg_fmt_match(pj_pool_t *pool, + pjmedia_sdp_media *offer, + unsigned o_fmt_idx, + pjmedia_sdp_media *answer, + unsigned a_fmt_idx, + unsigned option) { const pjmedia_sdp_attr *attr; pjmedia_sdp_rtpmap o_rtpmap, a_rtpmap; + unsigned o_pt; + unsigned a_pt; + + o_pt = pj_strtoul(&offer->desc.fmt[o_fmt_idx]); + a_pt = pj_strtoul(&answer->desc.fmt[a_fmt_idx]); + + if (o_pt < 96 || a_pt < 96) { + if (o_pt == a_pt) + return PJ_SUCCESS; + else + return PJMEDIA_SDP_EFORMATNOTEQUAL; + } /* Get the format rtpmap from the offer. */ attr = pjmedia_sdp_media_find_attr2(offer, "rtpmap", |