Enable IV randomization.

This commit is contained in:
Érico Rolim 2020-09-13 18:08:52 -03:00
parent 94f8f4f61d
commit b70d741b03
2 changed files with 4 additions and 3 deletions

View File

@ -38,18 +38,19 @@ struct mmap_file encrypt_mmap(struct mmap_file file, uint8_t **keyp, uint8_t **i
}
ssize_t err = getrandom(key, KEY_LEN, 0);
//ssize_t err = KEY_LEN;
if (err != KEY_LEN) {
fputs("getrandom() error!\n", stderr);
return rv;
}
#ifndef NO_RANDOMIZE_IV
#ifdef RANDOMIZE_IV
err = getrandom(iv, IV_LEN, 0);
memcpy(iv_throwaway, iv, IV_LEN);
if (err != IV_LEN) {
fputs("getrandom() error!\n", stderr);
return rv;
}
#endif /* NO_RANDOMIZE_IV */
#endif /* RANDOMIZE_IV */
rv.data = mmap(NULL, rv.size, rv.prot, rv.flags, -1, 0);
if (ERROR_MMAP(rv)) {

2
purr.h
View File

@ -18,7 +18,7 @@
#define KEY_LEN 32
#define IV_LEN br_aes_big_BLOCK_SIZE
#define NO_RANDOMIZE_IV
#define RANDOMIZE_IV
#define ENCODE_BASE_64
#define RESET_MMAP(file) do{(file).offset = 0; (file).cursor = 0}while(0);