|
|
@ -1177,7 +1177,8 @@ void neoscrypt(const uchar *password, uchar *output, uint profile) { |
|
|
|
r = (1 << ((profile >> 5) & 0x7)); |
|
|
|
r = (1 << ((profile >> 5) & 0x7)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
uchar stack[(N + 3) * r * 2 * SCRYPT_BLOCK_SIZE + stack_align]; |
|
|
|
uchar *stack; |
|
|
|
|
|
|
|
stack = (uchar *)malloc((N + 3) * r * 2 * SCRYPT_BLOCK_SIZE + stack_align); |
|
|
|
/* X = r * 2 * SCRYPT_BLOCK_SIZE */ |
|
|
|
/* X = r * 2 * SCRYPT_BLOCK_SIZE */ |
|
|
|
X = (uint *) &stack[stack_align & ~(stack_align - 1)]; |
|
|
|
X = (uint *) &stack[stack_align & ~(stack_align - 1)]; |
|
|
|
/* Z is a copy of X for ChaCha */ |
|
|
|
/* Z is a copy of X for ChaCha */ |
|
|
@ -1284,7 +1285,7 @@ void neoscrypt(const uchar *password, uchar *output, uint profile) { |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
free(stack); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void neoscrypt_regenhash(struct work *work) |
|
|
|
void neoscrypt_regenhash(struct work *work) |
|
|
|