#include "quiche/common/quiche_random.h"
#include <cstdint>
#include <cstring>
#include "openssl/rand.h"
#include "quiche/common/platform/api/quiche_logging.h"
namespace quiche {
namespace {
inline uint64_t Xoshiro256InitializeRngStateMember() { … }
inline uint64_t Xoshiro256PlusPlusRotLeft(uint64_t x, int k) { … }
uint64_t Xoshiro256PlusPlus() { … }
class DefaultQuicheRandom : public QuicheRandom { … };
void DefaultQuicheRandom::RandBytes(void* data, size_t len) { … }
uint64_t DefaultQuicheRandom::RandUint64() { … }
void DefaultQuicheRandom::InsecureRandBytes(void* data, size_t len) { … }
uint64_t DefaultQuicheRandom::InsecureRandUint64() { … }
}
QuicheRandom* QuicheRandom::GetInstance() { … }
}