Closed
Bug 1298991
Opened 8 years ago
Closed 8 years ago
nICEr creates duplicated prflx candidate pairs
Categories
(Core :: WebRTC: Networking, defect, P2)
Core
WebRTC: Networking
Tracking
()
RESOLVED
FIXED
mozilla51
Tracking | Status | |
---|---|---|
firefox51 | --- | fixed |
backlog | webrtc/webaudio+ |
People
(Reporter: drno, Assigned: drno)
Details
Attachments
(1 file)
No description provided.
Assignee | ||
Updated•8 years ago
|
backlog: --- → webrtc/webaudio+
Rank: 25
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment 3•8 years ago
|
||
mozreview-review |
Comment on attachment 8786141 [details] Bug 1298991: only create candidate pairs from STUN response when needed. https://reviewboard.mozilla.org/r/75104/#review73170 ::: media/mtransport/third_party/nICEr/src/ice/ice_candidate_pair.c:261 (Diff revision 2) > it probably matches one of our candidates */ > > cand=TAILQ_FIRST(&pair->local->component->candidates); > while(cand){ > - if(!nr_transport_addr_cmp(&cand->addr,&pair->stun_client->results.ice_binding_response.mapped_addr,NR_TRANSPORT_ADDR_CMP_MODE_ALL)) > + if(!nr_transport_addr_cmp(&cand->addr,&pair->stun_client->results.ice_binding_response.mapped_addr,NR_TRANSPORT_ADDR_CMP_MODE_ALL)) { > + r_log(LOG_ICE,LOG_DEBUG,"ICE-PEER(%s): found another candidate %s", pair->pctx->label,cand->addr.as_string); This log string could be better. Maybe something like "found pre-existing local candidate for mapped address %s" ::: media/mtransport/third_party/nICEr/src/ice/ice_candidate_pair.c:284 (Diff revision 2) > + } else { > + /* Check if we have a pair for this candidate already. */ > + orig_pair=pair; > + if(r=nr_ice_component_find_pair(cand, pair->remote, &pair)) { > + r_log(LOG_ICE,LOG_DEBUG,"ICE-PEER(%s): no pair exists for %s and %s", pair->pctx->label,cand->addr.as_string, pair->remote->addr.as_string); > + pair=orig_pair; > + orig_pair=0; > + } This could be easier to read, especially if we do a little refactoring to make this something like |pair| and |actual_pair|. ::: media/mtransport/third_party/nICEr/src/ice/ice_candidate_pair.c:689 (Diff revision 2) > +int nr_ice_candidate_pair_find(nr_ice_cand_pair_head *head, > + nr_ice_candidate *lcand, nr_ice_candidate *rcand, nr_ice_cand_pair **pair) This would make more sense as a nr_ice_media_stream_ function, probably. ::: media/mtransport/third_party/nICEr/src/ice/ice_component.c:1538 (Diff revision 2) > > return(0); > } > > > -int nr_ice_component_insert_pair(nr_ice_component *pcomp, nr_ice_cand_pair *pair) > +int nr_ice_component_insert_pair(nr_ice_cand_pair *pair) Let's not do this. If we want, we could maybe make this an nr_ice_candidate_pair_ function.
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment 6•8 years ago
|
||
mozreview-review |
Comment on attachment 8786141 [details] Bug 1298991: only create candidate pairs from STUN response when needed. https://reviewboard.mozilla.org/r/75104/#review73700
Attachment #8786141 -
Flags: review?(docfaraday) → review+
Pushed by drno@ohlmeier.org: https://hg.mozilla.org/integration/autoland/rev/0f6e07e5c211 only create candidate pairs from STUN response when needed. r=bwc
Comment 8•8 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/0f6e07e5c211
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla51
You need to log in
before you can comment on or make changes to this bug.
Description
•