[openssl-users] openssl-1.1.1 make test error on Red Hat Enterprise Linux 6.1.

市來敏 / ICHIKI,BIN bin.ichiki.he at hitachi-solutions.com
Wed Aug 1 08:14:58 UTC 2018


Hello, everyone. My name is Bin Ichiki.

I'm trying to install openssl-1.1.1-pre8 on Red Hat Enterprise Linux 6.1(RHEL6.1).

But when I ran “make test”, test failed as following log:

Test Summary Report
-------------------
../test/recipes/04-test_err.t                    (Wstat: 256 Tests: 1 Failed: 1)
  Failed test:  1
  Non-zero exit status: 1
Files=148, Tests=1340, 270 wallclock secs ( 1.70 usr  0.17 sys + 239.19 cusr 20.62 csys = 261.68 CPU)
Result: FAIL


I think, if an errno is changed other than EINVAL after the function ERR_get_error was executed, this test will fail.

Therefore I investigated the place where an errno is changed.

The follows are back trace from the processes that changed the errno.


(gdb) bt
#0  0x0081b505 in __xpg_strerror_r () from /lib/libc.so.6
#1  0x002e2ec0 in openssl_strerror_r (errnum=11, buf=0x3d4d00 "", buflen=32) at crypto/o_str.c:234
#2  0x002b0460 in build_SYS_str_reasons () at crypto/err/err.c:217
#3  0x002b07a5 in ERR_load_ERR_strings () at crypto/err/err.c:327
#4  0x002b1ba3 in err_load_crypto_strings_int () at crypto/err/err_all.c:46
#5  0x002d2fcc in ossl_init_load_crypto_strings () at crypto/init.c:182
#6  0x002d2fa2 in ossl_init_load_crypto_strings_ossl_ () at crypto/init.c:170
#7  0x003e3920 in pthread_once () from /lib/libpthread.so.0
#8  0x0033597b in CRYPTO_THREAD_run_once (once=0x3d5cc4, init=0x2d2f8b <ossl_init_load_crypto_strings_ossl_>) at crypto/threads_pthread.c:113
#9  0x002d36b6 in OPENSSL_init_crypto (opts=2, settings=0x0) at crypto/init.c:584
#10 0x002b156b in ERR_get_state () at crypto/err/err.c:702
#11 0x002b0d95 in get_error_values (inc=1, top=0, file=0x0, line=0x0, data=0x0, flags=0x0) at crypto/err/err.c:483
#12 0x002b0ba7 in ERR_get_error () at crypto/err/err.c:429


A version of glibc in RHEL6 is 2.12.

The strerror_r function (XSI-compliant) in glibc 2.12 changes errno.

When errnum parameter is 11, the error description string is "Resource temporarily unavailable".

The area size for this string is 33. but buflen parameter is 32. The buffer area is insufficient.

So errno is set to ERANGE and  04-test_err.t fails.

Will be this problem fixed until OpenSSL 1.1.1 is released?


Thank you.



More information about the openssl-users mailing list