Hi Nickolai, > Using memcpy on overlapping regions of memory is undefined behavior in C. > In engines/ccgost/gosthash.c, the circle_xor8() function uses memcpy to
When use clang/llvm-gcc this really bug, hash results wrongs. See commits resolved it for "[openssl.org #2858] bug in gosthash.c circle_xor8() routine". And tests: "[openssl.org #2918] [PATCH] Testcase for GOST R 34.11-94 (openssl/engines/ccgost/gosthash.c)". Workarounds: - Don't use llvm (clang or llvm-gcc); - Or decrease optimization level to "-O1"; -- Sorry for my bests English. Serguei E. Leontiev w:+7(495)939-2382 USSR,Moscow,Universitetskij 13 Sternberg Astronom. w:+7(495)780-4820 USSR,Moscow,127018,Sushchevskij val 16-5 Institute, MSU h:+7(495)318-1146 USSR,Moscow,113303,Kakhovka 6-40 m:+7(916)686-1081 SMS: <http://www.mts.ru/sms> <http://lnfm1.sai.msu.ru/~leo> ______________________________________________________________________ OpenSSL Project http://www.openssl.org Development Mailing List openssl-dev@openssl.org Automated List Manager majord...@openssl.org