Hello We are using libcurl for REST programming, which internally uses openssl and libcrypto. curl suggested to implement few callbacks related to locking, which would be needed for openssl below 1.1 version(which is still in beta).
The following callbacks were implemented: https://curl.haxx.se/libcurl/c/threaded-ssl.html lock_callback, thread_id, init_locks, kill_locks With these modifications we are facing a crash in openssl library when used on a Power8 Hardware (with optimizations). It works fine if we use the unoptimized code (without using ppc32_asm or ppc64_asm during Configure) Segment fault is seen as below: Segmentation fault in sha1-ppc.sha1_block_data_order at 0xd4feb8b8 ($t13) 0xd4feb8b8 (sha1_block_data_order+0xb8) 8a440002 lbz r18,0x2(r4) (dbx) where sha1-ppc.sha1_block_data_order(??, ??, ??) at 0xd4feb8b8 .() at 0x0 m_sha1.update() at 0xd5001ef8 digest.EVP_DigestUpdate() at 0xd4ff93dc md_rand.ssleay_rand_bytes() at 0xd50009a0 ssleay_rand_nopseudo_bytes() at 0xd50005ec rand_lib.RAND_bytes() at 0xd4ffffb4 bn_rand.bnrand() at 0xd50046b4 bn_rand.bn_rand_range() at 0xd50042a4 EC_KEY_generate_key() at 0xd501e9d0 ssl3_send_client_key_exchange() at 0xd53cb654 ssl3_connect() at 0xd53cf4fc SSL_connect() at 0xd5396b3c ssl23_get_server_hello() at 0xd53c20c0 ssl23_connect() at 0xd53c2f84 SSL_connect() at 0xd5396b3c ossl_connect_step2() at 0x1021ddc8 ossl_connect_common() at 0x1021bcb0 Curl_ossl_connect_nonblocking() at 0x10220ff4 Curl_ssl_connect_nonblocking() at 0x1021af80 https_connecting() at 0x1020da3c Curl_protocol_connecting@AF72_46() at 0x1020acf8 multi_runsingle() at 0x101fb0cc curl_multi_perform() at 0x101fd914 easy_transfer() at 0x101f5ffc easy_perform() at 0x101f5de8 Please let me know if you need further information and a solution to fix this. Thanks Regards Sandeep -- Ticket here: http://rt.openssl.org/Ticket/Display.html?id=4647 Please log in as guest with password guest if prompted -- openssl-dev mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-dev