mirror of
https://github.com/veracrypt/VeraCrypt
synced 2024-12-01 07:23:29 +01:00
Linux: Workaround for gcc 4.4.7 bug under CentOS 6 that causes VeraCrypt built under CentOS 6 to crash when Whirlpool hash is used.
This commit is contained in:
parent
3bb661244c
commit
4119521f9e
@ -642,6 +642,20 @@ static const uint64 Whirlpool_C[8*256+R] = {
|
|||||||
// Whirlpool basic transformation. Transforms state based on block.
|
// Whirlpool basic transformation. Transforms state based on block.
|
||||||
void WhirlpoolTransform(uint64 *digest, const uint64 *block)
|
void WhirlpoolTransform(uint64 *digest, const uint64 *block)
|
||||||
{
|
{
|
||||||
|
#if CRYPTOPP_BOOL_SSE2_ASM_AVAILABLE
|
||||||
|
#if defined(__GNUC__) && (CRYPTOPP_GCC_VERSION <= 40407)
|
||||||
|
/* workaround for gcc 4.4.7 bug under CentOS which causes crash
|
||||||
|
* in inline assembly.
|
||||||
|
* This dummy check that is always false since "block" is aligned.
|
||||||
|
*/
|
||||||
|
uint64 lb = (uint64) block;
|
||||||
|
if (lb % 16)
|
||||||
|
{
|
||||||
|
TC_THROW_FATAL_EXCEPTION;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
#if CRYPTOPP_BOOL_SSE2_ASM_AVAILABLE
|
#if CRYPTOPP_BOOL_SSE2_ASM_AVAILABLE
|
||||||
if (HasISSE())
|
if (HasISSE())
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user