#include <stdio.h>
#include <string.h>
#include <openssl/evp.h>
+#include <openssl/err.h>
#include <internal/numbers.h>
+#ifndef OPENSSL_NO_SCRYPT
+
#define R(a,b) (((a) << (b)) | ((a) >> (32 - (b))))
static void salsa208_word_specification(uint32_t inout[16])
{
if (maxmem == 0)
maxmem = SCRYPT_MAX_MEM;
- if (Blen + Vlen > maxmem)
+ if (Blen + Vlen > maxmem) {
+ EVPerr(EVP_F_EVP_PBE_SCRYPT, EVP_R_MEMORY_LIMIT_EXCEEDED);
return 0;
+ }
/* If no key return to indicate parameters are OK */
if (key == NULL)
return 1;
B = OPENSSL_malloc(Blen + Vlen);
- if (B == 0)
+ if (B == NULL)
return 0;
X = (uint32_t *)(B + Blen);
T = X + 32 * r;
OPENSSL_clear_free(B, Blen + Vlen);
return rv;
}
+#endif