Add openssl 1.1
cover Add openssl 1.1
This patch series introduces the recipe for openssl 1.1 (openssl 1.0 is preserved but renamed to openssl10), and does a few necessary adjustmenets and updates to other recipes.
Openssl 1.1 is an opt-out; it has the same recipe name as openssl 1.0 had, and so all dependencies are compiled with it by default. If there's an API issue, please fix it, or adjust the recipe to depend on 'openssl10' (which is a lesser solution, and subject to openssl 1.0 eventually being removed from oe-core).
This iteration of the patchset fixes an issue with installing certificates when building images; specifically a special version of c_rehash utility needs to be used on build host.
The following changes since commit 621ca8b66c8f927713d98bc4d3cccc7a0f151e4b:
ca-certificates: update to 20170717 (2017-08-08 18:24:06 +0300)
are available in the git repository at:
git://git.yoctoproject.org/poky-contrib akanavin/openssl-1.1
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=akanavin/openssl-1.1
Alexander Kanavin (4):
openssl: add a 1.1 version
openssh: depend on openssl 1.0
cryptodev-tests: depend on openssl 1.0
gstreamer-plugins-bad: replace openssl dependency with nettle for hls
plugin
meta/conf/distro/include/no-static-libs.inc | 3 +
meta/recipes-connectivity/openssh/openssh_7.5p1.bb | 3 +-
...ve-test-that-requires-running-as-non-root.patch | 49 +++++
...1-Take-linking-flags-from-LDFLAGS-env-var.patch | 43 ++++
.../recipes-connectivity/openssl/openssl/run-ptest | 4 +-
.../openssl/{openssl.inc => openssl10.inc} | 14 +-
...build-with-clang-using-external-assembler.patch | 0
.../{openssl => openssl10}/Makefiles-ptest.patch | 0
.../Use-SHA256-not-MD5-as-default-digest.patch | 0
.../configure-musl-target.patch | 0
.../{openssl => openssl10}/configure-targets.patch | 0
.../debian/c_rehash-compat.patch | 0
.../openssl/{openssl => openssl10}/debian/ca.patch | 0
.../debian/debian-targets.patch | 0
.../{openssl => openssl10}/debian/man-dir.patch | 0
.../debian/man-section.patch | 0
.../{openssl => openssl10}/debian/no-rpath.patch | 0
.../debian/no-symbolic.patch | 0
.../{openssl => openssl10}/debian/pic.patch | 0
.../debian/version-script.patch | 0
.../debian1.0.2/block_digicert_malaysia.patch | 0
.../debian1.0.2/block_diginotar.patch | 0
.../debian1.0.2/soname.patch | 0
.../debian1.0.2/version-script.patch | 0
.../engines-install-in-libdir-ssl.patch | 0
.../openssl/{openssl => openssl10}/find.pl | 0
.../{openssl => openssl10}/oe-ldflags.patch | 0
.../openssl-1.0.2a-x32-asm.patch | 0
.../openssl/openssl10/openssl-c_rehash.sh | 222 +++++++++++++++++++++
.../openssl-fix-des.pod-error.patch | 0
.../openssl-util-perlpath.pl-cwd.patch | 0
.../openssl_fix_for_x32.patch | 0
.../openssl/{openssl => openssl10}/parallel.patch | 0
.../{openssl => openssl10}/ptest-deps.patch | 0
.../ptest_makefile_deps.patch | 0
.../openssl/openssl10/run-ptest | 2 +
.../{openssl => openssl10}/shared-libs.patch | 0
.../{openssl_1.0.2l.bb => openssl10_1.0.2l.bb} | 4 +-
.../recipes-connectivity/openssl/openssl_1.1.0f.bb | 155 ++++++++++++++
.../cryptodev/cryptodev-tests_1.9.bb | 2 +-
.../gstreamer/gstreamer1.0-plugins-bad.inc | 4 +-
41 files changed, 495 insertions(+), 10 deletions(-)
create mode 100644 meta/recipes-connectivity/openssl/openssl/0001-Remove-test-that-requires-running-as-non-root.patch
create mode 100644 meta/recipes-connectivity/openssl/openssl/0001-Take-linking-flags-from-LDFLAGS-env-var.patch
mode change 100755 => 100644 meta/recipes-connectivity/openssl/openssl/run-ptest
rename meta/recipes-connectivity/openssl/{openssl.inc => openssl10.inc} (95%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/0001-Fix-build-with-clang-using-external-assembler.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/Makefiles-ptest.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/Use-SHA256-not-MD5-as-default-digest.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/configure-musl-target.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/configure-targets.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian/c_rehash-compat.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian/ca.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian/debian-targets.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian/man-dir.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian/man-section.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian/no-rpath.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian/no-symbolic.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian/pic.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian/version-script.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian1.0.2/block_digicert_malaysia.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian1.0.2/block_diginotar.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian1.0.2/soname.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian1.0.2/version-script.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/engines-install-in-libdir-ssl.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/find.pl (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/oe-ldflags.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/openssl-1.0.2a-x32-asm.patch (100%)
create mode 100644 meta/recipes-connectivity/openssl/openssl10/openssl-c_rehash.sh
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/openssl-fix-des.pod-error.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/openssl-util-perlpath.pl-cwd.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/openssl_fix_for_x32.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/parallel.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/ptest-deps.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/ptest_makefile_deps.patch (100%)
create mode 100755 meta/recipes-connectivity/openssl/openssl10/run-ptest
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/shared-libs.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl_1.0.2l.bb => openssl10_1.0.2l.bb} (96%)
create mode 100644 meta/recipes-connectivity/openssl/openssl_1.1.0f.bbSignature · 1 line
2.13.2
PATCH 1/4 openssl: add a 1.1 version
Existing openssl 1.0 recipe is renamed to openssl10; it will continue to be provided for as long as upstream supports it (and there are still several recipes which do not work with openssl 1.1 due to API differences).
A few files (such as openssl binary) are no longer installed by openssl 1.0, because they clash with openssl 1.1.
---
meta/conf/distro/include/no-static-libs.inc | 3 +
...ve-test-that-requires-running-as-non-root.patch | 49 +++++
...1-Take-linking-flags-from-LDFLAGS-env-var.patch | 43 ++++
.../recipes-connectivity/openssl/openssl/run-ptest | 4 +-
.../openssl/{openssl.inc => openssl10.inc} | 14 +-
...build-with-clang-using-external-assembler.patch | 0
.../{openssl => openssl10}/Makefiles-ptest.patch | 0
.../Use-SHA256-not-MD5-as-default-digest.patch | 0
.../configure-musl-target.patch | 0
.../{openssl => openssl10}/configure-targets.patch | 0
.../debian/c_rehash-compat.patch | 0
.../openssl/{openssl => openssl10}/debian/ca.patch | 0
.../debian/debian-targets.patch | 0
.../{openssl => openssl10}/debian/man-dir.patch | 0
.../debian/man-section.patch | 0
.../{openssl => openssl10}/debian/no-rpath.patch | 0
.../debian/no-symbolic.patch | 0
.../{openssl => openssl10}/debian/pic.patch | 0
.../debian/version-script.patch | 0
.../debian1.0.2/block_digicert_malaysia.patch | 0
.../debian1.0.2/block_diginotar.patch | 0
.../debian1.0.2/soname.patch | 0
.../debian1.0.2/version-script.patch | 0
.../engines-install-in-libdir-ssl.patch | 0
.../openssl/{openssl => openssl10}/find.pl | 0
.../{openssl => openssl10}/oe-ldflags.patch | 0
.../openssl-1.0.2a-x32-asm.patch | 0
.../openssl/openssl10/openssl-c_rehash.sh | 222 +++++++++++++++++++++
.../openssl-fix-des.pod-error.patch | 0
.../openssl-util-perlpath.pl-cwd.patch | 0
.../openssl_fix_for_x32.patch | 0
.../openssl/{openssl => openssl10}/parallel.patch | 0
.../{openssl => openssl10}/ptest-deps.patch | 0
.../ptest_makefile_deps.patch | 0
.../openssl/openssl10/run-ptest | 2 +
.../{openssl => openssl10}/shared-libs.patch | 0
.../{openssl_1.0.2l.bb => openssl10_1.0.2l.bb} | 4 +-
.../recipes-connectivity/openssl/openssl_1.1.0f.bb | 155 ++++++++++++++
38 files changed, 491 insertions(+), 5 deletions(-)
create mode 100644 meta/recipes-connectivity/openssl/openssl/0001-Remove-test-that-requires-running-as-non-root.patch
create mode 100644 meta/recipes-connectivity/openssl/openssl/0001-Take-linking-flags-from-LDFLAGS-env-var.patch
mode change 100755 => 100644 meta/recipes-connectivity/openssl/openssl/run-ptest
rename meta/recipes-connectivity/openssl/{openssl.inc => openssl10.inc} (95%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/0001-Fix-build-with-clang-using-external-assembler.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/Makefiles-ptest.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/Use-SHA256-not-MD5-as-default-digest.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/configure-musl-target.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/configure-targets.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian/c_rehash-compat.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian/ca.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian/debian-targets.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian/man-dir.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian/man-section.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian/no-rpath.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian/no-symbolic.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian/pic.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian/version-script.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian1.0.2/block_digicert_malaysia.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian1.0.2/block_diginotar.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian1.0.2/soname.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/debian1.0.2/version-script.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/engines-install-in-libdir-ssl.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/find.pl (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/oe-ldflags.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/openssl-1.0.2a-x32-asm.patch (100%)
create mode 100644 meta/recipes-connectivity/openssl/openssl10/openssl-c_rehash.sh
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/openssl-fix-des.pod-error.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/openssl-util-perlpath.pl-cwd.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/openssl_fix_for_x32.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/parallel.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/ptest-deps.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/ptest_makefile_deps.patch (100%)
create mode 100755 meta/recipes-connectivity/openssl/openssl10/run-ptest
rename meta/recipes-connectivity/openssl/{openssl => openssl10}/shared-libs.patch (100%)
rename meta/recipes-connectivity/openssl/{openssl_1.0.2l.bb => openssl10_1.0.2l.bb} (96%)
create mode 100644 meta/recipes-connectivity/openssl/openssl_1.1.0f.bbmeta/conf/distro/include/no-static-libs.inc +3 -0
@@ -25,6 +25,9 @@ DISABLE_STATIC_pn-openjade-native = "" DISABLE_STATIC_pn-openssl = "" DISABLE_STATIC_pn-openssl-native = "" DISABLE_STATIC_pn-nativesdk-openssl = "" +DISABLE_STATIC_pn-openssl10 = "" +DISABLE_STATIC_pn-openssl10-native = "" +DISABLE_STATIC_pn-nativesdk-openssl10 = "" # libssp-static-dev included in build-appliance DISABLE_STATIC_pn-gcc-runtime = "" # libusb1-native is used to build static dfu-util-native
meta/recipes-connectivity/openssl/openssl/0001-Remove-test-that-requires-running-as-non-root.patch new file +49 -0
49 lines not on this page · raw message
meta/recipes-connectivity/openssl/openssl/0001-Take-linking-flags-from-LDFLAGS-env-var.patch new file +43 -0
43 lines not on this page · raw message
meta/recipes-connectivity/openssl/openssl/run-ptest +3 -1
@@ -1,2 +1,4 @@ #!/bin/sh -make -k runtest +cd test +OPENSSL_ENGINES=../engines BLDTOP=.. SRCTOP=.. perl run_tests.pl +cd ..
meta/recipes-connectivity/openssl/openssl10.inc renamed from meta/recipes-connectivity/openssl/openssl.inc +12 -2
@@ -37,8 +37,6 @@ FILES_${PN} =+ " ${libdir}/ssl/*" FILES_${PN}-misc = "${libdir}/ssl/misc" RDEPENDS_${PN}-misc = "${@bb.utils.filter('PACKAGECONFIG', 'perl', d)}" -PROVIDES += "openssl10" - # Add the openssl.cnf file to the openssl-conf package. Make the libcrypto # package RRECOMMENDS on this package. This will enable the configuration # file to be installed for both the base openssl package and the libcrypto
@@ -252,3 +250,15 @@ do_install_append_class-native() { } BBCLASSEXTEND = "native nativesdk" + +PACKAGE_PREPROCESS_FUNCS += "openssl_package_preprocess" + +openssl_package_preprocess () { + for file in `find ${PKGD} -name *.h -o -name *.pc -o -name *.so`; do + rm $file + done + rm ${PKGD}/usr/bin/openssl + rm ${PKGD}/usr/bin/c_rehash + rmdir ${PKGD}/usr/bin + +}
meta/recipes-connectivity/openssl/openssl10/0001-Fix-build-with-clang-using-external-assembler.patch renamed from meta/recipes-connectivity/openssl/openssl/0001-Fix-build-with-clang-using-external-assembler.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/Makefiles-ptest.patch renamed from meta/recipes-connectivity/openssl/openssl/Makefiles-ptest.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/Use-SHA256-not-MD5-as-default-digest.patch renamed from meta/recipes-connectivity/openssl/openssl/Use-SHA256-not-MD5-as-default-digest.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/configure-musl-target.patch renamed from meta/recipes-connectivity/openssl/openssl/configure-musl-target.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/configure-targets.patch renamed from meta/recipes-connectivity/openssl/openssl/configure-targets.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/debian/c_rehash-compat.patch renamed from meta/recipes-connectivity/openssl/openssl/debian/c_rehash-compat.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/debian/ca.patch renamed from meta/recipes-connectivity/openssl/openssl/debian/ca.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/debian/debian-targets.patch renamed from meta/recipes-connectivity/openssl/openssl/debian/debian-targets.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/debian/man-dir.patch renamed from meta/recipes-connectivity/openssl/openssl/debian/man-dir.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/debian/man-section.patch renamed from meta/recipes-connectivity/openssl/openssl/debian/man-section.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/debian/no-rpath.patch renamed from meta/recipes-connectivity/openssl/openssl/debian/no-rpath.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/debian/no-symbolic.patch renamed from meta/recipes-connectivity/openssl/openssl/debian/no-symbolic.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/debian/pic.patch renamed from meta/recipes-connectivity/openssl/openssl/debian/pic.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/debian/version-script.patch renamed from meta/recipes-connectivity/openssl/openssl/debian/version-script.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/debian1.0.2/block_digicert_malaysia.patch renamed from meta/recipes-connectivity/openssl/openssl/debian1.0.2/block_digicert_malaysia.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/debian1.0.2/block_diginotar.patch renamed from meta/recipes-connectivity/openssl/openssl/debian1.0.2/block_diginotar.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/debian1.0.2/soname.patch renamed from meta/recipes-connectivity/openssl/openssl/debian1.0.2/soname.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/debian1.0.2/version-script.patch renamed from meta/recipes-connectivity/openssl/openssl/debian1.0.2/version-script.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/engines-install-in-libdir-ssl.patch renamed from meta/recipes-connectivity/openssl/openssl/engines-install-in-libdir-ssl.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/find.pl renamed from meta/recipes-connectivity/openssl/openssl/find.pl +0 -0
meta/recipes-connectivity/openssl/openssl10/oe-ldflags.patch renamed from meta/recipes-connectivity/openssl/openssl/oe-ldflags.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/openssl-1.0.2a-x32-asm.patch renamed from meta/recipes-connectivity/openssl/openssl/openssl-1.0.2a-x32-asm.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/openssl-c_rehash.sh new file +222 -0
222 lines not on this page · raw message
meta/recipes-connectivity/openssl/openssl10/openssl-fix-des.pod-error.patch renamed from meta/recipes-connectivity/openssl/openssl/openssl-fix-des.pod-error.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/openssl-util-perlpath.pl-cwd.patch renamed from meta/recipes-connectivity/openssl/openssl/openssl-util-perlpath.pl-cwd.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/openssl_fix_for_x32.patch renamed from meta/recipes-connectivity/openssl/openssl/openssl_fix_for_x32.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/parallel.patch renamed from meta/recipes-connectivity/openssl/openssl/parallel.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/ptest-deps.patch renamed from meta/recipes-connectivity/openssl/openssl/ptest-deps.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/ptest_makefile_deps.patch renamed from meta/recipes-connectivity/openssl/openssl/ptest_makefile_deps.patch +0 -0
meta/recipes-connectivity/openssl/openssl10/run-ptest new file +2 -0
@@ -0,0 +1,2 @@ +#!/bin/sh +make -k runtest
meta/recipes-connectivity/openssl/openssl10/shared-libs.patch renamed from meta/recipes-connectivity/openssl/openssl/shared-libs.patch +0 -0
meta/recipes-connectivity/openssl/openssl10_1.0.2l.bb renamed from meta/recipes-connectivity/openssl/openssl_1.0.2l.bb +2 -2
@@ -1,4 +1,4 @@ -require openssl.inc +require openssl10.inc # For target side versions of openssl enable support for OCF Linux driver # if they are available.
@@ -12,7 +12,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=057d9218c6180e1d9ee407572b2dd225" export DIRS = "crypto ssl apps engines" export OE_LDFLAGS="${LDFLAGS}" -SRC_URI += "file://find.pl;subdir=${BP}/util/ \ +SRC_URI += "file://find.pl;subdir=openssl-${PV}/util/ \ file://run-ptest \ file://openssl-c_rehash.sh \ file://configure-targets.patch \
meta/recipes-connectivity/openssl/openssl_1.1.0f.bb new file +155 -0
155 lines not on this page · raw message
Signature · 1 line
2.13.2
PATCH 2/4 openssh: depend on openssl 1.0
In reply to Alexander KanavinThe proposed openssl 1.1 patches are here:
https://github.com/openssh/openssh-portable/pull/48
Openssl maintainers are not in a hurry to get 1.1 support in; if it doesn't show up within reasonable time, we can take a patch from Fedora:
http://lists.mindrot.org/pipermail/openssh-unix-dev/2016-November/035454.html
--- meta/recipes-connectivity/openssh/openssh_7.5p1.bb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
meta/recipes-connectivity/openssh/openssh_7.5p1.bb +2 -1
@@ -8,7 +8,8 @@ SECTION = "console/network" LICENSE = "BSD" LIC_FILES_CHKSUM = "file://LICENCE;md5=e326045657e842541d3f35aada442507" -DEPENDS = "zlib openssl" +# openssl 1.1 patches are proposed at https://github.com/openssh/openssh-portable/pull/48 +DEPENDS = "zlib openssl10" DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}" SRC_URI = "http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-${PV}.tar.gz \
Signature · 1 line
2.13.2
PATCH 3/4 cryptodev-tests: depend on openssl 1.0
In reply to Alexander KanavinUpstream ticket:
https://github.com/cryptodev-linux/cryptodev-linux/issues/22
--- meta/recipes-kernel/cryptodev/cryptodev-tests_1.9.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-kernel/cryptodev/cryptodev-tests_1.9.bb +1 -1
@@ -2,7 +2,7 @@ require cryptodev.inc SUMMARY = "A test suite for /dev/crypto device driver" -DEPENDS += "openssl" +DEPENDS += "openssl10" SRC_URI += " \ file://0001-Add-the-compile-and-install-rules-for-cryptodev-test.patch \
Signature · 1 line
2.13.2
PATCH 4/4 gstreamer-plugins-bad: replace openssl dependency with nettle for hls plugin
In reply to Alexander KanavinIt has not been ported to openssl 1.1 (and there's nothing in upstream git), but it's possible to use nettle or gcrypt intead.
--- meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-)
meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc +1 -3
@@ -40,9 +40,7 @@ PACKAGECONFIG[flite] = "--enable-flite,--disable-flite,flite-alsa" PACKAGECONFIG[fluidsynth] = "--enable-fluidsynth,--disable-fluidsynth,fluidsynth" PACKAGECONFIG[gles2] = "--enable-gles2,--disable-gles2,virtual/libgles2" PACKAGECONFIG[gtk] = "--enable-gtk3,--disable-gtk3,gtk+3" -# ensure OpenSSL is used for HLS AES description instead of nettle -# (OpenSSL is a shared dependency with dtls) -PACKAGECONFIG[hls] = "--enable-hls --with-hls-crypto=openssl,--disable-hls,openssl" +PACKAGECONFIG[hls] = "--enable-hls --with-hls-crypto=nettle,--disable-hls,nettle" PACKAGECONFIG[kms] = "--enable-kms,--disable-kms,libdrm" PACKAGECONFIG[libmms] = "--enable-libmms,--disable-libmms,libmms" PACKAGECONFIG[libssh2] = "--enable-libssh2,--disable-libssh2,libssh2"
Signature · 1 line
2.13.2
Re: [PATCH 4/4] gstreamer-plugins-bad: replace openssl dependency with nettle for hls plugin
Quoted 13 lines · Alexander Kanavin
It has not been ported to openssl 1.1 (and there's nothing in upstream git), but it's possible to use nettle or gcrypt intead.
Signed-off-by Alexander Kanavin <[email protected]>--- meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-)meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc +0
-0
meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc PACKAGECONFIG[flite] = "--enable-flite,--disable-flite,flite-alsa" · line 43
Quoted 7 lines
meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc +1
-3@@ -40,9 +40,7 @@ PACKAGECONFIG[flite] = "--enable-flite,--disable-flite,flite-alsa" PACKAGECONFIG[fluidsynth] = "--enable-fluidsynth,--disable-fluidsynth,fluidsynth" PACKAGECONFIG[gles2] = "--enable-gles2,--disable-gles2,virtual/libgles2" PACKAGECONFIG[gtk] = "--enable-gtk3,--disable-gtk3,gtk+3" -# ensure OpenSSL is used for HLS AES description instead of nettle -# (OpenSSL is a shared dependency with dtls) -PACKAGECONFIG[hls] = "--enable-hls --with-hls-crypto=openssl,--disable-hls,openssl" +PACKAGECONFIG[hls] = "--enable-hls --with-hls-crypto=nettle,--disable-hls,nettle"
Can we somehow make openssl(10) or nettle a choice when compiling?
I ask because I've worked on a few systems where people seem to want one encryption engine for as much of the system as possible (usually openssl). While gstreamer has not been a problem in such systems, I could see it being something that would need to be considered.
Otherwise no concerns with the rest of the patch set.
Quoted 4 lines
meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc +0
-0PACKAGECONFIG[kms] = "--enable-kms,--disable-kms,libdrm" PACKAGECONFIG[libmms] = "--enable-libmms,--disable-libmms,libmms" PACKAGECONFIG[libssh2] = "--enable-libssh2,--disable-libssh2,libssh2"
Re: [PATCH 4/4] gstreamer-plugins-bad: replace openssl dependency with nettle for hls plugin
Quoted 6 lines · Mark Hatle
Can we somehow make openssl(10) or nettle a choice when compiling?
I ask because I've worked on a few systems where people seem to want one encryption engine for as much of the system as possible (usually openssl). While gstreamer has not been a problem in such systems, I could see it being something that would need to be considered.
This would need to be done across all recipes where such choice is supported, as a 'preferred crypto engine' distro feature. There's been talk of doing this, but I don't remember what was the outcome.
Also, the plugin needs to be ported to 1.1 first, as the choice will otherwise be taken away when 1.0 goes EOL.
Alex
Re: [PATCH 4/4] gstreamer-plugins-bad: replace openssl dependency with nettle for hls plugin
Quoted 8 lines · Alexander Kanavin
Quoted 6 lines · Mark Hatle
Can we somehow make openssl(10) or nettle a choice when compiling?
I ask because I've worked on a few systems where people seem to want one encryption engine for as much of the system as possible (usually openssl). While gstreamer has not been a problem in such systems, I could see it being something that would need to be considered.
Quoted 6 lines
This would need to be done across all recipes where such choice is supported, as a 'preferred crypto engine' distro feature. There's been talk of doing this, but I don't remember what was the outcome.
Also, the plugin needs to be ported to 1.1 first, as the choice will otherwise be taken away when 1.0 goes EOL.
For now I'm fine with 1.0 support. So something like:
# ensure OpenSSL is used for HLS AES description instead of nettle # (OpenSSL is a shared dependency with dtls) PACKAGECONFIG[hls_openssl10] = "--enable-hls --with-hls-crypto=openssl,--disable-hls,openssl10"
PACKAGECONFIG[hls] = "--enable-hls
--with-hls-crypto=nettle,--disable-hls,nettle"
But my concern is changing the choice of encryption engine could break various existing uses. (Like I said, -I- don't have that use, but I expect others do.. perhaps not with gstreamer-plugins-bad though?)
--Mark
Quoted 2 lines
Alex
Re: [PATCH 4/4] gstreamer-plugins-bad: replace openssl dependency with nettle for hls plugin
In reply to Alexander KanavinQuoted 11 lines · Alexander Kanavin
Quoted 8 lines · Mark Hatle
Can we somehow make openssl(10) or nettle a choice when compiling?
I ask because I've worked on a few systems where people seem to want one encryption engine for as much of the system as possible (usually openssl). While gstreamer has not been a problem in such systems, I could see it being
something that would need to be considered.
Quoted 4 lines
This would need to be done across all recipes where such choice is supported, as a 'preferred crypto engine' distro feature. There's been talk of doing this, but I don't remember what was the outcome.
There was a bug for this but I literally closed it earlier today on the grounds that it would mean patching every user of a crypto library to add an abstraction and alternative codepaths. If you don't patch every instance then there is no point in a global option.
We can have packageconfigs, and expose the choice if the upstream does, but I think the only sane option is to leave it to the user to set the options. It's trivial enough to blacklist openssl if you never want to use it.
Ross
Re: [PATCH 4/4] gstreamer-plugins-bad: replace openssl dependency with nettle for hls plugin
Quoted 18 lines · Ross
On 8 August 2017 at 18:35, Alexander Kanavin <[email protected] <mailto:[email protected]>> wrote:
On 08/08/2017 06:58 PM, Mark Hatle wrote:
Can we somehow make openssl(10) or nettle a choice when compiling?
I ask because I've worked on a few systems where people seem to want one encryption engine for as much of the system as possible (usually openssl). While gstreamer has not been a problem in such systems, I could see it being something that would need to be considered.
This would need to be done across all recipes where such choice is supported, as a 'preferred crypto engine' distro feature. There's been talk of doing this, but I don't remember what was the outcome.
Quoted 4 lines
There was a bug for this but I literally closed it earlier today on the grounds that it would mean patching every user of a crypto library to add an abstraction and alternative codepaths. If you don't patch every instance then there is no point in a global option.
Getting a bit off-topic here, but...
I do expect that at some point in the future someone will come along and offer a distribution wide setting for preferred (and alternative) encryption and make the associated changes to the various recipes to enforce this.
Many of the systems I am working with are starting to have those types of needs.
A preferred encryption resource that everything that can - should use. Along
with alternatives that are 'acceptable' if the primary isn't available. Otherwise other encryption would be prohibited and should trigger an automatic blacklist or failure.
(In this case, there is a lot of work to be done, and potentially any encryption user/provider [even internal] needs to be audited. This is not an 'over night' process... thus I doubt you'll be seeing it tomorrow from anyone here.)
So don't necessarily dismiss the idea -- but I do think it's outside of the immediate scope for the Yocto Project itself, but I would expect something to eventually be presented by a member of the larger OpenEmbedded community.
--Mark
Quoted 5 lines
We can have packageconfigs, and expose the choice if the upstream does, but I think the only sane option is to leave it to the user to set the options. It's trivial enough to blacklist openssl if you never want to use it.
Ross
Re: [PATCH 4/4] gstreamer-plugins-bad: replace openssl dependency with nettle for hls plugin
In reply to Mark HatleQuoted 23 lines · Mark Hatle
Quoted 8 lines · Alexander Kanavin
Quoted 6 lines · Mark Hatle
Can we somehow make openssl(10) or nettle a choice when compiling?
I ask because I've worked on a few systems where people seem to want one encryption engine for as much of the system as possible (usually openssl). While gstreamer has not been a problem in such systems, I could see it being something that would need to be considered.
Quoted 6 lines
This would need to be done across all recipes where such choice is supported, as a 'preferred crypto engine' distro feature. There's been talk of doing this, but I don't remember what was the outcome.
Also, the plugin needs to be ported to 1.1 first, as the choice will otherwise be taken away when 1.0 goes EOL.
For now I'm fine with 1.0 support. So something like:
# ensure OpenSSL is used for HLS AES description instead of nettle # (OpenSSL is a shared dependency with dtls) PACKAGECONFIG[hls_openssl10] = "--enable-hls --with-hls-crypto=openssl,--disable-hls,openssl10"
Quoted 6 lines
PACKAGECONFIG[hls] = "--enable-hls
--with-hls-crypto=nettle,--disable-hls,nettle"But my concern is changing the choice of encryption engine could break various existing uses. (Like I said, -I- don't have that use, but I expect others do.. perhaps not with gstreamer-plugins-bad though?)
I looked at the gstreamer code briefly and the crypto dependency seems fairly trivial (basically just AES decryption) so switching between openssl and nettle doesn't look like it's going to be a big risk (even for users obliged to avoid the LGPLv3 version of nettle in oe-core).
For reference, the problem with openssl 1.1 seems to be that gstreamer embeds an openssl EVP_CIPHER_CTX struct directly within the GstHLSDemuxStream struct, but openssl 1.1 requires that such structs are now allocated and freed dynamically:
https://wiki.openssl.org/index.php/OpenSSL_1.1.0_Changes
https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/ext/hls/gsthlsdemux.h#n84
Quoted 6 lines
--
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [PATCH 4/4] gstreamer-plugins-bad: replace openssl dependency with nettle for hls plugin
In reply to Mark HatleQuoted 9 lines · Mark Hatle
For now I'm fine with 1.0 support. So something like:
# ensure OpenSSL is used for HLS AES description instead of nettle # (OpenSSL is a shared dependency with dtls) PACKAGECONFIG[hls_openssl10] = "--enable-hls --with-hls-crypto=openssl,--disable-hls,openssl10"PACKAGECONFIG[hls] = "--enable-hls
--with-hls-crypto=nettle,--disable-hls,nettle"
Sure, I can amend the patch.
Quoted 3 lines
But my concern is changing the choice of encryption engine could break various existing uses. (Like I said, -I- don't have that use, but I expect others do.. perhaps not with gstreamer-plugins-bad though?)
You can say the same thing about almost anything that goes into master. In this case it doesn't matter, as there is a trivial way to revert the choice, but if the change was more involved, I would appreciate more specific evidence that this indeed causes real problems.
Alex