summaryrefslogtreecommitdiff
path: root/libs/libmdbx/src/test/keygen.h
diff options
context:
space:
mode:
authorGeorge Hazan <ghazan@miranda.im>2020-06-14 13:55:06 +0300
committerGeorge Hazan <ghazan@miranda.im>2020-06-14 13:55:06 +0300
commit52e4ddcd83b3b64bcf97fdfcfa1120c87b7b3eb4 (patch)
tree991ccd18cf211ae6e956d9d06002e351cd7a174d /libs/libmdbx/src/test/keygen.h
parent8862cf78b01bb4b9ae0da13b8e6acbf94f7c1cbe (diff)
fixes #2450 (Update libmdbx to 0.8.1)
Diffstat (limited to 'libs/libmdbx/src/test/keygen.h')
-rw-r--r--libs/libmdbx/src/test/keygen.h21
1 files changed, 10 insertions, 11 deletions
diff --git a/libs/libmdbx/src/test/keygen.h b/libs/libmdbx/src/test/keygen.h
index b5674f1ca6..c36cc1a2e7 100644
--- a/libs/libmdbx/src/test/keygen.h
+++ b/libs/libmdbx/src/test/keygen.h
@@ -23,9 +23,8 @@ namespace keygen {
/* Под "генерацией ключей" здесь понимается генерация обоих значений для
* пар key-value, т.е. не только ключей, но и ассоциированных с ними данных.
- */
-
-/* Генерацию ключей нельзя отнести к простым задачам, так как требования
+ *
+ * Генерацию ключей нельзя отнести к простым задачам, так как требования
* примерно следующие:
* - генерация разного количества уникальных ключей различной длины
* в задаваемом диапазоне;
@@ -67,7 +66,8 @@ namespace keygen {
* 1) смещение (сложение) по модулю;
* 2) циклический сдвиг;
* 3) добавление абсолютного смещения (базы);
- */
+ *
+ * Также см. описание параметров генератора ключей и значений в config.h */
typedef uint64_t serial_t;
@@ -103,13 +103,14 @@ buffer alloc(size_t limit);
class maker {
config::keygen_params_pod mapping;
- serial_t base;
- serial_t salt;
+ serial_t base{0};
+ serial_t salt{0};
struct essentials {
- uint16_t minlen;
- uint16_t flags;
- uint32_t maxlen;
+ uint16_t minlen{0};
+ enum { prng_fill_flag = 1 };
+ uint16_t flags{0};
+ uint32_t maxlen{0};
} key_essentials, value_essentials;
static void mk_begin(const serial_t serial, const essentials &params,
@@ -122,8 +123,6 @@ class maker {
}
public:
- maker() { memset(this, 0, sizeof(*this)); }
-
void pair(serial_t serial, const buffer &key, buffer &value,
serial_t value_age, const bool keylen_changeable);
void setup(const config::actor_params_pod &actor, unsigned actor_id,