View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0002998 | Slicer4 | Core: Building (CMake, Superbuild) | public | 2013-03-06 18:04 | 2017-06-07 23:27 |
Reporter | jcfr | Assigned To | jcfr | ||
Priority | normal | Severity | minor | Reproducibility | have not tried |
Status | closed | Resolution | fixed | ||
Product Version | Slicer 4.2.2-1 | ||||
Target Version | Slicer 4.3.0 | Fixed in Version | Slicer 4.3.0 | ||
Summary | 0002998: Integrate OpenSSL | ||||
Description | It should be possible to make sure of SSL capabilities from either python or Qt. | ||||
Tags | No tags attached. | ||||
Just pushed a "near complete" topic that should address the issue: https://github.com/jcfr/Slicer/tree/2998-ssl-support |
|
Fixed in r22220 Note: To enable OpenSSL support, configure setting Slicer_USE_PYTHONQT_WITH_OPENSSL option to ON. Next week, the option will be ON by default, time to |
|
Fix committed to 2145-support-for-installing-extension-from-file branch. |
|
Slicer: 2145-support-for-installing-extension-from-file 897bf9e6 2013-07-19 22:16:35 Details Diff |
ENH: Add SSL support Having the application interacting with services or downloading resources served over https protocol is now required. More particularly, it became necessary to access resources stored on Github (extension manager - issue 0002354) or to download python packages from pip server at run time. The CMake option "Slicer_USE_PYTHONQT_WITH_OPENSSL" allowing to enable or disable OpenSSL support has been introduced is set to OFF by default. Building OpenSSL ================ On Windows, since Perl is required, OpenSSL binaries have been generated and uploaded on kitware packages server. See [1] The project allowing to re-generate the Windows OpenSSL archive is currently hosted here [2]. On unix-like system, OpenSSL is built has part of the Superbuild. To ensure is can be built in parallel, a patch is also applied [3]. Finally, since python is built with OpenSSL support, the python launcher is now configured on all platform so that python can properly load the built OpenSSL shared library when it is used to build project like numpy. [1] http://packages.kitware.com/packages/application/view?applicationId=20 [2] https://gist.github.com/jcfr/6030240 [3] https://raw.github.com/Alexpux/Qt-builds/master/patches/openssl/openssl-1.0.1-parallel-build.patch OpenSSL support in Qt, python, curl =================================== Practically, it means that library like Qt, python, curl need to be built with OpenSSL support. This commit only address OpenSSL support for Python and Qt. Curl support is not yet enabled. For Qt OpenSSL support, Qt has to be built with the flags: -openssl -I /path/to/OpenSSL/include -L /path/to/OpenSSL/lib On unix-like system, available binaries are already OpenSSL ready, Qt has to be explicitly built only on windows. On windows, Qt will have to be built. Certificates ============ In case X.509v3 certificates are available on the system where Slicer is executed, a certificate bundle "Slicer.crt" is also provided. The set of scripts allowing to generate the bundle are provided by BLFS (Beyond Linux From Scratch). More details in Base/QTCore/Resources/Certs/README Application integration ======================= The Slicer core application will load the Slicer.crt bundle if needed. qSlicerExtensionsInstallWidget now derives from a re-usable widget named qSlicerWebWidget. qSlicerSslTest has been added to check that "https" connection can be established using Qt library. Fixes 0002998 Fixes 0002355 Fixes 0002354 git-svn-id: http://svn.slicer.org/Slicer4/trunk@22220 3bd1e089-480b-0410-8dfb-8563597acbee |
||
add - Base/QTCore/Resources/Certs/README | Diff File | ||
add - Base/QTCore/Resources/Certs/Slicer.crt | Diff File | ||
add - Base/QTCore/Resources/Certs/make-ca.sh | Diff File | ||
add - Base/QTCore/Resources/Certs/make-cert.pl | Diff File | ||
add - Base/QTCore/Resources/Certs/remove-expired-certs.sh | Diff File | ||
mod - Base/QTCore/Resources/qSlicerBaseQTCore.qrc | Diff File | ||
mod - Base/QTCore/Testing/Cxx/CMakeLists.txt | Diff File | ||
add - Base/QTCore/Testing/Cxx/qSlicerSslTest.cxx | Diff File | ||
mod - Base/QTCore/qSlicerCoreApplication.cxx | Diff File | ||
mod - Base/QTCore/qSlicerCoreApplication.h | Diff File | ||
mod - Base/QTGUI/CMakeLists.txt | Diff File | ||
mod - Base/QTGUI/qSlicerExtensionsInstallWidget.cxx | Diff File | ||
mod - Base/QTGUI/qSlicerExtensionsInstallWidget.h | Diff File | ||
add - Base/QTGUI/qSlicerWebWidget.cxx | Diff File | ||
add - Base/QTGUI/qSlicerWebWidget.h | Diff File | ||
mod - CMake/SlicerBlockCTKAppLauncherSettings.cmake | Diff File | ||
add - CMake/SlicerBlockInstallOpenSSL.cmake | Diff File | ||
mod - CMake/SlicerCPack.cmake | Diff File | ||
mod - CMake/SlicerCPackBundleFixup.cmake.in | Diff File | ||
mod - CMakeLists.txt | Diff File | ||
mod - SuperBuild.cmake | Diff File | ||
add - SuperBuild/External_OpenSSL.cmake | Diff File | ||
mod - SuperBuild/External_python.cmake | Diff File | ||
add - SuperBuild/OpenSSL-1.0.1-parallel-build.patch | Diff File | ||
add - SuperBuild/OpenSSL_patch_and_configure_step.cmake.in | Diff File | ||
mod - SuperBuild/python_customPythonLauncherSettings.ini.in | Diff File | ||
Slicer: 2145-support-for-installing-extension-from-file 0cb14166 2013-07-22 10:59:46 Details Diff |
COMP: Fix build error occurring when OpenSSL support is disabled While commit r22220 added SSL support ensuring the CMake option "Slicer_USE_PYTHONQT_WITH_OPENSSL" was disabled by default. Not all OpenSSL related code was properly excluded, this commit ensures Slicer can be compiled with OpenSSL support disabled. Discussion: http://slicer-devel.65872.n3.nabble.com/Windows-build-fails-due-to-missing-QSslSocket-class-tt4029446.html See issue 0002998 and 0002355 git-svn-id: http://svn.slicer.org/Slicer4/trunk@22226 3bd1e089-480b-0410-8dfb-8563597acbee |
||
mod - Base/QTCore/Testing/Cxx/CMakeLists.txt | Diff File | ||
mod - Base/QTCore/qSlicerCoreApplication.cxx | Diff File | ||
mod - Base/QTGUI/qSlicerWebWidget.cxx | Diff File | ||
mod - Base/QTGUI/qSlicerWebWidget.h | Diff File | ||
mod - CMake/vtkSlicerConfigure.h.in | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2013-03-06 18:04 | jcfr | New Issue | |
2013-03-06 18:04 | jcfr | Status | new => assigned |
2013-03-06 18:04 | jcfr | Assigned To | => jcfr |
2013-03-06 18:05 | jcfr | Target Version | => Slicer 4.3.0 |
2013-03-06 18:05 | jcfr | Relationship added | duplicate of 0002355 |
2013-07-15 13:58 | jcfr | Note Added: 0009055 | |
2013-07-15 13:59 | jcfr | Note Edited: 0009055 | |
2013-07-19 18:36 | jcfr | Note Added: 0009154 | |
2013-07-19 18:36 | jcfr | Status | assigned => resolved |
2013-07-19 18:36 | jcfr | Fixed in Version | => Slicer 4.3.0 |
2013-07-19 18:36 | jcfr | Resolution | open => fixed |
2013-07-19 18:45 | jcfr | Note Edited: 0009154 | |
2013-07-19 18:48 | jcfr | Relationship added | related to 0003236 |
2013-08-30 18:43 | jcfr | Relationship added | related to 0001718 |
2013-12-04 12:50 | jcfr | Status | resolved => closed |
2017-06-07 23:27 | jcfr | Changeset attached | => Slicer 2145-support-for-installing-extension-from-file 0cb14166 |
2017-06-07 23:27 | jcfr | Changeset attached | => Slicer 2145-support-for-installing-extension-from-file 897bf9e6 |
2017-06-07 23:27 | jcfr | Note Added: 0014631 |