@@ -219,7 +219,7 @@ void CAddrMan::Good_(const CService& addr, bool test_before_evict, int64_t nTime
219219 return ;
220220
221221 // find a bucket it is in now
222- int nRnd = RandomInt (ADDRMAN_NEW_BUCKET_COUNT);
222+ int nRnd = insecure_rand. randrange (ADDRMAN_NEW_BUCKET_COUNT);
223223 int nUBucket = -1 ;
224224 for (unsigned int n = 0 ; n < ADDRMAN_NEW_BUCKET_COUNT; n++) {
225225 int nB = (n + nRnd) % ADDRMAN_NEW_BUCKET_COUNT;
@@ -295,7 +295,7 @@ bool CAddrMan::Add_(const CAddress& addr, const CNetAddr& source, int64_t nTimeP
295295 int nFactor = 1 ;
296296 for (int n = 0 ; n < pinfo->nRefCount ; n++)
297297 nFactor *= 2 ;
298- if (nFactor > 1 && (RandomInt (nFactor) != 0 ))
298+ if (nFactor > 1 && (insecure_rand. randrange (nFactor) != 0 ))
299299 return false ;
300300 } else {
301301 pinfo = Create (addr, source, &nId);
@@ -359,37 +359,37 @@ CAddrInfo CAddrMan::Select_(bool newOnly)
359359 return CAddrInfo ();
360360
361361 // Use a 50% chance for choosing between tried and new table entries.
362- if (!newOnly && (nTried > 0 && (nNew == 0 || RandomInt ( 2 ) == 0 ))) {
362+ if (!newOnly && (nTried > 0 && (nNew == 0 || insecure_rand. randbool ( ) == 0 ))) {
363363 // use a tried node
364364 double fChanceFactor = 1.0 ;
365365 while (1 ) {
366- int nKBucket = RandomInt (ADDRMAN_TRIED_BUCKET_COUNT);
367- int nKBucketPos = RandomInt (ADDRMAN_BUCKET_SIZE);
366+ int nKBucket = insecure_rand. randrange (ADDRMAN_TRIED_BUCKET_COUNT);
367+ int nKBucketPos = insecure_rand. randrange (ADDRMAN_BUCKET_SIZE);
368368 while (vvTried[nKBucket][nKBucketPos] == -1 ) {
369369 nKBucket = (nKBucket + insecure_rand.randbits (ADDRMAN_TRIED_BUCKET_COUNT_LOG2)) % ADDRMAN_TRIED_BUCKET_COUNT;
370370 nKBucketPos = (nKBucketPos + insecure_rand.randbits (ADDRMAN_BUCKET_SIZE_LOG2)) % ADDRMAN_BUCKET_SIZE;
371371 }
372372 int nId = vvTried[nKBucket][nKBucketPos];
373373 assert (mapInfo.count (nId) == 1 );
374374 CAddrInfo& info = mapInfo[nId];
375- if (RandomInt ( 1 << 30 ) < fChanceFactor * info.GetChance () * (1 << 30 ))
375+ if (insecure_rand. randbits ( 30 ) < fChanceFactor * info.GetChance () * (1 << 30 ))
376376 return info;
377377 fChanceFactor *= 1.2 ;
378378 }
379379 } else {
380380 // use a new node
381381 double fChanceFactor = 1.0 ;
382382 while (1 ) {
383- int nUBucket = RandomInt (ADDRMAN_NEW_BUCKET_COUNT);
384- int nUBucketPos = RandomInt (ADDRMAN_BUCKET_SIZE);
383+ int nUBucket = insecure_rand. randrange (ADDRMAN_NEW_BUCKET_COUNT);
384+ int nUBucketPos = insecure_rand. randrange (ADDRMAN_BUCKET_SIZE);
385385 while (vvNew[nUBucket][nUBucketPos] == -1 ) {
386386 nUBucket = (nUBucket + insecure_rand.randbits (ADDRMAN_NEW_BUCKET_COUNT_LOG2)) % ADDRMAN_NEW_BUCKET_COUNT;
387387 nUBucketPos = (nUBucketPos + insecure_rand.randbits (ADDRMAN_BUCKET_SIZE_LOG2)) % ADDRMAN_BUCKET_SIZE;
388388 }
389389 int nId = vvNew[nUBucket][nUBucketPos];
390390 assert (mapInfo.count (nId) == 1 );
391391 CAddrInfo& info = mapInfo[nId];
392- if (RandomInt ( 1 << 30 ) < fChanceFactor * info.GetChance () * (1 << 30 ))
392+ if (insecure_rand. randbits ( 30 ) < fChanceFactor * info.GetChance () * (1 << 30 ))
393393 return info;
394394 fChanceFactor *= 1.2 ;
395395 }
@@ -485,7 +485,7 @@ void CAddrMan::GetAddr_(std::vector<CAddress>& vAddr)
485485 if (vAddr.size () >= nNodes)
486486 break ;
487487
488- int nRndPos = RandomInt (vRandom.size () - n) + n;
488+ int nRndPos = insecure_rand. randrange (vRandom.size () - n) + n;
489489 SwapRandom (n, nRndPos);
490490 assert (mapInfo.count (vRandom[n]) == 1 );
491491
@@ -533,10 +533,6 @@ void CAddrMan::SetServices_(const CService& addr, ServiceFlags nServices)
533533 info.nServices = nServices;
534534}
535535
536- int CAddrMan::RandomInt (int nMax){
537- return GetRandInt (nMax);
538- }
539-
540536void CAddrMan::ResolveCollisions_ ()
541537{
542538 for (std::set<int >::iterator it = m_tried_collisions.begin (); it != m_tried_collisions.end ();) {
@@ -603,7 +599,7 @@ CAddrInfo CAddrMan::SelectTriedCollision_()
603599 std::set<int >::iterator it = m_tried_collisions.begin ();
604600
605601 // Selects a random element from m_tried_collisions
606- std::advance (it, GetRandInt (m_tried_collisions.size ()));
602+ std::advance (it, insecure_rand. randrange (m_tried_collisions.size ()));
607603 int id_new = *it;
608604
609605 // If id_new not found in mapInfo remove it from m_tried_collisions
0 commit comments