Changeset 1108 for pjproject/trunk/pjmedia/src/pjmedia/transport_ice.c
- Timestamp:
- Mar 27, 2007 11:00:38 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
pjproject/trunk/pjmedia/src/pjmedia/transport_ice.c
r1106 r1108 401 401 PJ_DEF(pj_status_t) pjmedia_ice_start_ice(pjmedia_transport *tp, 402 402 pj_pool_t *pool, 403 pjmedia_sdp_session *rem_sdp) 403 pjmedia_sdp_session *rem_sdp, 404 unsigned media_index) 404 405 { 405 406 struct transport_ice *tp_ice = (struct transport_ice*)tp; … … 407 408 unsigned i, cand_cnt; 408 409 pj_ice_cand cand[PJ_ICE_MAX_CAND]; 410 pjmedia_sdp_media *sdp_med; 409 411 pj_str_t uname, pass; 410 412 pj_status_t status; 411 413 412 /* Find ice-ufrag attribute */ 414 PJ_ASSERT_RETURN(tp && pool && rem_sdp, PJ_EINVAL); 415 PJ_ASSERT_RETURN(media_index < rem_sdp->media_count, PJ_EINVAL); 416 417 sdp_med = rem_sdp->media[media_index]; 418 419 /* Find ice-ufrag attribute in session descriptor */ 413 420 attr = pjmedia_sdp_attr_find2(rem_sdp->attr_count, rem_sdp->attr, 414 421 "ice-ufrag", NULL); 415 422 if (attr == NULL) { 416 set_no_ice(tp_ice); 417 return PJ_SUCCESS; 423 /* Find in media descriptor */ 424 attr = pjmedia_sdp_attr_find2(sdp_med->attr_count, sdp_med->attr, 425 "ice-ufrag", NULL); 426 if (attr == NULL) { 427 set_no_ice(tp_ice); 428 return PJ_SUCCESS; 429 } 418 430 } 419 431 uname = attr->value; 420 432 421 /* Find ice-pwd attribute */433 /* Find ice-pwd attribute in session descriptor */ 422 434 attr = pjmedia_sdp_attr_find2(rem_sdp->attr_count, rem_sdp->attr, 423 435 "ice-pwd", NULL); 424 436 if (attr == NULL) { 425 set_no_ice(tp_ice); 426 return PJ_SUCCESS; 437 /* Not found, find in media descriptor */ 438 attr = pjmedia_sdp_attr_find2(sdp_med->attr_count, sdp_med->attr, 439 "ice-pwd", NULL); 440 if (attr == NULL) { 441 set_no_ice(tp_ice); 442 return PJ_SUCCESS; 443 } 427 444 } 428 445 pass = attr->value; … … 430 447 /* Get all candidates */ 431 448 cand_cnt = 0; 432 for (i=0; i< rem_sdp->media[0]->attr_count; ++i) {449 for (i=0; i<sdp_med->attr_count; ++i) { 433 450 pjmedia_sdp_attr *attr; 434 451 435 attr = rem_sdp->media[0]->attr[i];452 attr = sdp_med->attr[i]; 436 453 if (pj_strcmp2(&attr->name, "candidate")!=0) 437 454 continue;
Note: See TracChangeset
for help on using the changeset viewer.