Still FAILED build of OpenSSL branch master with options -d --strict-warnings no-tls1_3

2021-03-09 Thread OpenSSL run-checker
Platform and configuration command:

$ uname -a
Linux run 5.4.0-65-generic #73-Ubuntu SMP Mon Jan 18 17:25:17 UTC 2021 x86_64 
x86_64 x86_64 GNU/Linux
$ CC=clang ../openssl/config -d --strict-warnings no-tls1_3

Commit log since last time:

a2c911c2d0 Restore GOST macros compatibility with 1.1.1
9293046fb4 apps/x509.c: Rename -signkey to -key for consistency with the req app
2de5d3b87a HTTP: Fix BIO_mem_d2i() on NULL mem input
676d879cb2 http_local.h: Remove unused declaration of HTTP_sendreq_bio()
73e6e3e03e Simplify OCSP_sendreq_bio()
0dca5ede0d Make more use of X509_add_certs(); minor related code & comments 
cleanup
9b9d24f033 OCSP_resp_find_status.pod: Complete the RETURN VALUES section
f477cdfadd crypto/ocsp/ocsp_cl.c: coding style improvements
29ce1066bc Update the demos/README file because it is really old. New demos 
should provide best practice for API use. Add demonstration for computing a 
SHA3-512 digest - digest/EVP_MD_demo
a7a041c230 CI external tests: separate each external test into its own phase
1ddea35bd4 CI external test: for now run only the krb5 and gost_engine tests
ec69d5c9a8 gost_engine test: further cleanups and fixes
b414c8118d gost_engine test: Run also perl and tcl tests
996d2693e2 CI: add job with external tests
c3a85d3d17 DOCS: Document OSSL_STORE_INFO_PUBKEY in doc/man3/OSSL_STORE_INFO.pod
c2ec2bb7c1 Make provider provider_init thread safe, and flag checking/setting 
too
d60a8e0a23 Make ossl_provider_disable_fallback_loading() thread safe
2f17e978a0 test/threadstest.c: Add a test to load providers concurrently
8c631cfaa1 ecx_set_priv_key: Try to obtain libctx from the pkey's keymgmt
2ad5bbe320 bn_ctx.c: Remove TODO 3.0 related to tracing in FIPS module
20cca4db9c ecx_set_priv_key: Remove TODO 3.0 related to setting libctx
22cd04143b do_sigver_init: Remove fallback for missing provider implementations.
0be6cf0c7e Remove some of the TODO 3.0 in crypto/evp related to legacy support.
bffe3ae7b8 crypto/param_build_set.c: Remove irrelevant TODO 3.0
f40fa7b9ad crypto/ppccap.c: Remove useless TODO 3.0
946bdd12a0 include/crypto: Remove TODOs that are irrelevant for 3.0
9522f0a6a9 include/internal: Remove TODOs that are irrelevant for 3.0
2c8a740a9f test/x509: Test for issuer being overwritten when printing.
39a61e69b8 OSSL_STORE: restore diagnostics on decrypt error; provide password 
hints
e3a2ba7547 crypto: rename error flags in internal structures
33ac7b324b Add a new test recipe to verify the generated test fipsmodule.cnf
c9b0214ede Fix the perl code to get FIPSMODULENAME
e25b4db754 TEST: Remove the build of fipsmodule.cnf from test recipes
e9d74dbd36 APPS: Modify 'fipsinstall' to output all notifications on stderr
05869bba7f Make 'tests' depend on a generated 'providers/fipsmodule.cnf'
79f47ef507 build.info: Make it possible to use compiled programs as generators
3f399e3787 build.info: Add the possibility to add dependencies on raw targets
8593ff00cc DOCS: Fix provider-mac.pod and the docs of our implementations
cb54d1b9d7 doc: add a note to the RAND_get0_ calls indicating how to set the 
DRBG type.
f21afe6360 ossl_rsa_sp800_56b_check_public: Be more lenient with small keys
87994aa847 rand: remove FIPS mode conditional code.
fb67126ea8 EVP_PKEY_CTX_get/settable_params: pass provider operation context
4e4ae84056 Fix NULL access in ssl_build_cert_chain() when ctx is NULL.
81f9af3460 Remove todos in decode_der2key.c and decode_ms2key.c
77b03f0e8f Improve error reporting in key exchange provider implementations
f5c629a00a Remove unused MAX_TLS_MAC_SIZE define
fffb67343e Remove todos in providers/implementations/include/prov
8d05a65256 Resolve TODOs in signature implementations.
f378755d62 statem_lib.c: Remove TODOs that are unnecessary
5e2f580d4a test_ssl_new: X448, X25519, and EdDSA are supported with fips
21b7dfa8ad evp_extra_test2: Remove TODO 3.0
b3c155b83c evp_extra_test: Remove TODO comment as setting the curve is mandatory
d36a5dd05e Fix a copy error in evp_extra_test
d7d8e2c894 Fix compiling error on arm
025c0f5289 openssl-cmp.pod.in: replace the term 'verify' by the more correct 
'validate'
dd5fa5f5af CMP: On NULL-DN subject or issuer input omit field in cert template
e1f946630f test: use the new set public and private together call
740582cfaf test: add utility function to set the fake random callback on both 
the public and private instances
fccdb61aee test: update ECDSA and SM2 internal tests in line with the 
fake_random change
5a11de50a4 test: update test_random to create real contexts instead of sharing 
one
0647162f6a make update
bed963d58d Fix build of /dev/crypto engine with no-dynamic-engine option
b0aae91324 Remove RSA SSLv23 padding mode
d546e8e267 Generalize schmeme parsing of OSSL_HTTP_parse_url() to 
OSSL_parse_url()
7932982b88 OSSL_HTTP_parse_url(): Handle any userinfo, query, and fragment 
components

Build log ended with (last 100 lines):

# --
# ERROR: (int) 

Still FAILED build of OpenSSL branch master with options -d --strict-warnings no-dtls1_2-method

2021-03-09 Thread OpenSSL run-checker
Platform and configuration command:

$ uname -a
Linux run 5.4.0-65-generic #73-Ubuntu SMP Mon Jan 18 17:25:17 UTC 2021 x86_64 
x86_64 x86_64 GNU/Linux
$ CC=clang ../openssl/config -d --strict-warnings no-dtls1_2-method

Commit log since last time:

a2c911c2d0 Restore GOST macros compatibility with 1.1.1
9293046fb4 apps/x509.c: Rename -signkey to -key for consistency with the req app
2de5d3b87a HTTP: Fix BIO_mem_d2i() on NULL mem input
676d879cb2 http_local.h: Remove unused declaration of HTTP_sendreq_bio()
73e6e3e03e Simplify OCSP_sendreq_bio()
0dca5ede0d Make more use of X509_add_certs(); minor related code & comments 
cleanup
9b9d24f033 OCSP_resp_find_status.pod: Complete the RETURN VALUES section
f477cdfadd crypto/ocsp/ocsp_cl.c: coding style improvements
29ce1066bc Update the demos/README file because it is really old. New demos 
should provide best practice for API use. Add demonstration for computing a 
SHA3-512 digest - digest/EVP_MD_demo
a7a041c230 CI external tests: separate each external test into its own phase
1ddea35bd4 CI external test: for now run only the krb5 and gost_engine tests
ec69d5c9a8 gost_engine test: further cleanups and fixes
b414c8118d gost_engine test: Run also perl and tcl tests
996d2693e2 CI: add job with external tests
c3a85d3d17 DOCS: Document OSSL_STORE_INFO_PUBKEY in doc/man3/OSSL_STORE_INFO.pod
c2ec2bb7c1 Make provider provider_init thread safe, and flag checking/setting 
too
d60a8e0a23 Make ossl_provider_disable_fallback_loading() thread safe
2f17e978a0 test/threadstest.c: Add a test to load providers concurrently
8c631cfaa1 ecx_set_priv_key: Try to obtain libctx from the pkey's keymgmt
2ad5bbe320 bn_ctx.c: Remove TODO 3.0 related to tracing in FIPS module
20cca4db9c ecx_set_priv_key: Remove TODO 3.0 related to setting libctx
22cd04143b do_sigver_init: Remove fallback for missing provider implementations.
0be6cf0c7e Remove some of the TODO 3.0 in crypto/evp related to legacy support.
bffe3ae7b8 crypto/param_build_set.c: Remove irrelevant TODO 3.0
f40fa7b9ad crypto/ppccap.c: Remove useless TODO 3.0
946bdd12a0 include/crypto: Remove TODOs that are irrelevant for 3.0
9522f0a6a9 include/internal: Remove TODOs that are irrelevant for 3.0
2c8a740a9f test/x509: Test for issuer being overwritten when printing.
39a61e69b8 OSSL_STORE: restore diagnostics on decrypt error; provide password 
hints
e3a2ba7547 crypto: rename error flags in internal structures
33ac7b324b Add a new test recipe to verify the generated test fipsmodule.cnf
c9b0214ede Fix the perl code to get FIPSMODULENAME
e25b4db754 TEST: Remove the build of fipsmodule.cnf from test recipes
e9d74dbd36 APPS: Modify 'fipsinstall' to output all notifications on stderr
05869bba7f Make 'tests' depend on a generated 'providers/fipsmodule.cnf'
79f47ef507 build.info: Make it possible to use compiled programs as generators
3f399e3787 build.info: Add the possibility to add dependencies on raw targets
8593ff00cc DOCS: Fix provider-mac.pod and the docs of our implementations
cb54d1b9d7 doc: add a note to the RAND_get0_ calls indicating how to set the 
DRBG type.
f21afe6360 ossl_rsa_sp800_56b_check_public: Be more lenient with small keys
87994aa847 rand: remove FIPS mode conditional code.
fb67126ea8 EVP_PKEY_CTX_get/settable_params: pass provider operation context
4e4ae84056 Fix NULL access in ssl_build_cert_chain() when ctx is NULL.
81f9af3460 Remove todos in decode_der2key.c and decode_ms2key.c
77b03f0e8f Improve error reporting in key exchange provider implementations
f5c629a00a Remove unused MAX_TLS_MAC_SIZE define
fffb67343e Remove todos in providers/implementations/include/prov
8d05a65256 Resolve TODOs in signature implementations.
f378755d62 statem_lib.c: Remove TODOs that are unnecessary
5e2f580d4a test_ssl_new: X448, X25519, and EdDSA are supported with fips
21b7dfa8ad evp_extra_test2: Remove TODO 3.0
b3c155b83c evp_extra_test: Remove TODO comment as setting the curve is mandatory
d36a5dd05e Fix a copy error in evp_extra_test
d7d8e2c894 Fix compiling error on arm
025c0f5289 openssl-cmp.pod.in: replace the term 'verify' by the more correct 
'validate'
dd5fa5f5af CMP: On NULL-DN subject or issuer input omit field in cert template
e1f946630f test: use the new set public and private together call
740582cfaf test: add utility function to set the fake random callback on both 
the public and private instances
fccdb61aee test: update ECDSA and SM2 internal tests in line with the 
fake_random change
5a11de50a4 test: update test_random to create real contexts instead of sharing 
one
0647162f6a make update
bed963d58d Fix build of /dev/crypto engine with no-dynamic-engine option
b0aae91324 Remove RSA SSLv23 padding mode
d546e8e267 Generalize schmeme parsing of OSSL_HTTP_parse_url() to 
OSSL_parse_url()
7932982b88 OSSL_HTTP_parse_url(): Handle any userinfo, query, and fragment 
components

Build log ended with (last 100 lines):

# false
# OPENSSL_TEST_RAND_ORDER=1615347168
not ok 2 - iteration 2
# 

Still FAILED build of OpenSSL branch master with options -d --strict-warnings no-tls1_2-method

2021-03-09 Thread OpenSSL run-checker
Platform and configuration command:

$ uname -a
Linux run 5.4.0-65-generic #73-Ubuntu SMP Mon Jan 18 17:25:17 UTC 2021 x86_64 
x86_64 x86_64 GNU/Linux
$ CC=clang ../openssl/config -d --strict-warnings no-tls1_2-method

Commit log since last time:

a2c911c2d0 Restore GOST macros compatibility with 1.1.1
9293046fb4 apps/x509.c: Rename -signkey to -key for consistency with the req app
2de5d3b87a HTTP: Fix BIO_mem_d2i() on NULL mem input
676d879cb2 http_local.h: Remove unused declaration of HTTP_sendreq_bio()
73e6e3e03e Simplify OCSP_sendreq_bio()
0dca5ede0d Make more use of X509_add_certs(); minor related code & comments 
cleanup
9b9d24f033 OCSP_resp_find_status.pod: Complete the RETURN VALUES section
f477cdfadd crypto/ocsp/ocsp_cl.c: coding style improvements
29ce1066bc Update the demos/README file because it is really old. New demos 
should provide best practice for API use. Add demonstration for computing a 
SHA3-512 digest - digest/EVP_MD_demo
a7a041c230 CI external tests: separate each external test into its own phase
1ddea35bd4 CI external test: for now run only the krb5 and gost_engine tests
ec69d5c9a8 gost_engine test: further cleanups and fixes
b414c8118d gost_engine test: Run also perl and tcl tests
996d2693e2 CI: add job with external tests
c3a85d3d17 DOCS: Document OSSL_STORE_INFO_PUBKEY in doc/man3/OSSL_STORE_INFO.pod
c2ec2bb7c1 Make provider provider_init thread safe, and flag checking/setting 
too
d60a8e0a23 Make ossl_provider_disable_fallback_loading() thread safe
2f17e978a0 test/threadstest.c: Add a test to load providers concurrently
8c631cfaa1 ecx_set_priv_key: Try to obtain libctx from the pkey's keymgmt
2ad5bbe320 bn_ctx.c: Remove TODO 3.0 related to tracing in FIPS module
20cca4db9c ecx_set_priv_key: Remove TODO 3.0 related to setting libctx
22cd04143b do_sigver_init: Remove fallback for missing provider implementations.
0be6cf0c7e Remove some of the TODO 3.0 in crypto/evp related to legacy support.
bffe3ae7b8 crypto/param_build_set.c: Remove irrelevant TODO 3.0
f40fa7b9ad crypto/ppccap.c: Remove useless TODO 3.0
946bdd12a0 include/crypto: Remove TODOs that are irrelevant for 3.0
9522f0a6a9 include/internal: Remove TODOs that are irrelevant for 3.0
2c8a740a9f test/x509: Test for issuer being overwritten when printing.
39a61e69b8 OSSL_STORE: restore diagnostics on decrypt error; provide password 
hints
e3a2ba7547 crypto: rename error flags in internal structures
33ac7b324b Add a new test recipe to verify the generated test fipsmodule.cnf
c9b0214ede Fix the perl code to get FIPSMODULENAME
e25b4db754 TEST: Remove the build of fipsmodule.cnf from test recipes
e9d74dbd36 APPS: Modify 'fipsinstall' to output all notifications on stderr
05869bba7f Make 'tests' depend on a generated 'providers/fipsmodule.cnf'
79f47ef507 build.info: Make it possible to use compiled programs as generators
3f399e3787 build.info: Add the possibility to add dependencies on raw targets
8593ff00cc DOCS: Fix provider-mac.pod and the docs of our implementations
cb54d1b9d7 doc: add a note to the RAND_get0_ calls indicating how to set the 
DRBG type.
f21afe6360 ossl_rsa_sp800_56b_check_public: Be more lenient with small keys
87994aa847 rand: remove FIPS mode conditional code.
fb67126ea8 EVP_PKEY_CTX_get/settable_params: pass provider operation context
4e4ae84056 Fix NULL access in ssl_build_cert_chain() when ctx is NULL.
81f9af3460 Remove todos in decode_der2key.c and decode_ms2key.c
77b03f0e8f Improve error reporting in key exchange provider implementations
f5c629a00a Remove unused MAX_TLS_MAC_SIZE define
fffb67343e Remove todos in providers/implementations/include/prov
8d05a65256 Resolve TODOs in signature implementations.
f378755d62 statem_lib.c: Remove TODOs that are unnecessary
5e2f580d4a test_ssl_new: X448, X25519, and EdDSA are supported with fips
21b7dfa8ad evp_extra_test2: Remove TODO 3.0
b3c155b83c evp_extra_test: Remove TODO comment as setting the curve is mandatory
d36a5dd05e Fix a copy error in evp_extra_test
d7d8e2c894 Fix compiling error on arm
025c0f5289 openssl-cmp.pod.in: replace the term 'verify' by the more correct 
'validate'
dd5fa5f5af CMP: On NULL-DN subject or issuer input omit field in cert template
e1f946630f test: use the new set public and private together call
740582cfaf test: add utility function to set the fake random callback on both 
the public and private instances
fccdb61aee test: update ECDSA and SM2 internal tests in line with the 
fake_random change
5a11de50a4 test: update test_random to create real contexts instead of sharing 
one
0647162f6a make update
bed963d58d Fix build of /dev/crypto engine with no-dynamic-engine option
b0aae91324 Remove RSA SSLv23 padding mode
d546e8e267 Generalize schmeme parsing of OSSL_HTTP_parse_url() to 
OSSL_parse_url()
7932982b88 OSSL_HTTP_parse_url(): Handle any userinfo, query, and fragment 
components

Build log ended with (last 100 lines):

(less 4 skipped subtests: 2 okay)
70-test_sslmessages.t .. skipped: test_sslmessages needs 

Still FAILED build of OpenSSL branch master with options -d --strict-warnings no-dtls1_2

2021-03-09 Thread OpenSSL run-checker
Platform and configuration command:

$ uname -a
Linux run 5.4.0-65-generic #73-Ubuntu SMP Mon Jan 18 17:25:17 UTC 2021 x86_64 
x86_64 x86_64 GNU/Linux
$ CC=clang ../openssl/config -d --strict-warnings no-dtls1_2

Commit log since last time:

a2c911c2d0 Restore GOST macros compatibility with 1.1.1
9293046fb4 apps/x509.c: Rename -signkey to -key for consistency with the req app
2de5d3b87a HTTP: Fix BIO_mem_d2i() on NULL mem input
676d879cb2 http_local.h: Remove unused declaration of HTTP_sendreq_bio()
73e6e3e03e Simplify OCSP_sendreq_bio()
0dca5ede0d Make more use of X509_add_certs(); minor related code & comments 
cleanup
9b9d24f033 OCSP_resp_find_status.pod: Complete the RETURN VALUES section
f477cdfadd crypto/ocsp/ocsp_cl.c: coding style improvements
29ce1066bc Update the demos/README file because it is really old. New demos 
should provide best practice for API use. Add demonstration for computing a 
SHA3-512 digest - digest/EVP_MD_demo
a7a041c230 CI external tests: separate each external test into its own phase
1ddea35bd4 CI external test: for now run only the krb5 and gost_engine tests
ec69d5c9a8 gost_engine test: further cleanups and fixes
b414c8118d gost_engine test: Run also perl and tcl tests
996d2693e2 CI: add job with external tests
c3a85d3d17 DOCS: Document OSSL_STORE_INFO_PUBKEY in doc/man3/OSSL_STORE_INFO.pod
c2ec2bb7c1 Make provider provider_init thread safe, and flag checking/setting 
too
d60a8e0a23 Make ossl_provider_disable_fallback_loading() thread safe
2f17e978a0 test/threadstest.c: Add a test to load providers concurrently
8c631cfaa1 ecx_set_priv_key: Try to obtain libctx from the pkey's keymgmt
2ad5bbe320 bn_ctx.c: Remove TODO 3.0 related to tracing in FIPS module
20cca4db9c ecx_set_priv_key: Remove TODO 3.0 related to setting libctx
22cd04143b do_sigver_init: Remove fallback for missing provider implementations.
0be6cf0c7e Remove some of the TODO 3.0 in crypto/evp related to legacy support.
bffe3ae7b8 crypto/param_build_set.c: Remove irrelevant TODO 3.0
f40fa7b9ad crypto/ppccap.c: Remove useless TODO 3.0
946bdd12a0 include/crypto: Remove TODOs that are irrelevant for 3.0
9522f0a6a9 include/internal: Remove TODOs that are irrelevant for 3.0
2c8a740a9f test/x509: Test for issuer being overwritten when printing.
39a61e69b8 OSSL_STORE: restore diagnostics on decrypt error; provide password 
hints
e3a2ba7547 crypto: rename error flags in internal structures
33ac7b324b Add a new test recipe to verify the generated test fipsmodule.cnf
c9b0214ede Fix the perl code to get FIPSMODULENAME
e25b4db754 TEST: Remove the build of fipsmodule.cnf from test recipes
e9d74dbd36 APPS: Modify 'fipsinstall' to output all notifications on stderr
05869bba7f Make 'tests' depend on a generated 'providers/fipsmodule.cnf'
79f47ef507 build.info: Make it possible to use compiled programs as generators
3f399e3787 build.info: Add the possibility to add dependencies on raw targets
8593ff00cc DOCS: Fix provider-mac.pod and the docs of our implementations
cb54d1b9d7 doc: add a note to the RAND_get0_ calls indicating how to set the 
DRBG type.
f21afe6360 ossl_rsa_sp800_56b_check_public: Be more lenient with small keys
87994aa847 rand: remove FIPS mode conditional code.
fb67126ea8 EVP_PKEY_CTX_get/settable_params: pass provider operation context
4e4ae84056 Fix NULL access in ssl_build_cert_chain() when ctx is NULL.
81f9af3460 Remove todos in decode_der2key.c and decode_ms2key.c
77b03f0e8f Improve error reporting in key exchange provider implementations
f5c629a00a Remove unused MAX_TLS_MAC_SIZE define
fffb67343e Remove todos in providers/implementations/include/prov
8d05a65256 Resolve TODOs in signature implementations.
f378755d62 statem_lib.c: Remove TODOs that are unnecessary
5e2f580d4a test_ssl_new: X448, X25519, and EdDSA are supported with fips
21b7dfa8ad evp_extra_test2: Remove TODO 3.0
b3c155b83c evp_extra_test: Remove TODO comment as setting the curve is mandatory
d36a5dd05e Fix a copy error in evp_extra_test
d7d8e2c894 Fix compiling error on arm
025c0f5289 openssl-cmp.pod.in: replace the term 'verify' by the more correct 
'validate'
dd5fa5f5af CMP: On NULL-DN subject or issuer input omit field in cert template
e1f946630f test: use the new set public and private together call
740582cfaf test: add utility function to set the fake random callback on both 
the public and private instances
fccdb61aee test: update ECDSA and SM2 internal tests in line with the 
fake_random change
5a11de50a4 test: update test_random to create real contexts instead of sharing 
one
0647162f6a make update
bed963d58d Fix build of /dev/crypto engine with no-dynamic-engine option
b0aae91324 Remove RSA SSLv23 padding mode
d546e8e267 Generalize schmeme parsing of OSSL_HTTP_parse_url() to 
OSSL_parse_url()
7932982b88 OSSL_HTTP_parse_url(): Handle any userinfo, query, and fragment 
components

Build log ended with (last 100 lines):

# false
# OPENSSL_TEST_RAND_ORDER=1615337835
not ok 2 - iteration 2
# 

Still FAILED build of OpenSSL branch master with options -d --strict-warnings no-tls1_2

2021-03-09 Thread OpenSSL run-checker
Platform and configuration command:

$ uname -a
Linux run 5.4.0-65-generic #73-Ubuntu SMP Mon Jan 18 17:25:17 UTC 2021 x86_64 
x86_64 x86_64 GNU/Linux
$ CC=clang ../openssl/config -d --strict-warnings no-tls1_2

Commit log since last time:

a2c911c2d0 Restore GOST macros compatibility with 1.1.1
9293046fb4 apps/x509.c: Rename -signkey to -key for consistency with the req app
2de5d3b87a HTTP: Fix BIO_mem_d2i() on NULL mem input
676d879cb2 http_local.h: Remove unused declaration of HTTP_sendreq_bio()
73e6e3e03e Simplify OCSP_sendreq_bio()
0dca5ede0d Make more use of X509_add_certs(); minor related code & comments 
cleanup
9b9d24f033 OCSP_resp_find_status.pod: Complete the RETURN VALUES section
f477cdfadd crypto/ocsp/ocsp_cl.c: coding style improvements
29ce1066bc Update the demos/README file because it is really old. New demos 
should provide best practice for API use. Add demonstration for computing a 
SHA3-512 digest - digest/EVP_MD_demo
a7a041c230 CI external tests: separate each external test into its own phase
1ddea35bd4 CI external test: for now run only the krb5 and gost_engine tests
ec69d5c9a8 gost_engine test: further cleanups and fixes
b414c8118d gost_engine test: Run also perl and tcl tests
996d2693e2 CI: add job with external tests
c3a85d3d17 DOCS: Document OSSL_STORE_INFO_PUBKEY in doc/man3/OSSL_STORE_INFO.pod
c2ec2bb7c1 Make provider provider_init thread safe, and flag checking/setting 
too
d60a8e0a23 Make ossl_provider_disable_fallback_loading() thread safe
2f17e978a0 test/threadstest.c: Add a test to load providers concurrently
8c631cfaa1 ecx_set_priv_key: Try to obtain libctx from the pkey's keymgmt
2ad5bbe320 bn_ctx.c: Remove TODO 3.0 related to tracing in FIPS module
20cca4db9c ecx_set_priv_key: Remove TODO 3.0 related to setting libctx
22cd04143b do_sigver_init: Remove fallback for missing provider implementations.
0be6cf0c7e Remove some of the TODO 3.0 in crypto/evp related to legacy support.
bffe3ae7b8 crypto/param_build_set.c: Remove irrelevant TODO 3.0
f40fa7b9ad crypto/ppccap.c: Remove useless TODO 3.0
946bdd12a0 include/crypto: Remove TODOs that are irrelevant for 3.0
9522f0a6a9 include/internal: Remove TODOs that are irrelevant for 3.0
2c8a740a9f test/x509: Test for issuer being overwritten when printing.
39a61e69b8 OSSL_STORE: restore diagnostics on decrypt error; provide password 
hints
e3a2ba7547 crypto: rename error flags in internal structures
33ac7b324b Add a new test recipe to verify the generated test fipsmodule.cnf
c9b0214ede Fix the perl code to get FIPSMODULENAME
e25b4db754 TEST: Remove the build of fipsmodule.cnf from test recipes
e9d74dbd36 APPS: Modify 'fipsinstall' to output all notifications on stderr
05869bba7f Make 'tests' depend on a generated 'providers/fipsmodule.cnf'
79f47ef507 build.info: Make it possible to use compiled programs as generators
3f399e3787 build.info: Add the possibility to add dependencies on raw targets
8593ff00cc DOCS: Fix provider-mac.pod and the docs of our implementations
cb54d1b9d7 doc: add a note to the RAND_get0_ calls indicating how to set the 
DRBG type.
f21afe6360 ossl_rsa_sp800_56b_check_public: Be more lenient with small keys
87994aa847 rand: remove FIPS mode conditional code.
fb67126ea8 EVP_PKEY_CTX_get/settable_params: pass provider operation context
4e4ae84056 Fix NULL access in ssl_build_cert_chain() when ctx is NULL.
81f9af3460 Remove todos in decode_der2key.c and decode_ms2key.c
77b03f0e8f Improve error reporting in key exchange provider implementations
f5c629a00a Remove unused MAX_TLS_MAC_SIZE define
fffb67343e Remove todos in providers/implementations/include/prov
8d05a65256 Resolve TODOs in signature implementations.
f378755d62 statem_lib.c: Remove TODOs that are unnecessary
5e2f580d4a test_ssl_new: X448, X25519, and EdDSA are supported with fips
21b7dfa8ad evp_extra_test2: Remove TODO 3.0
b3c155b83c evp_extra_test: Remove TODO comment as setting the curve is mandatory
d36a5dd05e Fix a copy error in evp_extra_test
d7d8e2c894 Fix compiling error on arm
025c0f5289 openssl-cmp.pod.in: replace the term 'verify' by the more correct 
'validate'
dd5fa5f5af CMP: On NULL-DN subject or issuer input omit field in cert template
e1f946630f test: use the new set public and private together call
740582cfaf test: add utility function to set the fake random callback on both 
the public and private instances
fccdb61aee test: update ECDSA and SM2 internal tests in line with the 
fake_random change
5a11de50a4 test: update test_random to create real contexts instead of sharing 
one
0647162f6a make update
bed963d58d Fix build of /dev/crypto engine with no-dynamic-engine option
b0aae91324 Remove RSA SSLv23 padding mode
d546e8e267 Generalize schmeme parsing of OSSL_HTTP_parse_url() to 
OSSL_parse_url()
7932982b88 OSSL_HTTP_parse_url(): Handle any userinfo, query, and fragment 
components

Build log ended with (last 100 lines):

(less 4 skipped subtests: 2 okay)
70-test_sslmessages.t .. skipped: test_sslmessages needs TLS 

Build failed: openssl master.40543

2021-03-09 Thread AppVeyor



Build openssl master.40543 failed


Commit 5bd859a60c by Shane Lontis on 3/4/2021 10:22 PM:

Fix usages of const EVP_MD.


Configure your notification preferences



FAILED build of OpenSSL branch master with options -d --strict-warnings no-stdio

2021-03-09 Thread OpenSSL run-checker
Platform and configuration command:

$ uname -a
Linux run 5.4.0-65-generic #73-Ubuntu SMP Mon Jan 18 17:25:17 UTC 2021 x86_64 
x86_64 x86_64 GNU/Linux
$ CC=clang ../openssl/config -d --strict-warnings no-stdio

Commit log since last time:

a2c911c2d0 Restore GOST macros compatibility with 1.1.1
9293046fb4 apps/x509.c: Rename -signkey to -key for consistency with the req app
2de5d3b87a HTTP: Fix BIO_mem_d2i() on NULL mem input
676d879cb2 http_local.h: Remove unused declaration of HTTP_sendreq_bio()
73e6e3e03e Simplify OCSP_sendreq_bio()
0dca5ede0d Make more use of X509_add_certs(); minor related code & comments 
cleanup
9b9d24f033 OCSP_resp_find_status.pod: Complete the RETURN VALUES section
f477cdfadd crypto/ocsp/ocsp_cl.c: coding style improvements
29ce1066bc Update the demos/README file because it is really old. New demos 
should provide best practice for API use. Add demonstration for computing a 
SHA3-512 digest - digest/EVP_MD_demo
a7a041c230 CI external tests: separate each external test into its own phase
1ddea35bd4 CI external test: for now run only the krb5 and gost_engine tests
ec69d5c9a8 gost_engine test: further cleanups and fixes
b414c8118d gost_engine test: Run also perl and tcl tests
996d2693e2 CI: add job with external tests
c3a85d3d17 DOCS: Document OSSL_STORE_INFO_PUBKEY in doc/man3/OSSL_STORE_INFO.pod
c2ec2bb7c1 Make provider provider_init thread safe, and flag checking/setting 
too
d60a8e0a23 Make ossl_provider_disable_fallback_loading() thread safe
2f17e978a0 test/threadstest.c: Add a test to load providers concurrently
8c631cfaa1 ecx_set_priv_key: Try to obtain libctx from the pkey's keymgmt
2ad5bbe320 bn_ctx.c: Remove TODO 3.0 related to tracing in FIPS module
20cca4db9c ecx_set_priv_key: Remove TODO 3.0 related to setting libctx
22cd04143b do_sigver_init: Remove fallback for missing provider implementations.
0be6cf0c7e Remove some of the TODO 3.0 in crypto/evp related to legacy support.
bffe3ae7b8 crypto/param_build_set.c: Remove irrelevant TODO 3.0
f40fa7b9ad crypto/ppccap.c: Remove useless TODO 3.0
946bdd12a0 include/crypto: Remove TODOs that are irrelevant for 3.0
9522f0a6a9 include/internal: Remove TODOs that are irrelevant for 3.0
2c8a740a9f test/x509: Test for issuer being overwritten when printing.
39a61e69b8 OSSL_STORE: restore diagnostics on decrypt error; provide password 
hints
e3a2ba7547 crypto: rename error flags in internal structures
33ac7b324b Add a new test recipe to verify the generated test fipsmodule.cnf
c9b0214ede Fix the perl code to get FIPSMODULENAME
e25b4db754 TEST: Remove the build of fipsmodule.cnf from test recipes
e9d74dbd36 APPS: Modify 'fipsinstall' to output all notifications on stderr
05869bba7f Make 'tests' depend on a generated 'providers/fipsmodule.cnf'
79f47ef507 build.info: Make it possible to use compiled programs as generators
3f399e3787 build.info: Add the possibility to add dependencies on raw targets
8593ff00cc DOCS: Fix provider-mac.pod and the docs of our implementations
cb54d1b9d7 doc: add a note to the RAND_get0_ calls indicating how to set the 
DRBG type.
f21afe6360 ossl_rsa_sp800_56b_check_public: Be more lenient with small keys
87994aa847 rand: remove FIPS mode conditional code.
fb67126ea8 EVP_PKEY_CTX_get/settable_params: pass provider operation context
4e4ae84056 Fix NULL access in ssl_build_cert_chain() when ctx is NULL.
81f9af3460 Remove todos in decode_der2key.c and decode_ms2key.c
77b03f0e8f Improve error reporting in key exchange provider implementations
f5c629a00a Remove unused MAX_TLS_MAC_SIZE define
fffb67343e Remove todos in providers/implementations/include/prov
8d05a65256 Resolve TODOs in signature implementations.
f378755d62 statem_lib.c: Remove TODOs that are unnecessary
5e2f580d4a test_ssl_new: X448, X25519, and EdDSA are supported with fips
21b7dfa8ad evp_extra_test2: Remove TODO 3.0
b3c155b83c evp_extra_test: Remove TODO comment as setting the curve is mandatory
d36a5dd05e Fix a copy error in evp_extra_test
d7d8e2c894 Fix compiling error on arm
025c0f5289 openssl-cmp.pod.in: replace the term 'verify' by the more correct 
'validate'
dd5fa5f5af CMP: On NULL-DN subject or issuer input omit field in cert template
e1f946630f test: use the new set public and private together call
740582cfaf test: add utility function to set the fake random callback on both 
the public and private instances
fccdb61aee test: update ECDSA and SM2 internal tests in line with the 
fake_random change
5a11de50a4 test: update test_random to create real contexts instead of sharing 
one
0647162f6a make update
bed963d58d Fix build of /dev/crypto engine with no-dynamic-engine option
b0aae91324 Remove RSA SSLv23 padding mode
d546e8e267 Generalize schmeme parsing of OSSL_HTTP_parse_url() to 
OSSL_parse_url()
7932982b88 OSSL_HTTP_parse_url(): Handle any userinfo, query, and fragment 
components

Build log ended with (last 100 lines):

clang  -I. -Iinclude -Iproviders/common/include 
-Iproviders/implementations/include -I../openssl -I../openssl/include 

[openssl] master update

2021-03-09 Thread beldmit
The branch master has been updated
   via  896dcda18bf9347deb507f1d3c1f7e17638dd745 (commit)
  from  c99248ea812ddc8df9194ffa2b2c8a31117bcb26 (commit)


- Log -
commit 896dcda18bf9347deb507f1d3c1f7e17638dd745
Author: Dmitry Belyavskiy 
Date:   Mon Mar 8 21:36:10 2021 +0100

Non-const accessor to legacy keys

Fixes #14466.

Reverting the changes of the EVP_PKEY_get0 function.

Reviewed-by: Tomas Mraz 
(Merged from https://github.com/openssl/openssl/pull/14468)

---

Summary of changes:
 CHANGES.md |  8 ++--
 crypto/evp/p_lib.c | 34 +++---
 doc/man3/EVP_PKEY_set1_RSA.pod |  9 ++---
 include/openssl/evp.h  |  2 +-
 test/threadstest.c |  2 +-
 util/missingcrypto.txt |  1 -
 6 files changed, 37 insertions(+), 19 deletions(-)

diff --git a/CHANGES.md b/CHANGES.md
index c8f8e503ee..def93b8ff5 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -22,8 +22,12 @@ OpenSSL 3.0
 ---
 
 ### Changes between 1.1.1 and 3.0 [xx XXX ]
+ * The deprecated function EVP_PKEY_get0() now returns NULL being called for a
+   provided key.
 
- * The deprecated functions EVP_PKEY_get0(), EVP_PKEY_get0_RSA(),
+   *Dmitry Belyavskiy*
+
+ * The deprecated functions EVP_PKEY_get0_RSA(),
EVP_PKEY_get0_DSA(), EVP_PKEY_get0_EC_KEY(), EVP_PKEY_get0_DH(),
EVP_PKEY_get0_hmac(), EVP_PKEY_get0_poly1305() and EVP_PKEY_get0_siphash() 
as
well as the similarly named "get1" functions behave slightly differently in
@@ -41,7 +45,7 @@ OpenSSL 3.0
 
For the above reasons the keys returned from these functions should 
typically
be treated as read-only. To emphasise this the value returned from
-   EVP_PKEY_get0(), EVP_PKEY_get0_RSA(), EVP_PKEY_get0_DSA(),
+   EVP_PKEY_get0_RSA(), EVP_PKEY_get0_DSA(),
EVP_PKEY_get0_EC_KEY() and EVP_PKEY_get0_DH() has been made const. This may
break some existing code. Applications broken by this change should be
modified. The preferred solution is to refactor the code to avoid the use of
diff --git a/crypto/evp/p_lib.c b/crypto/evp/p_lib.c
index 21fbc2ea4c..30ba8d6428 100644
--- a/crypto/evp/p_lib.c
+++ b/crypto/evp/p_lib.c
@@ -740,12 +740,15 @@ int EVP_PKEY_assign(EVP_PKEY *pkey, int type, void *key)
 }
 # endif
 
-const void *EVP_PKEY_get0(const EVP_PKEY *pkey)
+void *EVP_PKEY_get0(const EVP_PKEY *pkey)
 {
 if (pkey == NULL)
 return NULL;
 
-return evp_pkey_get_legacy((EVP_PKEY *)pkey);
+if (!evp_pkey_is_provided(pkey))
+return pkey->pkey.ptr;
+
+return NULL;
 }
 
 const unsigned char *EVP_PKEY_get0_hmac(const EVP_PKEY *pkey, size_t *len)
@@ -755,9 +758,12 @@ const unsigned char *EVP_PKEY_get0_hmac(const EVP_PKEY 
*pkey, size_t *len)
 ERR_raise(ERR_LIB_EVP, EVP_R_EXPECTING_AN_HMAC_KEY);
 return NULL;
 }
-os = EVP_PKEY_get0(pkey);
-*len = os->length;
-return os->data;
+os = evp_pkey_get_legacy((EVP_PKEY *)pkey);
+if (os != NULL) {
+*len = os->length;
+return os->data;
+}
+return NULL;
 }
 
 # ifndef OPENSSL_NO_POLY1305
@@ -768,9 +774,12 @@ const unsigned char *EVP_PKEY_get0_poly1305(const EVP_PKEY 
*pkey, size_t *len)
 ERR_raise(ERR_LIB_EVP, EVP_R_EXPECTING_A_POLY1305_KEY);
 return NULL;
 }
-os = EVP_PKEY_get0(pkey);
-*len = os->length;
-return os->data;
+os = evp_pkey_get_legacy((EVP_PKEY *)pkey);
+if (os != NULL) {
+*len = os->length;
+return os->data;
+}
+return NULL;
 }
 # endif
 
@@ -783,9 +792,12 @@ const unsigned char *EVP_PKEY_get0_siphash(const EVP_PKEY 
*pkey, size_t *len)
 ERR_raise(ERR_LIB_EVP, EVP_R_EXPECTING_A_SIPHASH_KEY);
 return NULL;
 }
-os = EVP_PKEY_get0(pkey);
-*len = os->length;
-return os->data;
+os = evp_pkey_get_legacy((EVP_PKEY *)pkey);
+if (os != NULL) {
+*len = os->length;
+return os->data;
+}
+return NULL;
 }
 # endif
 
diff --git a/doc/man3/EVP_PKEY_set1_RSA.pod b/doc/man3/EVP_PKEY_set1_RSA.pod
index 64760b2923..68e13d3480 100644
--- a/doc/man3/EVP_PKEY_set1_RSA.pod
+++ b/doc/man3/EVP_PKEY_set1_RSA.pod
@@ -8,8 +8,9 @@ EVP_PKEY_get0_RSA, EVP_PKEY_get0_DSA, EVP_PKEY_get0_DH, 
EVP_PKEY_get0_EC_KEY,
 EVP_PKEY_assign_RSA, EVP_PKEY_assign_DSA, EVP_PKEY_assign_DH,
 EVP_PKEY_assign_EC_KEY, EVP_PKEY_assign_POLY1305, EVP_PKEY_assign_SIPHASH,
 EVP_PKEY_get0_hmac, EVP_PKEY_get0_poly1305, EVP_PKEY_get0_siphash,
-EVP_PKEY_type, EVP_PKEY_id, EVP_PKEY_base_id, EVP_PKEY_set_alias_type,
-EVP_PKEY_set1_engine, EVP_PKEY_get0_engine - EVP_PKEY assignment functions
+EVP_PKEY_get0, EVP_PKEY_type, EVP_PKEY_id, EVP_PKEY_base_id,
+EVP_PKEY_set_alias_type, EVP_PKEY_set1_engine, EVP_PKEY_get0_engine -
+EVP_PKEY assignment functions
 
 =head1 SYNOPSIS
 
@@ -42,6 +43,7 @@ L:
  const DSA 

Still FAILED build of OpenSSL branch master with options -d --strict-warnings no-sock

2021-03-09 Thread OpenSSL run-checker
Platform and configuration command:

$ uname -a
Linux run 5.4.0-65-generic #73-Ubuntu SMP Mon Jan 18 17:25:17 UTC 2021 x86_64 
x86_64 x86_64 GNU/Linux
$ CC=clang ../openssl/config -d --strict-warnings no-sock

Commit log since last time:

a2c911c2d0 Restore GOST macros compatibility with 1.1.1
9293046fb4 apps/x509.c: Rename -signkey to -key for consistency with the req app
2de5d3b87a HTTP: Fix BIO_mem_d2i() on NULL mem input
676d879cb2 http_local.h: Remove unused declaration of HTTP_sendreq_bio()
73e6e3e03e Simplify OCSP_sendreq_bio()
0dca5ede0d Make more use of X509_add_certs(); minor related code & comments 
cleanup
9b9d24f033 OCSP_resp_find_status.pod: Complete the RETURN VALUES section
f477cdfadd crypto/ocsp/ocsp_cl.c: coding style improvements
29ce1066bc Update the demos/README file because it is really old. New demos 
should provide best practice for API use. Add demonstration for computing a 
SHA3-512 digest - digest/EVP_MD_demo
a7a041c230 CI external tests: separate each external test into its own phase
1ddea35bd4 CI external test: for now run only the krb5 and gost_engine tests
ec69d5c9a8 gost_engine test: further cleanups and fixes
b414c8118d gost_engine test: Run also perl and tcl tests
996d2693e2 CI: add job with external tests
c3a85d3d17 DOCS: Document OSSL_STORE_INFO_PUBKEY in doc/man3/OSSL_STORE_INFO.pod
c2ec2bb7c1 Make provider provider_init thread safe, and flag checking/setting 
too
d60a8e0a23 Make ossl_provider_disable_fallback_loading() thread safe
2f17e978a0 test/threadstest.c: Add a test to load providers concurrently
8c631cfaa1 ecx_set_priv_key: Try to obtain libctx from the pkey's keymgmt
2ad5bbe320 bn_ctx.c: Remove TODO 3.0 related to tracing in FIPS module
20cca4db9c ecx_set_priv_key: Remove TODO 3.0 related to setting libctx
22cd04143b do_sigver_init: Remove fallback for missing provider implementations.
0be6cf0c7e Remove some of the TODO 3.0 in crypto/evp related to legacy support.
bffe3ae7b8 crypto/param_build_set.c: Remove irrelevant TODO 3.0
f40fa7b9ad crypto/ppccap.c: Remove useless TODO 3.0
946bdd12a0 include/crypto: Remove TODOs that are irrelevant for 3.0
9522f0a6a9 include/internal: Remove TODOs that are irrelevant for 3.0
2c8a740a9f test/x509: Test for issuer being overwritten when printing.
39a61e69b8 OSSL_STORE: restore diagnostics on decrypt error; provide password 
hints
e3a2ba7547 crypto: rename error flags in internal structures
33ac7b324b Add a new test recipe to verify the generated test fipsmodule.cnf
c9b0214ede Fix the perl code to get FIPSMODULENAME
e25b4db754 TEST: Remove the build of fipsmodule.cnf from test recipes
e9d74dbd36 APPS: Modify 'fipsinstall' to output all notifications on stderr
05869bba7f Make 'tests' depend on a generated 'providers/fipsmodule.cnf'
79f47ef507 build.info: Make it possible to use compiled programs as generators
3f399e3787 build.info: Add the possibility to add dependencies on raw targets
8593ff00cc DOCS: Fix provider-mac.pod and the docs of our implementations
cb54d1b9d7 doc: add a note to the RAND_get0_ calls indicating how to set the 
DRBG type.
f21afe6360 ossl_rsa_sp800_56b_check_public: Be more lenient with small keys
87994aa847 rand: remove FIPS mode conditional code.
fb67126ea8 EVP_PKEY_CTX_get/settable_params: pass provider operation context
4e4ae84056 Fix NULL access in ssl_build_cert_chain() when ctx is NULL.
81f9af3460 Remove todos in decode_der2key.c and decode_ms2key.c
77b03f0e8f Improve error reporting in key exchange provider implementations
f5c629a00a Remove unused MAX_TLS_MAC_SIZE define
fffb67343e Remove todos in providers/implementations/include/prov
8d05a65256 Resolve TODOs in signature implementations.
f378755d62 statem_lib.c: Remove TODOs that are unnecessary
5e2f580d4a test_ssl_new: X448, X25519, and EdDSA are supported with fips
21b7dfa8ad evp_extra_test2: Remove TODO 3.0
b3c155b83c evp_extra_test: Remove TODO comment as setting the curve is mandatory
d36a5dd05e Fix a copy error in evp_extra_test
d7d8e2c894 Fix compiling error on arm
025c0f5289 openssl-cmp.pod.in: replace the term 'verify' by the more correct 
'validate'
dd5fa5f5af CMP: On NULL-DN subject or issuer input omit field in cert template
e1f946630f test: use the new set public and private together call
740582cfaf test: add utility function to set the fake random callback on both 
the public and private instances
fccdb61aee test: update ECDSA and SM2 internal tests in line with the 
fake_random change
5a11de50a4 test: update test_random to create real contexts instead of sharing 
one
0647162f6a make update
bed963d58d Fix build of /dev/crypto engine with no-dynamic-engine option
b0aae91324 Remove RSA SSLv23 padding mode
d546e8e267 Generalize schmeme parsing of OSSL_HTTP_parse_url() to 
OSSL_parse_url()
7932982b88 OSSL_HTTP_parse_url(): Handle any userinfo, query, and fragment 
components

Build log ended with (last 100 lines):

70-test_sslrecords.t ... skipped: test_sslrecords needs the sock 
feature enabled
70-test_sslsessiontick.t 

Build failed: openssl master.40519

2021-03-09 Thread AppVeyor



Build openssl master.40519 failed


Commit 1d53952ef3 by Milos Prvulovic on 2/28/2021 11:33 PM:

Added randomization to constant time swaps in ECC to mitigate side channel attacks like None@Once


Configure your notification preferences



[openssl] master update

2021-03-09 Thread Dr . Paul Dale
The branch master has been updated
   via  c99248ea812ddc8df9194ffa2b2c8a31117bcb26 (commit)
  from  e5499a3cac1e823c3e0697e8667e952317b70cc8 (commit)


- Log -
commit c99248ea812ddc8df9194ffa2b2c8a31117bcb26
Author: Arthur Gautier 
Date:   Sat Mar 6 23:08:08 2021 +

EVP_KDF-KB man page: Fix typo in the example code

CLA: trivial
Signed-off-by: Arthur Gautier 

Reviewed-by: Tomas Mraz 
Reviewed-by: Paul Dale 
(Merged from https://github.com/openssl/openssl/pull/14455)

---

Summary of changes:
 doc/man7/EVP_KDF-KB.pod | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/doc/man7/EVP_KDF-KB.pod b/doc/man7/EVP_KDF-KB.pod
index b8d7b15902..5da2787c0e 100644
--- a/doc/man7/EVP_KDF-KB.pod
+++ b/doc/man7/EVP_KDF-KB.pod
@@ -102,7 +102,7 @@ Label "label", and Context "context".
  *p++ = OSSL_PARAM_construct_utf8_string(OSSL_KDF_PARAM_MAC,
  "HMAC", 0);
  *p++ = OSSL_PARAM_construct_octet_string(OSSL_KDF_PARAM_KEY,
-  "secret", strlen("secret"))
+  "secret", strlen("secret"));
  *p++ = OSSL_PARAM_construct_octet_string(OSSL_KDF_PARAM_SALT,
   "label", strlen("label"));
  *p++ = OSSL_PARAM_construct_octet_string(OSSL_KDF_PARAM_INFO,


[openssl] master update

2021-03-09 Thread Dr . Paul Dale
The branch master has been updated
   via  e5499a3cac1e823c3e0697e8667e952317b70cc8 (commit)
  from  4c52ee1dbfa1913a14968f395cc9900ed9beee5e (commit)


- Log -
commit e5499a3cac1e823c3e0697e8667e952317b70cc8
Author: Alistair Francis 
Date:   Thu Mar 4 12:10:11 2021 -0500

Fixup support for io_pgetevents_time64 syscall

This is a fixup for the original commit 
5b5e2985f355c8e99c196d9ce5d02c15bebadfbc
"Add support for io_pgetevents_time64 syscall" that didn't correctly
work for 32-bit architecutres with a 64-bit time_t that aren't RISC-V.

For a full discussion of the issue see:

https://github.com/openssl/openssl/commit/5b5e2985f355c8e99c196d9ce5d02c15bebadfbc

Signed-off-by: Alistair Francis 

Reviewed-by: Tomas Mraz 
Reviewed-by: Paul Dale 
(Merged from https://github.com/openssl/openssl/pull/14432)

---

Summary of changes:
 engines/e_afalg.c | 55 ++-
 1 file changed, 42 insertions(+), 13 deletions(-)

diff --git a/engines/e_afalg.c b/engines/e_afalg.c
index 9480d7c24b..4e9d67db2d 100644
--- a/engines/e_afalg.c
+++ b/engines/e_afalg.c
@@ -124,27 +124,56 @@ static ossl_inline int io_read(aio_context_t ctx, long n, 
struct iocb **iocb)
 return syscall(__NR_io_submit, ctx, n, iocb);
 }
 
+/* A version of 'struct timespec' with 32-bit time_t and nanoseconds.  */
+struct __timespec32
+{
+  __kernel_long_t tv_sec;
+  __kernel_long_t tv_nsec;
+};
+
 static ossl_inline int io_getevents(aio_context_t ctx, long min, long max,
struct io_event *events,
struct timespec *timeout)
 {
+#if defined(__NR_io_pgetevents_time64)
+/* Check if we are a 32-bit architecture with a 64-bit time_t */
+if (sizeof(*timeout) != sizeof(struct __timespec32)) {
+int ret = syscall(__NR_io_pgetevents_time64, ctx, min, max, events,
+  timeout, NULL);
+if (ret == 0 || errno != ENOSYS)
+return ret;
+}
+#endif
+
 #if defined(__NR_io_getevents)
-return syscall(__NR_io_getevents, ctx, min, max, events, timeout);
-#elif defined(__NR_io_pgetevents_time64)
-/* Let's only support the 64 suffix syscalls for 64-bit time_t.
- * This simplifies the code for us as we don't need to use a 64-bit
- * version of timespec with a 32-bit time_t and handle converting
- * between 64-bit and 32-bit times and check for overflows.
- */
-if (sizeof(timeout->tv_sec) == 8)
-return syscall(__NR_io_pgetevents_time64, ctx, min, max, events, 
timeout, NULL);
+if (sizeof(*timeout) == sizeof(struct __timespec32))
+/*
+ * time_t matches our architecture length, we can just use
+ * __NR_io_getevents
+ */
+return syscall(__NR_io_getevents, ctx, min, max, events, timeout);
 else {
-errno = ENOSYS;
-return -1;
+/*
+ * We don't have __NR_io_pgetevents_time64, but we are using a
+ * 64-bit time_t on a 32-bit architecture. If we can fit the
+ * timeout value in a 32-bit time_t, then let's do that
+ * and then use the __NR_io_getevents syscall.
+ */
+if (timeout && timeout->tv_sec == (long)timeout->tv_sec) {
+struct __timespec32 ts32;
+
+ts32.tv_sec = (__kernel_long_t) timeout->tv_sec;
+ts32.tv_nsec = (__kernel_long_t) timeout->tv_nsec;
+
+return syscall(__NR_io_getevents, ctx, min, max, events, ts32);
+} else {
+return syscall(__NR_io_getevents, ctx, min, max, events, NULL);
+}
 }
-#else
-# error "We require either the io_getevents syscall or 
__NR_io_pgetevents_time64."
 #endif
+
+errno = ENOSYS;
+return -1;
 }
 
 static void afalg_waitfd_cleanup(ASYNC_WAIT_CTX *ctx, const void *key,


[openssl] master update

2021-03-09 Thread dev
The branch master has been updated
   via  4c52ee1dbfa1913a14968f395cc9900ed9beee5e (commit)
   via  b6a06b13a4ea97cdc831926339a23ca48970b19d (commit)
  from  3e6a0d57389d7e5e45b06753692873e40dd125e9 (commit)


- Log -
commit 4c52ee1dbfa1913a14968f395cc9900ed9beee5e
Author: Dr. David von Oheimb 
Date:   Mon Mar 8 08:04:54 2021 +0100

cmp_hdr.c: Fix minor Coverity issue CID 1473605

Reviewed-by: Tomas Mraz 
(Merged from https://github.com/openssl/openssl/pull/14460)

commit b6a06b13a4ea97cdc831926339a23ca48970b19d
Author: Dr. David von Oheimb 
Date:   Mon Mar 8 07:58:04 2021 +0100

http_test.c: Fix minor Coverity issue CID 1473608

Reviewed-by: Tomas Mraz 
(Merged from https://github.com/openssl/openssl/pull/14460)

---

Summary of changes:
 crypto/cmp/cmp_hdr.c | 3 ---
 test/http_test.c | 3 ++-
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/crypto/cmp/cmp_hdr.c b/crypto/cmp/cmp_hdr.c
index 58b07dd8b2..a1770c1204 100644
--- a/crypto/cmp/cmp_hdr.c
+++ b/crypto/cmp/cmp_hdr.c
@@ -283,9 +283,6 @@ int ossl_cmp_hdr_set_transactionID(OSSL_CMP_CTX *ctx, 
OSSL_CMP_PKIHEADER *hdr)
 OPENSSL_free(tid);
 }
 
-if (ctx->transactionID == NULL
-&& !set_random(>transactionID, ctx, 
OSSL_CMP_TRANSACTIONID_LENGTH))
-return 0;
 return ossl_cmp_asn1_octet_string_set1(>transactionID,
ctx->transactionID);
 }
diff --git a/test/http_test.c b/test/http_test.c
index ef0a1d4bf0..e59ef63833 100644
--- a/test/http_test.c
+++ b/test/http_test.c
@@ -142,7 +142,8 @@ static int test_http_url_ok(const char *url, int exp_ssl, 
const char *exp_host,
 int exp_num, num, ssl;
 int res;
 
-TEST_int_eq(sscanf(exp_port, "%d", _num), 1);
+if (!TEST_int_eq(sscanf(exp_port, "%d", _num), 1))
+return 0;
 res = TEST_true(OSSL_HTTP_parse_url(url, , , , , ,
 , , ))
 && TEST_str_eq(host, exp_host)