Commit 12c63d29 authored by Howard Chu's avatar Howard Chu
Browse files

ITS#9364 use crypto table properly

parent 21d21a09
......@@ -11,6 +11,7 @@
* source distribution.
*/
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>
#include "lmdb.h"
......@@ -37,8 +38,8 @@ int main(int argc,char * argv[])
int count;
int *values;
char sval[32] = "";
char password[] = "This is my passphrase for now";
char ekey[32];
char password[] = "This is my passphrase for now...";
char *ekey;
srand(time(NULL));
......@@ -50,14 +51,23 @@ int main(int argc,char * argv[])
}
cf = MDB_crypto();
enckey.mv_data = ekey;
enckey.mv_size = sizeof(ekey);
cf->mcf_str2key(password, &enckey);
E(mdb_env_create(&env));
E(mdb_env_set_maxreaders(env, 1));
E(mdb_env_set_mapsize(env, 10485760));
E(mdb_env_set_encrypt(env, cf->mcf_encfunc, &enckey, cf->mcf_esumsize));
if (cf->mcf_sumfunc) {
E(mdb_env_set_checksum(env, cf->mcf_sumfunc, cf->mcf_sumsize));
}
if (cf->mcf_encfunc) {
ekey = malloc(cf->mcf_keysize);
enckey.mv_data = ekey;
enckey.mv_size = cf->mcf_keysize;
if (cf->mcf_str2key)
cf->mcf_str2key(password, &enckey);
else
strncpy(ekey, password, cf->mcf_keysize);
E(mdb_env_set_encrypt(env, cf->mcf_encfunc, &enckey, cf->mcf_esumsize));
}
E(mdb_env_open(env, "./testdb", 0 /*|MDB_NOSYNC*/, 0664));
E(mdb_txn_begin(env, NULL, 0, &txn));
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment