mirror of
https://github.com/keepassxreboot/keepassxc.git
synced 2024-10-01 01:26:01 -04:00
Add Random::randomUInt() and Random::randomUIntRange().
This commit is contained in:
parent
4dbdc4d847
commit
8335db4db5
@ -21,7 +21,7 @@
|
|||||||
|
|
||||||
void Random::randomize(QByteArray& ba)
|
void Random::randomize(QByteArray& ba)
|
||||||
{
|
{
|
||||||
gcry_randomize(ba.data(), ba.size(), GCRY_STRONG_RANDOM);
|
randomize(ba.data(), ba.size());
|
||||||
}
|
}
|
||||||
|
|
||||||
QByteArray Random::randomArray(int len)
|
QByteArray Random::randomArray(int len)
|
||||||
@ -34,6 +34,23 @@ QByteArray Random::randomArray(int len)
|
|||||||
return ba;
|
return ba;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
quint32 Random::randomUInt(quint32 limit)
|
||||||
|
{
|
||||||
|
quint32 rand;
|
||||||
|
randomize(&rand, 4);
|
||||||
|
return (rand % limit);
|
||||||
|
}
|
||||||
|
|
||||||
|
quint32 Random::randomUIntRange(quint32 min, quint32 max)
|
||||||
|
{
|
||||||
|
return min + randomUInt(max - min);
|
||||||
|
}
|
||||||
|
|
||||||
|
void Random::randomize(void* data, int len)
|
||||||
|
{
|
||||||
|
gcry_randomize(data, len, GCRY_STRONG_RANDOM);
|
||||||
|
}
|
||||||
|
|
||||||
Random::Random()
|
Random::Random()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
@ -26,7 +26,18 @@ public:
|
|||||||
static void randomize(QByteArray& ba);
|
static void randomize(QByteArray& ba);
|
||||||
static QByteArray randomArray(int len);
|
static QByteArray randomArray(int len);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Generate a random quint32 in the range [0, @p limit)
|
||||||
|
*/
|
||||||
|
static quint32 randomUInt(quint32 limit);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Generate a random quint32 in the range [@p min, @p max)
|
||||||
|
*/
|
||||||
|
static quint32 randomUIntRange(quint32 min, quint32 max);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
static void randomize(void* data, int len);
|
||||||
Random();
|
Random();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user