]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-9131: improve validation of ice candidates
authorMichael Jerris <mike@jerris.com>
Wed, 4 May 2016 17:34:31 +0000 (13:34 -0400)
committerMichael Jerris <mike@jerris.com>
Wed, 4 May 2016 17:34:40 +0000 (13:34 -0400)
src/switch_rtp.c

index a58b693d7084bee89105fbfa433af5705171a9c0..f30d82f5b75177116db6230c8e0bddbe94fb2c5b 100644 (file)
@@ -1234,9 +1234,10 @@ static void handle_ice(switch_rtp_t *rtp_session, switch_rtp_ice_t *ice, void *d
                                ice->missed_count = 0;
                                ice->rready = 1;
 
-                               for (i = 0; i <= ice->ice_params->cand_idx[ice->proto]; i++) {
+                               for (i = 0; i < ice->ice_params->cand_idx[ice->proto]; i++) {
                                        if (ice->ice_params->cands[i][ice->proto].con_port == port) {
-                                               if (!strcmp(ice->ice_params->cands[i][ice->proto].con_addr, host) && 
+                                               if (!strcmp(ice->ice_params->cands[i][ice->proto].con_addr, host) &&
+                                                       ice->ice_params->cands[i][ice->proto].cand_type &&
                                                        !strcmp(ice->ice_params->cands[i][ice->proto].cand_type, "relay")) {
                                                        
                                                        if (elapsed < 1000) {