Pārlūkot izejas kodu

Fix infinite loop in ns_turn_server.c (#1460)

In case ur_map_get returns 1 server will enter infinite loop because
newid != 0.

Co-authored-by: Asmir <[email protected]>
Asmir Mehic 4 mēneši atpakaļ
vecāks
revīzija
823fd71c98
1 mainītis faili ar 1 papildinājumiem un 0 dzēšanām
  1. 1 0
      src/server/ns_turn_server.c

+ 1 - 0
src/server/ns_turn_server.c

@@ -700,6 +700,7 @@ static mobile_id_t get_new_mobile_id(turn_turnserver *server) {
     uint64_t sid = server->id;
     uint64_t sid = server->id;
     sid = sid << 56;
     sid = sid << 56;
     do {
     do {
+      newid = 0;
       while (!newid) {
       while (!newid) {
         if (TURN_RANDOM_SIZE == sizeof(mobile_id_t)) {
         if (TURN_RANDOM_SIZE == sizeof(mobile_id_t)) {
           newid = (mobile_id_t)turn_random();
           newid = (mobile_id_t)turn_random();