CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2014/04/17 12:16:45
Modified files:
lib/libcrypto/crypto: Makefile
lib/libssl/src/crypto: alphacpuid.pl pariscid.pl ppccpuid.pl
x86_64cpuid.pl x86cpuid.pl armv4cpuid.S
ia64cpuid.S s390xcpuid.S sparccpuid.S
Log message:
Ok, there was a need for OPENSSL_cleanse() instead of bzero() to prevent
supposedly smart compilers from optimizing memory cleanups away. Understood.
Ok, in case of an hypothetically super smart compiler, OPENSSL_cleanse() had
to be convoluted enough for the compiler not to recognize that this was
actually bzero() in disguise. Understood.
But then why there had been optimized assembler versions of OPENSSL_cleanse()
is beyond me. Did someone not trust the C obfuscation?