message: Use a local FastRandomContext in a few more places in net
diff: @@ -134,11 +134,12 @@ static std::vector<CAddress> convertSeed6(const std::vector<SeedSpec6> &vSeedsIn
  const int64_t nOneWeek = 7*24*60*60;
  std::vector<CAddress> vSeedsOut;
  vSeedsOut.reserve(vSeedsIn.size());
  + FastRandomContext rng;
  for (const auto& seed_in : vSeedsIn) {
  struct in6_addr ip;
  memcpy(&ip, seed_in.addr, sizeof(ip));
  CAddress addr(CService(ip, seed_in.port), GetDesirableServiceFlags(NODE_NONE));
  - addr.nTime = GetTime() - GetRand(nOneWeek) - nOneWeek;
  + addr.nTime = GetTime() - rng.randrange(nOneWeek) - nOneWeek;
  vSeedsOut.push_back(addr);
  }
  return vSeedsOut;
  @@ -189,16 +190,16 @@ void AdvertiseLocal(CNode *pnode)
  // If discovery is enabled, sometimes give our peer the address it
  // tells us that it sees us as in case it has a better idea of our
  // address than we do.
  + FastRandomContext rng;
  if (IsPeerAddrLocalGood(pnode) && (!addrLocal.IsRoutable() ||
  - GetRand((GetnScore(addrLocal) > LOCAL_MANUAL) ? 8:2) == 0))
  + rng.randbits((GetnScore(addrLocal) > LOCAL_MANUAL) ? 3 : 1) == 0))
  {
  addrLocal.SetIP(pnode->GetAddrLocal());
  }
  if (addrLocal.IsRoutable() || gArgs.GetBoolArg("-addrmantest", false))
  {
  LogPrint(BCLog::NET, "AdvertiseLocal: advertising address %s\n", addrLocal.ToString());
  - FastRandomContext insecure_rand;
  - pnode->PushAddress(addrLocal, insecure_rand);
  + pnode->PushAddress(addrLocal, rng);
  }
  }
  }
  