Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Slicer crashes when trying to load non-image data #7

Closed
slicerbot opened this issue Mar 12, 2020 · 0 comments
Closed

Slicer crashes when trying to load non-image data #7

slicerbot opened this issue Mar 12, 2020 · 0 comments

Comments

@slicerbot
Copy link
Collaborator

This issue was created automatically from an original Mantis Issue. Further discussion may take place here.

jcfr pushed a commit that referenced this issue Jun 20, 2020
This commit updates OpenSSL external project to default to OpenSSL
1.1.1g when Slicer is built against Qt >= 5.12.4.

It fixes the following reported issues:

* Ubuntu 18.04: fixes segmentation fault on startup when
  Slicer is built against Qt 5.12.9 or Qt 5.15.
  See [1] and [2]

* macOS 10.13.6: fixes the following tests:
  - py_nomainwindow_qSlicerEditorModuleGenericTest
  - py_nomainwindow_test_slicer_environment
  - py_StandaloneEditorWidgetTest
  - py_SurfaceToolbox
  - py_ThresholdThreadingTest
  - py_WebEngine
  - qSlicerSequencesModuleWidgetGenericTest
  - qSlicerSslTest
  Examples of error messages listed in [3]

[1] startup segmentation fault when built against Qt 5.12.9:

  #0  __strcmp_avx2 () at ../sysdeps/x86_64/multiarch/strcmp-avx2.S:101
  #1  0x00007fe8026e194c in getrn () from /path/to/Slicer-SuperBuild-Debug-5.12.9/OpenSSL/libcrypto.so.1.0.0
  #2  0x00007fe8026e1c7e in lh_insert () from /path/to/Slicer-SuperBuild-Debug-5.12.9/OpenSSL/libcrypto.so.1.0.0
  #3  0x00007fe80262cd94 in OBJ_NAME_add () from /path/to/Slicer-SuperBuild-Debug-5.12.9/OpenSSL/libcrypto.so.1.0.0
  #4  0x00007fe7fc104392 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #5  0x00007fe8186d947f in __pthread_once_slow (once_control=0x7fe7fc160928, init_routine=0x7fe7fc1042a0) at pthread_once.c:116
  #6  0x00007fe7f589c78d in CRYPTO_THREAD_run_once () from /lib/x86_64-linux-gnu/libcrypto.so.1.1
  #7  0x00007fe7fc10457b in OPENSSL_init_ssl () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #8  0x00007fe81d1513ef in QSslSocketPrivate::ensureLibraryLoaded () at ssl/qsslsocket_openssl11.cpp:92
  #9  0x00007fe823d6632c in qSlicerCoreApplicationPrivate::init (this=0x56387f5c2700) at /path/to/Slicer/Base/QTCore/qSlicerCoreApplication.cxx:265
  #10 0x00007fe823f36a26 in qSlicerApplicationPrivate::init (this=0x56387f5c2700) at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:203
  #11 0x00007fe823f37c25 in qSlicerApplication::qSlicerApplication (this=0x7ffc3c2f00c0, _argc=@0x7ffc3c2f006c: 1, _argv=0x7ffc3c2f0238)
      at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:357
  #12 0x000056387ef18fc6 in (anonymous namespace)::SlicerAppMain (argc=1, argv=0x7ffc3c2f0238) at /path/to/Slicer/Applications/SlicerApp/Main.cxx:40
  #13 0x000056387ef192fe in main (argc=1, argv=0x7ffc3c2f0238) at /path/to/Slicer/Base/QTApp/qSlicerApplicationMainWrapper.cxx:56

[2] startup segmentation fault when built against Qt 5.15:

  #0  __strcmp_avx2 () at ../sysdeps/x86_64/multiarch/strcmp-avx2.S:101
  #1  0x00007f7ed11fa94c in getrn () from /path/to/Slicer-SuperBuild-Debug/OpenSSL/libcrypto.so.1.0.0
  #2  0x00007f7ed11fac7e in lh_insert () from /path/to/Slicer-SuperBuild-Debug/OpenSSL/libcrypto.so.1.0.0
  #3  0x00007f7ed1145d94 in OBJ_NAME_add () from /path/to/Slicer-SuperBuild-Debug/OpenSSL/libcrypto.so.1.0.0
  #4  0x00007f7eb00cc392 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #5  0x00007f7ec4d4647f in __pthread_once_slow (once_control=0x7f7eb0128928, init_routine=0x7f7eb00cc2a0) at pthread_once.c:116
  #6  0x00007f7eab60d78d in CRYPTO_THREAD_run_once () from /lib/x86_64-linux-gnu/libcrypto.so.1.1
  #7  0x00007f7eb00cc57b in OPENSSL_init_ssl () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #8  0x00007f7ed0d499f7 in QSslSocketPrivate::ensureLibraryLoaded () at ssl/qsslsocket_openssl.cpp:1954
  #9  0x00007f7edd7a5780 in qSlicerCoreApplicationPrivate::init (this=0x56465d030b00) at /path/to/Slicer/Base/QTCore/qSlicerCoreApplication.cxx:265
  #10 0x00007f7ede3ac0dc in qSlicerApplicationPrivate::init (this=0x56465d030b00) at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:203
  #11 0x00007f7ede3ad2db in qSlicerApplication::qSlicerApplication (this=0x7ffee9ad17b0, _argc=@0x7ffee9ad175c: 1, _argv=0x7ffee9ad1928)
      at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:357
  #12 0x000056465aebefa6 in (anonymous namespace)::SlicerAppMain (argc=1, argv=0x7ffee9ad1928) at /path/to/Slicer/Applications/SlicerApp/Main.cxx:40
  #13 0x000056465aebf2de in main (argc=1, argv=0x7ffee9ad1928) at /path/to/Slicer/Base/QTApp/qSlicerApplicationMainWrapper.cxx:56

[3] macOS error message reported on test failure:

  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_init_ssl
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_init_crypto
  qt.network.ssl: QSslSocket: cannot resolve ASN1_STRING_get0_data
  qt.network.ssl: QSslSocket: cannot resolve EVP_CIPHER_CTX_reset
  qt.network.ssl: QSslSocket: cannot resolve EVP_PKEY_up_ref
  qt.network.ssl: QSslSocket: cannot resolve RSA_bits
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_new_null
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_push
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_free
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_num
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_pop_free
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_value
  qt.network.ssl: QSslSocket: cannot resolve DH_get0_pqg
  qt.network.ssl: QSslSocket: cannot resolve SSL_CTX_set_options
  qt.network.ssl: QSslSocket: cannot resolve SSL_CTX_set_ciphersuites
  qt.network.ssl: QSslSocket: cannot resolve SSL_set_psk_use_session_callback
  qt.network.ssl: QSslSocket: cannot resolve SSL_SESSION_is_resumable
  qt.network.ssl: QSslSocket: cannot resolve SSL_get_client_random
  qt.network.ssl: QSslSocket: cannot resolve SSL_SESSION_get_master_key
  qt.network.ssl: QSslSocket: cannot resolve SSL_session_reused
  qt.network.ssl: QSslSocket: cannot resolve SSL_set_options
  qt.network.ssl: QSslSocket: cannot resolve TLS_method
  qt.network.ssl: QSslSocket: cannot resolve TLS_client_method
  qt.network.ssl: QSslSocket: cannot resolve TLS_server_method
  qt.network.ssl: QSslSocket: cannot resolve X509_up_ref
  qt.network.ssl: QSslSocket: cannot resolve X509_STORE_CTX_get0_chain
  qt.network.ssl: QSslSocket: cannot resolve X509_getm_notBefore
  qt.network.ssl: QSslSocket: cannot resolve X509_getm_notAfter
  qt.network.ssl: QSslSocket: cannot resolve X509_get_version
  qt.network.ssl: QSslSocket: cannot resolve X509_STORE_set_ex_data
  qt.network.ssl: QSslSocket: cannot resolve X509_STORE_get_ex_data
  qt.network.ssl: QSslSocket: cannot resolve OpenSSL_version_num
  qt.network.ssl: QSslSocket: cannot resolve OpenSSL_version
  qt.network.ssl: Incompatible version of OpenSSL
 [SSL] SSL support disabled - Failed to load SSL library !
 [SSL] Failed to load Slicer.crt
jcfr pushed a commit that referenced this issue Jun 21, 2020
This commit updates OpenSSL external project to default to OpenSSL
1.1.1g when Slicer is built against Qt >= 5.12.4.

It fixes the following reported issues:

* Ubuntu 18.04: fixes segmentation fault on startup when
  Slicer is built against Qt 5.12.9 or Qt 5.15.
  See [1] and [2]

* macOS 10.13.6: fixes the following tests:
  - py_nomainwindow_qSlicerEditorModuleGenericTest
  - py_nomainwindow_test_slicer_environment
  - py_StandaloneEditorWidgetTest
  - py_SurfaceToolbox
  - py_ThresholdThreadingTest
  - py_WebEngine
  - qSlicerSequencesModuleWidgetGenericTest
  - qSlicerSslTest
  Examples of error messages listed in [3]

[1] startup segmentation fault when built against Qt 5.12.9:

  #0  __strcmp_avx2 () at ../sysdeps/x86_64/multiarch/strcmp-avx2.S:101
  #1  0x00007fe8026e194c in getrn () from /path/to/Slicer-SuperBuild-Debug-5.12.9/OpenSSL/libcrypto.so.1.0.0
  #2  0x00007fe8026e1c7e in lh_insert () from /path/to/Slicer-SuperBuild-Debug-5.12.9/OpenSSL/libcrypto.so.1.0.0
  #3  0x00007fe80262cd94 in OBJ_NAME_add () from /path/to/Slicer-SuperBuild-Debug-5.12.9/OpenSSL/libcrypto.so.1.0.0
  #4  0x00007fe7fc104392 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #5  0x00007fe8186d947f in __pthread_once_slow (once_control=0x7fe7fc160928, init_routine=0x7fe7fc1042a0) at pthread_once.c:116
  #6  0x00007fe7f589c78d in CRYPTO_THREAD_run_once () from /lib/x86_64-linux-gnu/libcrypto.so.1.1
  #7  0x00007fe7fc10457b in OPENSSL_init_ssl () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #8  0x00007fe81d1513ef in QSslSocketPrivate::ensureLibraryLoaded () at ssl/qsslsocket_openssl11.cpp:92
  #9  0x00007fe823d6632c in qSlicerCoreApplicationPrivate::init (this=0x56387f5c2700) at /path/to/Slicer/Base/QTCore/qSlicerCoreApplication.cxx:265
  #10 0x00007fe823f36a26 in qSlicerApplicationPrivate::init (this=0x56387f5c2700) at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:203
  #11 0x00007fe823f37c25 in qSlicerApplication::qSlicerApplication (this=0x7ffc3c2f00c0, _argc=@0x7ffc3c2f006c: 1, _argv=0x7ffc3c2f0238)
      at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:357
  #12 0x000056387ef18fc6 in (anonymous namespace)::SlicerAppMain (argc=1, argv=0x7ffc3c2f0238) at /path/to/Slicer/Applications/SlicerApp/Main.cxx:40
  #13 0x000056387ef192fe in main (argc=1, argv=0x7ffc3c2f0238) at /path/to/Slicer/Base/QTApp/qSlicerApplicationMainWrapper.cxx:56

[2] startup segmentation fault when built against Qt 5.15:

  #0  __strcmp_avx2 () at ../sysdeps/x86_64/multiarch/strcmp-avx2.S:101
  #1  0x00007f7ed11fa94c in getrn () from /path/to/Slicer-SuperBuild-Debug/OpenSSL/libcrypto.so.1.0.0
  #2  0x00007f7ed11fac7e in lh_insert () from /path/to/Slicer-SuperBuild-Debug/OpenSSL/libcrypto.so.1.0.0
  #3  0x00007f7ed1145d94 in OBJ_NAME_add () from /path/to/Slicer-SuperBuild-Debug/OpenSSL/libcrypto.so.1.0.0
  #4  0x00007f7eb00cc392 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #5  0x00007f7ec4d4647f in __pthread_once_slow (once_control=0x7f7eb0128928, init_routine=0x7f7eb00cc2a0) at pthread_once.c:116
  #6  0x00007f7eab60d78d in CRYPTO_THREAD_run_once () from /lib/x86_64-linux-gnu/libcrypto.so.1.1
  #7  0x00007f7eb00cc57b in OPENSSL_init_ssl () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #8  0x00007f7ed0d499f7 in QSslSocketPrivate::ensureLibraryLoaded () at ssl/qsslsocket_openssl.cpp:1954
  #9  0x00007f7edd7a5780 in qSlicerCoreApplicationPrivate::init (this=0x56465d030b00) at /path/to/Slicer/Base/QTCore/qSlicerCoreApplication.cxx:265
  #10 0x00007f7ede3ac0dc in qSlicerApplicationPrivate::init (this=0x56465d030b00) at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:203
  #11 0x00007f7ede3ad2db in qSlicerApplication::qSlicerApplication (this=0x7ffee9ad17b0, _argc=@0x7ffee9ad175c: 1, _argv=0x7ffee9ad1928)
      at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:357
  #12 0x000056465aebefa6 in (anonymous namespace)::SlicerAppMain (argc=1, argv=0x7ffee9ad1928) at /path/to/Slicer/Applications/SlicerApp/Main.cxx:40
  #13 0x000056465aebf2de in main (argc=1, argv=0x7ffee9ad1928) at /path/to/Slicer/Base/QTApp/qSlicerApplicationMainWrapper.cxx:56

[3] macOS error message reported on test failure:

  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_init_ssl
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_init_crypto
  qt.network.ssl: QSslSocket: cannot resolve ASN1_STRING_get0_data
  qt.network.ssl: QSslSocket: cannot resolve EVP_CIPHER_CTX_reset
  qt.network.ssl: QSslSocket: cannot resolve EVP_PKEY_up_ref
  qt.network.ssl: QSslSocket: cannot resolve RSA_bits
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_new_null
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_push
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_free
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_num
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_pop_free
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_value
  qt.network.ssl: QSslSocket: cannot resolve DH_get0_pqg
  qt.network.ssl: QSslSocket: cannot resolve SSL_CTX_set_options
  qt.network.ssl: QSslSocket: cannot resolve SSL_CTX_set_ciphersuites
  qt.network.ssl: QSslSocket: cannot resolve SSL_set_psk_use_session_callback
  qt.network.ssl: QSslSocket: cannot resolve SSL_SESSION_is_resumable
  qt.network.ssl: QSslSocket: cannot resolve SSL_get_client_random
  qt.network.ssl: QSslSocket: cannot resolve SSL_SESSION_get_master_key
  qt.network.ssl: QSslSocket: cannot resolve SSL_session_reused
  qt.network.ssl: QSslSocket: cannot resolve SSL_set_options
  qt.network.ssl: QSslSocket: cannot resolve TLS_method
  qt.network.ssl: QSslSocket: cannot resolve TLS_client_method
  qt.network.ssl: QSslSocket: cannot resolve TLS_server_method
  qt.network.ssl: QSslSocket: cannot resolve X509_up_ref
  qt.network.ssl: QSslSocket: cannot resolve X509_STORE_CTX_get0_chain
  qt.network.ssl: QSslSocket: cannot resolve X509_getm_notBefore
  qt.network.ssl: QSslSocket: cannot resolve X509_getm_notAfter
  qt.network.ssl: QSslSocket: cannot resolve X509_get_version
  qt.network.ssl: QSslSocket: cannot resolve X509_STORE_set_ex_data
  qt.network.ssl: QSslSocket: cannot resolve X509_STORE_get_ex_data
  qt.network.ssl: QSslSocket: cannot resolve OpenSSL_version_num
  qt.network.ssl: QSslSocket: cannot resolve OpenSSL_version
  qt.network.ssl: Incompatible version of OpenSSL
 [SSL] SSL support disabled - Failed to load SSL library !
 [SSL] Failed to load Slicer.crt
jcfr pushed a commit that referenced this issue Jun 23, 2020
This commit updates OpenSSL external project to default to OpenSSL
1.1.1g when Slicer is built against Qt >= 5.12.4.

It fixes the following reported issues:

* Ubuntu 18.04: fixes segmentation fault on startup when
  Slicer is built against Qt 5.12.9 or Qt 5.15.
  See [1] and [2]

* macOS 10.13.6: fixes the following tests:
  - py_nomainwindow_qSlicerEditorModuleGenericTest
  - py_nomainwindow_test_slicer_environment
  - py_StandaloneEditorWidgetTest
  - py_SurfaceToolbox
  - py_ThresholdThreadingTest
  - py_WebEngine
  - qSlicerSequencesModuleWidgetGenericTest
  - qSlicerSslTest
  Examples of error messages listed in [3]

[1] startup segmentation fault when built against Qt 5.12.9:

  #0  __strcmp_avx2 () at ../sysdeps/x86_64/multiarch/strcmp-avx2.S:101
  #1  0x00007fe8026e194c in getrn () from /path/to/Slicer-SuperBuild-Debug-5.12.9/OpenSSL/libcrypto.so.1.0.0
  #2  0x00007fe8026e1c7e in lh_insert () from /path/to/Slicer-SuperBuild-Debug-5.12.9/OpenSSL/libcrypto.so.1.0.0
  #3  0x00007fe80262cd94 in OBJ_NAME_add () from /path/to/Slicer-SuperBuild-Debug-5.12.9/OpenSSL/libcrypto.so.1.0.0
  #4  0x00007fe7fc104392 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #5  0x00007fe8186d947f in __pthread_once_slow (once_control=0x7fe7fc160928, init_routine=0x7fe7fc1042a0) at pthread_once.c:116
  #6  0x00007fe7f589c78d in CRYPTO_THREAD_run_once () from /lib/x86_64-linux-gnu/libcrypto.so.1.1
  #7  0x00007fe7fc10457b in OPENSSL_init_ssl () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #8  0x00007fe81d1513ef in QSslSocketPrivate::ensureLibraryLoaded () at ssl/qsslsocket_openssl11.cpp:92
  #9  0x00007fe823d6632c in qSlicerCoreApplicationPrivate::init (this=0x56387f5c2700) at /path/to/Slicer/Base/QTCore/qSlicerCoreApplication.cxx:265
  #10 0x00007fe823f36a26 in qSlicerApplicationPrivate::init (this=0x56387f5c2700) at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:203
  #11 0x00007fe823f37c25 in qSlicerApplication::qSlicerApplication (this=0x7ffc3c2f00c0, _argc=@0x7ffc3c2f006c: 1, _argv=0x7ffc3c2f0238)
      at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:357
  #12 0x000056387ef18fc6 in (anonymous namespace)::SlicerAppMain (argc=1, argv=0x7ffc3c2f0238) at /path/to/Slicer/Applications/SlicerApp/Main.cxx:40
  #13 0x000056387ef192fe in main (argc=1, argv=0x7ffc3c2f0238) at /path/to/Slicer/Base/QTApp/qSlicerApplicationMainWrapper.cxx:56

[2] startup segmentation fault when built against Qt 5.15:

  #0  __strcmp_avx2 () at ../sysdeps/x86_64/multiarch/strcmp-avx2.S:101
  #1  0x00007f7ed11fa94c in getrn () from /path/to/Slicer-SuperBuild-Debug/OpenSSL/libcrypto.so.1.0.0
  #2  0x00007f7ed11fac7e in lh_insert () from /path/to/Slicer-SuperBuild-Debug/OpenSSL/libcrypto.so.1.0.0
  #3  0x00007f7ed1145d94 in OBJ_NAME_add () from /path/to/Slicer-SuperBuild-Debug/OpenSSL/libcrypto.so.1.0.0
  #4  0x00007f7eb00cc392 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #5  0x00007f7ec4d4647f in __pthread_once_slow (once_control=0x7f7eb0128928, init_routine=0x7f7eb00cc2a0) at pthread_once.c:116
  #6  0x00007f7eab60d78d in CRYPTO_THREAD_run_once () from /lib/x86_64-linux-gnu/libcrypto.so.1.1
  #7  0x00007f7eb00cc57b in OPENSSL_init_ssl () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #8  0x00007f7ed0d499f7 in QSslSocketPrivate::ensureLibraryLoaded () at ssl/qsslsocket_openssl.cpp:1954
  #9  0x00007f7edd7a5780 in qSlicerCoreApplicationPrivate::init (this=0x56465d030b00) at /path/to/Slicer/Base/QTCore/qSlicerCoreApplication.cxx:265
  #10 0x00007f7ede3ac0dc in qSlicerApplicationPrivate::init (this=0x56465d030b00) at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:203
  #11 0x00007f7ede3ad2db in qSlicerApplication::qSlicerApplication (this=0x7ffee9ad17b0, _argc=@0x7ffee9ad175c: 1, _argv=0x7ffee9ad1928)
      at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:357
  #12 0x000056465aebefa6 in (anonymous namespace)::SlicerAppMain (argc=1, argv=0x7ffee9ad1928) at /path/to/Slicer/Applications/SlicerApp/Main.cxx:40
  #13 0x000056465aebf2de in main (argc=1, argv=0x7ffee9ad1928) at /path/to/Slicer/Base/QTApp/qSlicerApplicationMainWrapper.cxx:56

[3] macOS error message reported on test failure:

  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_init_ssl
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_init_crypto
  qt.network.ssl: QSslSocket: cannot resolve ASN1_STRING_get0_data
  qt.network.ssl: QSslSocket: cannot resolve EVP_CIPHER_CTX_reset
  qt.network.ssl: QSslSocket: cannot resolve EVP_PKEY_up_ref
  qt.network.ssl: QSslSocket: cannot resolve RSA_bits
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_new_null
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_push
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_free
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_num
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_pop_free
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_value
  qt.network.ssl: QSslSocket: cannot resolve DH_get0_pqg
  qt.network.ssl: QSslSocket: cannot resolve SSL_CTX_set_options
  qt.network.ssl: QSslSocket: cannot resolve SSL_CTX_set_ciphersuites
  qt.network.ssl: QSslSocket: cannot resolve SSL_set_psk_use_session_callback
  qt.network.ssl: QSslSocket: cannot resolve SSL_SESSION_is_resumable
  qt.network.ssl: QSslSocket: cannot resolve SSL_get_client_random
  qt.network.ssl: QSslSocket: cannot resolve SSL_SESSION_get_master_key
  qt.network.ssl: QSslSocket: cannot resolve SSL_session_reused
  qt.network.ssl: QSslSocket: cannot resolve SSL_set_options
  qt.network.ssl: QSslSocket: cannot resolve TLS_method
  qt.network.ssl: QSslSocket: cannot resolve TLS_client_method
  qt.network.ssl: QSslSocket: cannot resolve TLS_server_method
  qt.network.ssl: QSslSocket: cannot resolve X509_up_ref
  qt.network.ssl: QSslSocket: cannot resolve X509_STORE_CTX_get0_chain
  qt.network.ssl: QSslSocket: cannot resolve X509_getm_notBefore
  qt.network.ssl: QSslSocket: cannot resolve X509_getm_notAfter
  qt.network.ssl: QSslSocket: cannot resolve X509_get_version
  qt.network.ssl: QSslSocket: cannot resolve X509_STORE_set_ex_data
  qt.network.ssl: QSslSocket: cannot resolve X509_STORE_get_ex_data
  qt.network.ssl: QSslSocket: cannot resolve OpenSSL_version_num
  qt.network.ssl: QSslSocket: cannot resolve OpenSSL_version
  qt.network.ssl: Incompatible version of OpenSSL
 [SSL] SSL support disabled - Failed to load SSL library !
 [SSL] Failed to load Slicer.crt
jcfr pushed a commit that referenced this issue Jun 23, 2020
This commit updates OpenSSL external project to default to OpenSSL
1.1.1g when Slicer is built against Qt >= 5.12.4.

It enables parallel build when building against OpenSSL >= 1.1.0

It uses OpenSSL 1.1.1g source archives including a fix for building
on macOS against zlib.
See pull request 12238 at https://github.com/openssl/openssl/pull/

It fixes the following issues reported when building against
older OpenSSL version:

* Ubuntu 18.04: fixes segmentation fault on startup when
  Slicer is built against Qt 5.12.9 or Qt 5.15.
  See [1] and [2]

* macOS 10.13.6: fixes the following tests:
  - py_nomainwindow_qSlicerEditorModuleGenericTest
  - py_nomainwindow_test_slicer_environment
  - py_StandaloneEditorWidgetTest
  - py_SurfaceToolbox
  - py_ThresholdThreadingTest
  - py_WebEngine
  - qSlicerSequencesModuleWidgetGenericTest
  - qSlicerSslTest
  Examples of error messages listed in [3]

[1] startup segmentation fault when built against Qt 5.12.9:

  #0  __strcmp_avx2 () at ../sysdeps/x86_64/multiarch/strcmp-avx2.S:101
  #1  0x00007fe8026e194c in getrn () from /path/to/Slicer-SuperBuild-Debug-5.12.9/OpenSSL/libcrypto.so.1.0.0
  #2  0x00007fe8026e1c7e in lh_insert () from /path/to/Slicer-SuperBuild-Debug-5.12.9/OpenSSL/libcrypto.so.1.0.0
  #3  0x00007fe80262cd94 in OBJ_NAME_add () from /path/to/Slicer-SuperBuild-Debug-5.12.9/OpenSSL/libcrypto.so.1.0.0
  #4  0x00007fe7fc104392 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #5  0x00007fe8186d947f in __pthread_once_slow (once_control=0x7fe7fc160928, init_routine=0x7fe7fc1042a0) at pthread_once.c:116
  #6  0x00007fe7f589c78d in CRYPTO_THREAD_run_once () from /lib/x86_64-linux-gnu/libcrypto.so.1.1
  #7  0x00007fe7fc10457b in OPENSSL_init_ssl () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #8  0x00007fe81d1513ef in QSslSocketPrivate::ensureLibraryLoaded () at ssl/qsslsocket_openssl11.cpp:92
  #9  0x00007fe823d6632c in qSlicerCoreApplicationPrivate::init (this=0x56387f5c2700) at /path/to/Slicer/Base/QTCore/qSlicerCoreApplication.cxx:265
  #10 0x00007fe823f36a26 in qSlicerApplicationPrivate::init (this=0x56387f5c2700) at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:203
  #11 0x00007fe823f37c25 in qSlicerApplication::qSlicerApplication (this=0x7ffc3c2f00c0, _argc=@0x7ffc3c2f006c: 1, _argv=0x7ffc3c2f0238)
      at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:357
  #12 0x000056387ef18fc6 in (anonymous namespace)::SlicerAppMain (argc=1, argv=0x7ffc3c2f0238) at /path/to/Slicer/Applications/SlicerApp/Main.cxx:40
  #13 0x000056387ef192fe in main (argc=1, argv=0x7ffc3c2f0238) at /path/to/Slicer/Base/QTApp/qSlicerApplicationMainWrapper.cxx:56

[2] startup segmentation fault when built against Qt 5.15:

  #0  __strcmp_avx2 () at ../sysdeps/x86_64/multiarch/strcmp-avx2.S:101
  #1  0x00007f7ed11fa94c in getrn () from /path/to/Slicer-SuperBuild-Debug/OpenSSL/libcrypto.so.1.0.0
  #2  0x00007f7ed11fac7e in lh_insert () from /path/to/Slicer-SuperBuild-Debug/OpenSSL/libcrypto.so.1.0.0
  #3  0x00007f7ed1145d94 in OBJ_NAME_add () from /path/to/Slicer-SuperBuild-Debug/OpenSSL/libcrypto.so.1.0.0
  #4  0x00007f7eb00cc392 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #5  0x00007f7ec4d4647f in __pthread_once_slow (once_control=0x7f7eb0128928, init_routine=0x7f7eb00cc2a0) at pthread_once.c:116
  #6  0x00007f7eab60d78d in CRYPTO_THREAD_run_once () from /lib/x86_64-linux-gnu/libcrypto.so.1.1
  #7  0x00007f7eb00cc57b in OPENSSL_init_ssl () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #8  0x00007f7ed0d499f7 in QSslSocketPrivate::ensureLibraryLoaded () at ssl/qsslsocket_openssl.cpp:1954
  #9  0x00007f7edd7a5780 in qSlicerCoreApplicationPrivate::init (this=0x56465d030b00) at /path/to/Slicer/Base/QTCore/qSlicerCoreApplication.cxx:265
  #10 0x00007f7ede3ac0dc in qSlicerApplicationPrivate::init (this=0x56465d030b00) at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:203
  #11 0x00007f7ede3ad2db in qSlicerApplication::qSlicerApplication (this=0x7ffee9ad17b0, _argc=@0x7ffee9ad175c: 1, _argv=0x7ffee9ad1928)
      at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:357
  #12 0x000056465aebefa6 in (anonymous namespace)::SlicerAppMain (argc=1, argv=0x7ffee9ad1928) at /path/to/Slicer/Applications/SlicerApp/Main.cxx:40
  #13 0x000056465aebf2de in main (argc=1, argv=0x7ffee9ad1928) at /path/to/Slicer/Base/QTApp/qSlicerApplicationMainWrapper.cxx:56

[3] macOS error message reported on test failure:

  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_init_ssl
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_init_crypto
  qt.network.ssl: QSslSocket: cannot resolve ASN1_STRING_get0_data
  qt.network.ssl: QSslSocket: cannot resolve EVP_CIPHER_CTX_reset
  qt.network.ssl: QSslSocket: cannot resolve EVP_PKEY_up_ref
  qt.network.ssl: QSslSocket: cannot resolve RSA_bits
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_new_null
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_push
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_free
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_num
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_pop_free
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_value
  qt.network.ssl: QSslSocket: cannot resolve DH_get0_pqg
  qt.network.ssl: QSslSocket: cannot resolve SSL_CTX_set_options
  qt.network.ssl: QSslSocket: cannot resolve SSL_CTX_set_ciphersuites
  qt.network.ssl: QSslSocket: cannot resolve SSL_set_psk_use_session_callback
  qt.network.ssl: QSslSocket: cannot resolve SSL_SESSION_is_resumable
  qt.network.ssl: QSslSocket: cannot resolve SSL_get_client_random
  qt.network.ssl: QSslSocket: cannot resolve SSL_SESSION_get_master_key
  qt.network.ssl: QSslSocket: cannot resolve SSL_session_reused
  qt.network.ssl: QSslSocket: cannot resolve SSL_set_options
  qt.network.ssl: QSslSocket: cannot resolve TLS_method
  qt.network.ssl: QSslSocket: cannot resolve TLS_client_method
  qt.network.ssl: QSslSocket: cannot resolve TLS_server_method
  qt.network.ssl: QSslSocket: cannot resolve X509_up_ref
  qt.network.ssl: QSslSocket: cannot resolve X509_STORE_CTX_get0_chain
  qt.network.ssl: QSslSocket: cannot resolve X509_getm_notBefore
  qt.network.ssl: QSslSocket: cannot resolve X509_getm_notAfter
  qt.network.ssl: QSslSocket: cannot resolve X509_get_version
  qt.network.ssl: QSslSocket: cannot resolve X509_STORE_set_ex_data
  qt.network.ssl: QSslSocket: cannot resolve X509_STORE_get_ex_data
  qt.network.ssl: QSslSocket: cannot resolve OpenSSL_version_num
  qt.network.ssl: QSslSocket: cannot resolve OpenSSL_version
  qt.network.ssl: Incompatible version of OpenSSL
 [SSL] SSL support disabled - Failed to load SSL library !
 [SSL] Failed to load Slicer.crt
jcfr added a commit that referenced this issue Jun 23, 2020
This commit updates OpenSSL external project to default to OpenSSL
1.1.1g when Slicer is built against Qt >= 5.12.4.

It enables parallel build when building against OpenSSL >= 1.1.0

It uses OpenSSL 1.1.1g source archives including a fix for building
on macOS against zlib.
See pull request 12238 at https://github.com/openssl/openssl/pull/

It fixes the following issues reported when building against
older OpenSSL version:

* Ubuntu 18.04: fixes segmentation fault on startup when
  Slicer is built against Qt 5.12.9 or Qt 5.15.
  See [1] and [2]

* macOS 10.13.6: fixes the following tests:
  - py_nomainwindow_qSlicerEditorModuleGenericTest
  - py_nomainwindow_test_slicer_environment
  - py_StandaloneEditorWidgetTest
  - py_SurfaceToolbox
  - py_ThresholdThreadingTest
  - py_WebEngine
  - qSlicerSequencesModuleWidgetGenericTest
  - qSlicerSslTest
  Examples of error messages listed in [3]

[1] startup segmentation fault when built against Qt 5.12.9:

  #0  __strcmp_avx2 () at ../sysdeps/x86_64/multiarch/strcmp-avx2.S:101
  #1  0x00007fe8026e194c in getrn () from /path/to/Slicer-SuperBuild-Debug-5.12.9/OpenSSL/libcrypto.so.1.0.0
  #2  0x00007fe8026e1c7e in lh_insert () from /path/to/Slicer-SuperBuild-Debug-5.12.9/OpenSSL/libcrypto.so.1.0.0
  #3  0x00007fe80262cd94 in OBJ_NAME_add () from /path/to/Slicer-SuperBuild-Debug-5.12.9/OpenSSL/libcrypto.so.1.0.0
  #4  0x00007fe7fc104392 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #5  0x00007fe8186d947f in __pthread_once_slow (once_control=0x7fe7fc160928, init_routine=0x7fe7fc1042a0) at pthread_once.c:116
  #6  0x00007fe7f589c78d in CRYPTO_THREAD_run_once () from /lib/x86_64-linux-gnu/libcrypto.so.1.1
  #7  0x00007fe7fc10457b in OPENSSL_init_ssl () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #8  0x00007fe81d1513ef in QSslSocketPrivate::ensureLibraryLoaded () at ssl/qsslsocket_openssl11.cpp:92
  #9  0x00007fe823d6632c in qSlicerCoreApplicationPrivate::init (this=0x56387f5c2700) at /path/to/Slicer/Base/QTCore/qSlicerCoreApplication.cxx:265
  #10 0x00007fe823f36a26 in qSlicerApplicationPrivate::init (this=0x56387f5c2700) at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:203
  #11 0x00007fe823f37c25 in qSlicerApplication::qSlicerApplication (this=0x7ffc3c2f00c0, _argc=@0x7ffc3c2f006c: 1, _argv=0x7ffc3c2f0238)
      at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:357
  #12 0x000056387ef18fc6 in (anonymous namespace)::SlicerAppMain (argc=1, argv=0x7ffc3c2f0238) at /path/to/Slicer/Applications/SlicerApp/Main.cxx:40
  #13 0x000056387ef192fe in main (argc=1, argv=0x7ffc3c2f0238) at /path/to/Slicer/Base/QTApp/qSlicerApplicationMainWrapper.cxx:56

[2] startup segmentation fault when built against Qt 5.15:

  #0  __strcmp_avx2 () at ../sysdeps/x86_64/multiarch/strcmp-avx2.S:101
  #1  0x00007f7ed11fa94c in getrn () from /path/to/Slicer-SuperBuild-Debug/OpenSSL/libcrypto.so.1.0.0
  #2  0x00007f7ed11fac7e in lh_insert () from /path/to/Slicer-SuperBuild-Debug/OpenSSL/libcrypto.so.1.0.0
  #3  0x00007f7ed1145d94 in OBJ_NAME_add () from /path/to/Slicer-SuperBuild-Debug/OpenSSL/libcrypto.so.1.0.0
  #4  0x00007f7eb00cc392 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #5  0x00007f7ec4d4647f in __pthread_once_slow (once_control=0x7f7eb0128928, init_routine=0x7f7eb00cc2a0) at pthread_once.c:116
  #6  0x00007f7eab60d78d in CRYPTO_THREAD_run_once () from /lib/x86_64-linux-gnu/libcrypto.so.1.1
  #7  0x00007f7eb00cc57b in OPENSSL_init_ssl () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #8  0x00007f7ed0d499f7 in QSslSocketPrivate::ensureLibraryLoaded () at ssl/qsslsocket_openssl.cpp:1954
  #9  0x00007f7edd7a5780 in qSlicerCoreApplicationPrivate::init (this=0x56465d030b00) at /path/to/Slicer/Base/QTCore/qSlicerCoreApplication.cxx:265
  #10 0x00007f7ede3ac0dc in qSlicerApplicationPrivate::init (this=0x56465d030b00) at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:203
  #11 0x00007f7ede3ad2db in qSlicerApplication::qSlicerApplication (this=0x7ffee9ad17b0, _argc=@0x7ffee9ad175c: 1, _argv=0x7ffee9ad1928)
      at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:357
  #12 0x000056465aebefa6 in (anonymous namespace)::SlicerAppMain (argc=1, argv=0x7ffee9ad1928) at /path/to/Slicer/Applications/SlicerApp/Main.cxx:40
  #13 0x000056465aebf2de in main (argc=1, argv=0x7ffee9ad1928) at /path/to/Slicer/Base/QTApp/qSlicerApplicationMainWrapper.cxx:56

[3] macOS error message reported on test failure:

  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_init_ssl
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_init_crypto
  qt.network.ssl: QSslSocket: cannot resolve ASN1_STRING_get0_data
  qt.network.ssl: QSslSocket: cannot resolve EVP_CIPHER_CTX_reset
  qt.network.ssl: QSslSocket: cannot resolve EVP_PKEY_up_ref
  qt.network.ssl: QSslSocket: cannot resolve RSA_bits
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_new_null
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_push
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_free
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_num
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_pop_free
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_value
  qt.network.ssl: QSslSocket: cannot resolve DH_get0_pqg
  qt.network.ssl: QSslSocket: cannot resolve SSL_CTX_set_options
  qt.network.ssl: QSslSocket: cannot resolve SSL_CTX_set_ciphersuites
  qt.network.ssl: QSslSocket: cannot resolve SSL_set_psk_use_session_callback
  qt.network.ssl: QSslSocket: cannot resolve SSL_SESSION_is_resumable
  qt.network.ssl: QSslSocket: cannot resolve SSL_get_client_random
  qt.network.ssl: QSslSocket: cannot resolve SSL_SESSION_get_master_key
  qt.network.ssl: QSslSocket: cannot resolve SSL_session_reused
  qt.network.ssl: QSslSocket: cannot resolve SSL_set_options
  qt.network.ssl: QSslSocket: cannot resolve TLS_method
  qt.network.ssl: QSslSocket: cannot resolve TLS_client_method
  qt.network.ssl: QSslSocket: cannot resolve TLS_server_method
  qt.network.ssl: QSslSocket: cannot resolve X509_up_ref
  qt.network.ssl: QSslSocket: cannot resolve X509_STORE_CTX_get0_chain
  qt.network.ssl: QSslSocket: cannot resolve X509_getm_notBefore
  qt.network.ssl: QSslSocket: cannot resolve X509_getm_notAfter
  qt.network.ssl: QSslSocket: cannot resolve X509_get_version
  qt.network.ssl: QSslSocket: cannot resolve X509_STORE_set_ex_data
  qt.network.ssl: QSslSocket: cannot resolve X509_STORE_get_ex_data
  qt.network.ssl: QSslSocket: cannot resolve OpenSSL_version_num
  qt.network.ssl: QSslSocket: cannot resolve OpenSSL_version
  qt.network.ssl: Incompatible version of OpenSSL
 [SSL] SSL support disabled - Failed to load SSL library !
 [SSL] Failed to load Slicer.crt

Co-authored-by: Jean-Christophe Fillion-Robin <jchris.fillionr@kitware.com>
jcfr added a commit that referenced this issue Jun 23, 2020
This commit updates OpenSSL external project to default to OpenSSL
1.1.1g when Slicer is built against Qt >= 5.12.4.

It enables parallel build when building against OpenSSL >= 1.1.0

It uses OpenSSL 1.1.1g source archives including a fix for building
on macOS against zlib.
See pull request 12238 at https://github.com/openssl/openssl/pull/

It fixes the following issues reported when building against
older OpenSSL version:

* Ubuntu 18.04: fixes segmentation fault on startup when
  Slicer is built against Qt 5.12.9 or Qt 5.15.
  See [1] and [2]

* macOS 10.13.6: fixes OpenSSL errors associated with the following tests:
  - py_nomainwindow_qSlicerEditorModuleGenericTest (still failing but not related to OpenSSL)
  - py_nomainwindow_test_slicer_environment (still failing but not related to OpenSSL)
  - py_StandaloneEditorWidgetTest (still failing but not related to OpenSSL)
  - py_SurfaceToolbox (still failing but not related to OpenSSL)
  - py_ThresholdThreadingTest (still failing but not related to OpenSSL)
  - py_WebEngine
  - qSlicerSequencesModuleWidgetGenericTest
  - qSlicerSslTest
  Examples of error messages listed in [3]


[1] startup segmentation fault when built against Qt 5.12.9:

  #0  __strcmp_avx2 () at ../sysdeps/x86_64/multiarch/strcmp-avx2.S:101
  #1  0x00007fe8026e194c in getrn () from /path/to/Slicer-SuperBuild-Debug-5.12.9/OpenSSL/libcrypto.so.1.0.0
  #2  0x00007fe8026e1c7e in lh_insert () from /path/to/Slicer-SuperBuild-Debug-5.12.9/OpenSSL/libcrypto.so.1.0.0
  #3  0x00007fe80262cd94 in OBJ_NAME_add () from /path/to/Slicer-SuperBuild-Debug-5.12.9/OpenSSL/libcrypto.so.1.0.0
  #4  0x00007fe7fc104392 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #5  0x00007fe8186d947f in __pthread_once_slow (once_control=0x7fe7fc160928, init_routine=0x7fe7fc1042a0) at pthread_once.c:116
  #6  0x00007fe7f589c78d in CRYPTO_THREAD_run_once () from /lib/x86_64-linux-gnu/libcrypto.so.1.1
  #7  0x00007fe7fc10457b in OPENSSL_init_ssl () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #8  0x00007fe81d1513ef in QSslSocketPrivate::ensureLibraryLoaded () at ssl/qsslsocket_openssl11.cpp:92
  #9  0x00007fe823d6632c in qSlicerCoreApplicationPrivate::init (this=0x56387f5c2700) at /path/to/Slicer/Base/QTCore/qSlicerCoreApplication.cxx:265
  #10 0x00007fe823f36a26 in qSlicerApplicationPrivate::init (this=0x56387f5c2700) at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:203
  #11 0x00007fe823f37c25 in qSlicerApplication::qSlicerApplication (this=0x7ffc3c2f00c0, _argc=@0x7ffc3c2f006c: 1, _argv=0x7ffc3c2f0238)
      at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:357
  #12 0x000056387ef18fc6 in (anonymous namespace)::SlicerAppMain (argc=1, argv=0x7ffc3c2f0238) at /path/to/Slicer/Applications/SlicerApp/Main.cxx:40
  #13 0x000056387ef192fe in main (argc=1, argv=0x7ffc3c2f0238) at /path/to/Slicer/Base/QTApp/qSlicerApplicationMainWrapper.cxx:56

[2] startup segmentation fault when built against Qt 5.15:

  #0  __strcmp_avx2 () at ../sysdeps/x86_64/multiarch/strcmp-avx2.S:101
  #1  0x00007f7ed11fa94c in getrn () from /path/to/Slicer-SuperBuild-Debug/OpenSSL/libcrypto.so.1.0.0
  #2  0x00007f7ed11fac7e in lh_insert () from /path/to/Slicer-SuperBuild-Debug/OpenSSL/libcrypto.so.1.0.0
  #3  0x00007f7ed1145d94 in OBJ_NAME_add () from /path/to/Slicer-SuperBuild-Debug/OpenSSL/libcrypto.so.1.0.0
  #4  0x00007f7eb00cc392 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #5  0x00007f7ec4d4647f in __pthread_once_slow (once_control=0x7f7eb0128928, init_routine=0x7f7eb00cc2a0) at pthread_once.c:116
  #6  0x00007f7eab60d78d in CRYPTO_THREAD_run_once () from /lib/x86_64-linux-gnu/libcrypto.so.1.1
  #7  0x00007f7eb00cc57b in OPENSSL_init_ssl () from /lib/x86_64-linux-gnu/libssl.so.1.1
  #8  0x00007f7ed0d499f7 in QSslSocketPrivate::ensureLibraryLoaded () at ssl/qsslsocket_openssl.cpp:1954
  #9  0x00007f7edd7a5780 in qSlicerCoreApplicationPrivate::init (this=0x56465d030b00) at /path/to/Slicer/Base/QTCore/qSlicerCoreApplication.cxx:265
  #10 0x00007f7ede3ac0dc in qSlicerApplicationPrivate::init (this=0x56465d030b00) at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:203
  #11 0x00007f7ede3ad2db in qSlicerApplication::qSlicerApplication (this=0x7ffee9ad17b0, _argc=@0x7ffee9ad175c: 1, _argv=0x7ffee9ad1928)
      at /path/to/Slicer/Base/QTGUI/qSlicerApplication.cxx:357
  #12 0x000056465aebefa6 in (anonymous namespace)::SlicerAppMain (argc=1, argv=0x7ffee9ad1928) at /path/to/Slicer/Applications/SlicerApp/Main.cxx:40
  #13 0x000056465aebf2de in main (argc=1, argv=0x7ffee9ad1928) at /path/to/Slicer/Base/QTApp/qSlicerApplicationMainWrapper.cxx:56

[3] macOS error message reported on test failure:

  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_init_ssl
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_init_crypto
  qt.network.ssl: QSslSocket: cannot resolve ASN1_STRING_get0_data
  qt.network.ssl: QSslSocket: cannot resolve EVP_CIPHER_CTX_reset
  qt.network.ssl: QSslSocket: cannot resolve EVP_PKEY_up_ref
  qt.network.ssl: QSslSocket: cannot resolve RSA_bits
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_new_null
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_push
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_free
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_num
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_pop_free
  qt.network.ssl: QSslSocket: cannot resolve OPENSSL_sk_value
  qt.network.ssl: QSslSocket: cannot resolve DH_get0_pqg
  qt.network.ssl: QSslSocket: cannot resolve SSL_CTX_set_options
  qt.network.ssl: QSslSocket: cannot resolve SSL_CTX_set_ciphersuites
  qt.network.ssl: QSslSocket: cannot resolve SSL_set_psk_use_session_callback
  qt.network.ssl: QSslSocket: cannot resolve SSL_SESSION_is_resumable
  qt.network.ssl: QSslSocket: cannot resolve SSL_get_client_random
  qt.network.ssl: QSslSocket: cannot resolve SSL_SESSION_get_master_key
  qt.network.ssl: QSslSocket: cannot resolve SSL_session_reused
  qt.network.ssl: QSslSocket: cannot resolve SSL_set_options
  qt.network.ssl: QSslSocket: cannot resolve TLS_method
  qt.network.ssl: QSslSocket: cannot resolve TLS_client_method
  qt.network.ssl: QSslSocket: cannot resolve TLS_server_method
  qt.network.ssl: QSslSocket: cannot resolve X509_up_ref
  qt.network.ssl: QSslSocket: cannot resolve X509_STORE_CTX_get0_chain
  qt.network.ssl: QSslSocket: cannot resolve X509_getm_notBefore
  qt.network.ssl: QSslSocket: cannot resolve X509_getm_notAfter
  qt.network.ssl: QSslSocket: cannot resolve X509_get_version
  qt.network.ssl: QSslSocket: cannot resolve X509_STORE_set_ex_data
  qt.network.ssl: QSslSocket: cannot resolve X509_STORE_get_ex_data
  qt.network.ssl: QSslSocket: cannot resolve OpenSSL_version_num
  qt.network.ssl: QSslSocket: cannot resolve OpenSSL_version
  qt.network.ssl: Incompatible version of OpenSSL
 [SSL] SSL support disabled - Failed to load SSL library !
 [SSL] Failed to load Slicer.crt

Co-authored-by: Jean-Christophe Fillion-Robin <jchris.fillionr@kitware.com>
riep pushed a commit to riep/Slicer that referenced this issue Apr 4, 2022
…Slicer#7)

BUG: Fix closing the scene and reloading while in free segmentation widget

Approved-by: Pierre Bour
jcfr added a commit to jcfr/Slicer that referenced this issue Jul 21, 2023
This commit fixes a regression introduced in 530b8fc (ENH: Update Slicer
Controller adding Thick Slab Reconstruction (Slicer#7021)) and fixes these
tests:
- qMRMLSliceWidgetTest1_vol_and_cube.mrml
- qMRMLVolumeThresholdWidgetTest2_vol_and_cube.mrml

The problem was that in the context of these tests the call to
vtkMRMLSliceLayerLogic::SetSliceNode happens after "UpdateSliceCompositeNode"

For reference the sequence of calls lead to the segfault for test
"qMRMLSliceWidgetTest1_vol_and_cube" was the following:

Slicer#20 main(int, char**) (ac=<optimized out>, av=<optimized out>)
Slicer#19 qMRMLSliceWidgetTest1(int, char**)
Slicer#18 qMRMLSliceWidget::setMRMLSliceNode(vtkMRMLSliceNode*)
Slicer#17 qMRMLSliceControllerWidget::setMRMLSliceNode(vtkMRMLSliceNode*) (this=
Slicer#16 vtkMRMLSliceLogic::SetSliceNode(vtkMRMLSliceNode*)
Slicer#15 vtkMRMLSliceLogic::UpdateSliceCompositeNode() (this=0x56366358b080)
Slicer#14 vtkMRMLSliceLogic::UpdatePipeline() (this=0x56366358b080)
Slicer#13 vtkMRMLSliceLogic::SetSliceExtentsToSliceNode() (this=0x56366358b080)
Slicer#12 vtkMRMLSliceNode::UpdateMatrices() (this=0x563662f41e00)
Slicer#11 vtkMRMLNode::EndModify(int) (previousDisableModifiedEventState=0, this=0x563662f41e00)
Slicer#10 vtkMRMLNode::InvokePendingModifiedEvent() (this=0x563662f41e00)
Slicer#9  vtkSubjectHelper::InvokeEvent(unsigned long, void*, vtkObject*)
Slicer#8  vtkCallbackCommand::Execute(vtkObject*, unsigned long, void*)
Slicer#7  vtkEventBroker::ProcessEvent(vtkObservation*, vtkObject*, unsigned long, void*) (this=0x563662ddf450, observation=0x5636638d4170, caller=<optimized out>, eid=33, callData=0x0)
Slicer#6  vtkEventBroker::InvokeObservation(vtkObservation*, unsigned long, void*)
Slicer#5  vtkCallbackCommand::Execute(vtkObject*, unsigned long, void*)
Slicer#4  vtkMRMLAbstractLogic::MRMLNodesCallback(vtkObject*, unsigned long, void*, void*)
Slicer#3  vtkMRMLAbstractLogic::MRMLNodesCallback(vtkObject*, unsigned long, void*, void*) (callData=0x0, clientData=0x56366358b080, eid=33, caller=0x563662f41e00)
Slicer#2  vtkMRMLSliceLogic::OnMRMLNodeModified(vtkMRMLNode*)
#1  vtkMRMLSliceLogic::UpdateReconstructionSlab(vtkMRMLSliceLogic*, vtkMRMLSliceLayerLogic*)
jcfr added a commit that referenced this issue Jul 21, 2023
This commit fixes a regression introduced in 530b8fc (ENH: Update Slicer
Controller adding Thick Slab Reconstruction (#7021)) and fixes these
tests:
- qMRMLSliceWidgetTest1_vol_and_cube.mrml
- qMRMLVolumeThresholdWidgetTest2_vol_and_cube.mrml

The problem was that in the context of these tests the call to
vtkMRMLSliceLayerLogic::SetSliceNode happens after "UpdateSliceCompositeNode"

For reference the sequence of calls lead to the segfault for test
"qMRMLSliceWidgetTest1_vol_and_cube" was the following:

#20 main(int, char**) (ac=<optimized out>, av=<optimized out>)
#19 qMRMLSliceWidgetTest1(int, char**)
#18 qMRMLSliceWidget::setMRMLSliceNode(vtkMRMLSliceNode*)
#17 qMRMLSliceControllerWidget::setMRMLSliceNode(vtkMRMLSliceNode*) (this=
#16 vtkMRMLSliceLogic::SetSliceNode(vtkMRMLSliceNode*)
#15 vtkMRMLSliceLogic::UpdateSliceCompositeNode() (this=0x56366358b080)
#14 vtkMRMLSliceLogic::UpdatePipeline() (this=0x56366358b080)
#13 vtkMRMLSliceLogic::SetSliceExtentsToSliceNode() (this=0x56366358b080)
#12 vtkMRMLSliceNode::UpdateMatrices() (this=0x563662f41e00)
#11 vtkMRMLNode::EndModify(int) (previousDisableModifiedEventState=0, this=0x563662f41e00)
#10 vtkMRMLNode::InvokePendingModifiedEvent() (this=0x563662f41e00)
#9  vtkSubjectHelper::InvokeEvent(unsigned long, void*, vtkObject*)
#8  vtkCallbackCommand::Execute(vtkObject*, unsigned long, void*)
#7  vtkEventBroker::ProcessEvent(vtkObservation*, vtkObject*, unsigned long, void*) (this=0x563662ddf450, observation=0x5636638d4170, caller=<optimized out>, eid=33, callData=0x0)
#6  vtkEventBroker::InvokeObservation(vtkObservation*, unsigned long, void*)
#5  vtkCallbackCommand::Execute(vtkObject*, unsigned long, void*)
#4  vtkMRMLAbstractLogic::MRMLNodesCallback(vtkObject*, unsigned long, void*, void*)
#3  vtkMRMLAbstractLogic::MRMLNodesCallback(vtkObject*, unsigned long, void*, void*) (callData=0x0, clientData=0x56366358b080, eid=33, caller=0x563662f41e00)
#2  vtkMRMLSliceLogic::OnMRMLNodeModified(vtkMRMLNode*)
#1  vtkMRMLSliceLogic::UpdateReconstructionSlab(vtkMRMLSliceLogic*, vtkMRMLSliceLayerLogic*)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

1 participant