- Timestamp:
- Aug 3, 2018 2:33:28 AM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
pjproject/trunk/pjmedia/src/pjmedia/transport_srtp_dtls.c
r5847 r5852 1330 1330 dtls_srtp *ds = (dtls_srtp *)tp; 1331 1331 pj_ice_strans_state ice_state; 1332 pj_bool_t use_rtcp_mux = PJ_FALSE; 1332 1333 pj_status_t status = PJ_SUCCESS; 1333 1334 … … 1369 1370 } 1370 1371 1371 /* Check and update ICE status */1372 /* Check and update ICE and rtcp-mux status */ 1372 1373 { 1373 1374 pjmedia_transport_info info; … … 1376 1377 pjmedia_transport_info_init(&info); 1377 1378 pjmedia_transport_get_info(ds->srtp->member_tp, &info); 1379 if (pj_sockaddr_cmp(&info.sock_info.rtp_addr_name, 1380 &info.sock_info.rtcp_addr_name) == 0) 1381 { 1382 use_rtcp_mux = PJ_TRUE; 1383 } 1378 1384 ice_info = (pjmedia_ice_transport_info*) 1379 1385 pjmedia_transport_info_get_spc_info( … … 1435 1441 pj_sockaddr_init(pj_AF_INET(), &ap.rem_addr, 0, 0); 1436 1442 1437 if (pj_sockaddr_has_addr(&ds->rem_rtcp)) 1443 if (use_rtcp_mux) { 1444 /* Using RTP & RTCP multiplexing */ 1445 pj_sockaddr_cp(&ap.rem_rtcp, &ds->rem_addr); 1446 } else if (pj_sockaddr_has_addr(&ds->rem_rtcp)) { 1438 1447 pj_sockaddr_cp(&ap.rem_rtcp, &ds->rem_rtcp); 1439 else 1448 } else if (pj_sockaddr_has_addr(&ds->rem_addr)) { 1449 pj_sockaddr_cp(&ap.rem_rtcp, &ds->rem_addr); 1450 pj_sockaddr_set_port(&ap.rem_rtcp, 1451 pj_sockaddr_get_port(&ap.rem_rtcp) + 1); 1452 } else { 1440 1453 pj_sockaddr_init(pj_AF_INET(), &ap.rem_rtcp, 0, 0); 1454 } 1441 1455 1442 1456 ap.addr_len = pj_sockaddr_get_len(&ap.rem_addr);
Note: See TracChangeset
for help on using the changeset viewer.