Changeset 738 for pjproject/trunk/pjmedia/src/pjmedia/sdp_neg.c
- Timestamp:
- Sep 25, 2006 1:40:12 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
pjproject/trunk/pjmedia/src/pjmedia/sdp_neg.c
r734 r738 534 534 * count match 535 535 */ 536 if (!pj_str cmp(&or.enc_name, &ar.enc_name) &&536 if (!pj_stricmp(&or.enc_name, &ar.enc_name) && 537 537 or.clock_rate == ar.clock_rate && 538 pj_strcmp(&or.param, &ar.param)==0) 538 (pj_stricmp(&or.param, &ar.param)==0 || 539 ar.param.slen==1 && *ar.param.ptr=='1')) 539 540 { 540 541 /* Match! */ … … 629 630 630 631 /* Try to match offer with answer. */ 631 static pj_ bool_t match_offer(pj_pool_t *pool,632 const pjmedia_sdp_media *offer,633 const pjmedia_sdp_media *local,634 pjmedia_sdp_media **p_answer)632 static pj_status_t match_offer(pj_pool_t *pool, 633 const pjmedia_sdp_media *offer, 634 const pjmedia_sdp_media *local, 635 pjmedia_sdp_media **p_answer) 635 636 { 636 637 unsigned i; … … 698 699 if (!a) { 699 700 pj_assert(!"Bug! Offer should have been validated"); 700 return PJ _FALSE;701 return PJMEDIA_SDP_EMISSINGRTPMAP; 701 702 } 702 703 pjmedia_sdp_attr_get_rtpmap(a, &or); … … 727 728 * channel count match 728 729 */ 729 if (!pj_str cmp(&or.enc_name, &lr.enc_name) &&730 if (!pj_stricmp(&or.enc_name, &lr.enc_name) && 730 731 or.clock_rate == lr.clock_rate && 731 pj_strcmp(&or.param, &lr.param)==0) 732 (pj_strcmp(&or.param, &lr.param)==0 || 733 or.param.slen==1 && *or.param.ptr=='1')) 732 734 { 733 735 /* Match! */ … … 767 769 /* See if all types of offer can be matched. */ 768 770 #if 1 769 if ((offer_has_codec && !found_matching_codec) || 770 (offer_has_telephone_event && !found_matching_telephone_event) || 771 (offer_has_other && !found_matching_other)) 772 { 773 /* Some of the payload in the offer has no matching local sdp */ 774 return PJ_FALSE; 771 if (offer_has_codec && !found_matching_codec) { 772 return PJMEDIA_SDPNEG_NOANSCODEC; 773 } 774 775 if (offer_has_telephone_event && !found_matching_telephone_event) { 776 return PJMEDIA_SDPNEG_NOANSTELEVENT; 777 } 778 779 if (offer_has_other && !found_matching_other) { 780 return PJMEDIA_SDPNEG_NOANSUNKNOWN; 775 781 } 776 782 #else … … 828 834 829 835 *p_answer = answer; 830 return PJ_ TRUE;836 return PJ_SUCCESS; 831 837 } 832 838 … … 837 843 pjmedia_sdp_session **p_answer) 838 844 { 839 pj_status_t status ;845 pj_status_t status = PJMEDIA_SDPNEG_ENOMEDIA; 840 846 pj_bool_t has_active = PJ_FALSE; 841 847 pjmedia_sdp_session *answer; … … 880 886 { 881 887 /* See if it has matching codec. */ 882 pj_bool_t match; 883 884 match = match_offer(pool, om, im, &am); 885 if (match) { 888 status = match_offer(pool, om, im, &am); 889 if (status == PJ_SUCCESS) { 886 890 /* Mark media as used. */ 887 891 media_used[j] = 1; … … 926 930 *p_answer = answer; 927 931 928 return has_active ? PJ_SUCCESS : PJMEDIA_SDPNEG_ENOMEDIA; 929 //return PJ_SUCCESS; 932 return has_active ? PJ_SUCCESS : status; 930 933 } 931 934
Note: See TracChangeset
for help on using the changeset viewer.