From 7698c5cf518bc4dbd7ca1b7e2435a21713d951fd Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Fri, 12 Mar 2021 21:42:37 -0800 Subject: xrdp: Upgrade to 0.9.15 Remove upstreamed patches Add patch to support ppc64le Signed-off-by: Khem Raj --- ...piler-warnings-about-snprintf-truncations.patch | 28 ------- .../0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch | 22 +++++ .../0001-correct-the-location-of-errno.h.patch | 30 ------- ...cv-doesn-t-require-pointers-to-be-aligned.patch | 28 ------- meta-oe/recipes-support/xrdp/xrdp_0.9.14.bb | 96 ---------------------- meta-oe/recipes-support/xrdp/xrdp_0.9.15.bb | 94 +++++++++++++++++++++ 6 files changed, 116 insertions(+), 182 deletions(-) delete mode 100644 meta-oe/recipes-support/xrdp/xrdp/0001-Fixed-compiler-warnings-about-snprintf-truncations.patch create mode 100644 meta-oe/recipes-support/xrdp/xrdp/0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch delete mode 100644 meta-oe/recipes-support/xrdp/xrdp/0001-correct-the-location-of-errno.h.patch delete mode 100644 meta-oe/recipes-support/xrdp/xrdp/0001-riscv-doesn-t-require-pointers-to-be-aligned.patch delete mode 100644 meta-oe/recipes-support/xrdp/xrdp_0.9.14.bb create mode 100644 meta-oe/recipes-support/xrdp/xrdp_0.9.15.bb diff --git a/meta-oe/recipes-support/xrdp/xrdp/0001-Fixed-compiler-warnings-about-snprintf-truncations.patch b/meta-oe/recipes-support/xrdp/xrdp/0001-Fixed-compiler-warnings-about-snprintf-truncations.patch deleted file mode 100644 index 5b9315cfb4..0000000000 --- a/meta-oe/recipes-support/xrdp/xrdp/0001-Fixed-compiler-warnings-about-snprintf-truncations.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 9de23a9199d26e64ab6b5be2bb74f260200b2dc5 Mon Sep 17 00:00:00 2001 -From: matt335672 <30179339+matt335672@users.noreply.github.com> -Date: Fri, 21 Aug 2020 12:20:31 +0100 -Subject: [PATCH] Fixed compiler warnings about snprintf truncations - -Upstream-Status: Backport [https://github.com/neutrinolabs/xrdp/pull/1659] ---- - common/log.c | 4 +--- - 1 file changed, 1 insertion(+), 3 deletions(-) - -diff --git a/common/log.c b/common/log.c -index 4a0bd2f3..8686789d 100644 ---- a/common/log.c -+++ b/common/log.c -@@ -555,9 +555,7 @@ log_message(const enum logLevels lvl, const char *msg, ...) - now_t = time(&now_t); - now = localtime(&now_t); - -- snprintf(buff, 21, "[%.4d%.2d%.2d-%.2d:%.2d:%.2d] ", now->tm_year + 1900, -- now->tm_mon + 1, now->tm_mday, now->tm_hour, now->tm_min, -- now->tm_sec); -+ strftime(buff, 21, "[%Y%m%d-%H:%M:%S] ", now); - - internal_log_lvl2str(lvl, buff + 20); - --- -2.29.2 - diff --git a/meta-oe/recipes-support/xrdp/xrdp/0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch b/meta-oe/recipes-support/xrdp/xrdp/0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch new file mode 100644 index 0000000000..c06aa7b6ce --- /dev/null +++ b/meta-oe/recipes-support/xrdp/xrdp/0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch @@ -0,0 +1,22 @@ +From 5958db649855bfb2ada7c0ed22a00f839b9a1161 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 12 Mar 2021 21:40:35 -0800 +Subject: [PATCH] arch: Define NO_NEED_ALIGN on ppc64 + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- + common/arch.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/common/arch.h ++++ b/common/arch.h +@@ -84,7 +84,7 @@ typedef int bool_t; + #define NEED_ALIGN + #elif defined(__x86__) || defined(__x86_64__) || \ + defined(__AMD64__) || defined(_M_IX86) || defined (_M_AMD64) || \ +- defined(__i386__) || defined(__aarch64__) || \ ++ defined(__i386__) || defined(__aarch64__) || defined(__powerpc64__) || \ + defined(__riscv) + #define NO_NEED_ALIGN + #else diff --git a/meta-oe/recipes-support/xrdp/xrdp/0001-correct-the-location-of-errno.h.patch b/meta-oe/recipes-support/xrdp/xrdp/0001-correct-the-location-of-errno.h.patch deleted file mode 100644 index b06077bf02..0000000000 --- a/meta-oe/recipes-support/xrdp/xrdp/0001-correct-the-location-of-errno.h.patch +++ /dev/null @@ -1,30 +0,0 @@ -From c8d3df40ece7d659ccc8212b18de916d28f4398a Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Tue, 22 Dec 2020 23:10:52 -0800 -Subject: [PATCH] correct the location of errno.h - -Fixes build on musl - -Upstream-Status: Submitted [https://github.com/neutrinolabs/xrdp/pull/1761] - -Signed-off-by: Khem Raj ---- - sesman/chansrv/sound.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/sesman/chansrv/sound.c b/sesman/chansrv/sound.c -index b0480d33..45e17307 100644 ---- a/sesman/chansrv/sound.c -+++ b/sesman/chansrv/sound.c -@@ -23,7 +23,7 @@ - #include - #include - #include --#include -+#include - #include - #include - --- -2.29.2 - diff --git a/meta-oe/recipes-support/xrdp/xrdp/0001-riscv-doesn-t-require-pointers-to-be-aligned.patch b/meta-oe/recipes-support/xrdp/xrdp/0001-riscv-doesn-t-require-pointers-to-be-aligned.patch deleted file mode 100644 index 4cd26df04c..0000000000 --- a/meta-oe/recipes-support/xrdp/xrdp/0001-riscv-doesn-t-require-pointers-to-be-aligned.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 229206aa5e55a6e26a074a54a1b50139ab794b36 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Tue, 22 Dec 2020 23:01:13 -0800 -Subject: [PATCH] riscv doesn't require pointers to be aligned - -Upstream-Status: Submitted [https://github.com/neutrinolabs/xrdp/pull/1761] -Signed-off-by: Khem Raj ---- - common/arch.h | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/common/arch.h b/common/arch.h -index ccccfa5a..8c2ac1a4 100644 ---- a/common/arch.h -+++ b/common/arch.h -@@ -84,7 +84,8 @@ typedef int bool_t; - #define NEED_ALIGN - #elif defined(__x86__) || defined(__x86_64__) || \ - defined(__AMD64__) || defined(_M_IX86) || defined (_M_AMD64) || \ -- defined(__i386__) || defined(__aarch64__) -+ defined(__i386__) || defined(__aarch64__) || \ -+ defined(__riscv) - #define NO_NEED_ALIGN - #else - #warning unknown arch --- -2.29.2 - diff --git a/meta-oe/recipes-support/xrdp/xrdp_0.9.14.bb b/meta-oe/recipes-support/xrdp/xrdp_0.9.14.bb deleted file mode 100644 index 078e23c6ed..0000000000 --- a/meta-oe/recipes-support/xrdp/xrdp_0.9.14.bb +++ /dev/null @@ -1,96 +0,0 @@ -SUMMARY = "An open source remote desktop protocol(rdp) server." - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://COPYING;md5=72cfbe4e7bd33a0a1de9630c91195c21 \ -" - -inherit features_check autotools pkgconfig useradd systemd - -DEPENDS = "openssl virtual/libx11 libxfixes libxrandr libpam nasm-native" - -REQUIRED_DISTRO_FEATURES = "x11 pam" - -SRC_URI = "git://github.com/neutrinolabs/xrdp.git;branch=devel \ - file://xrdp.sysconfig \ - file://0001-Added-req_distinguished_name-in-etc-xrdp-openssl.con.patch \ - file://0001-Fix-the-compile-error.patch \ - file://0001-riscv-doesn-t-require-pointers-to-be-aligned.patch \ - file://0001-correct-the-location-of-errno.h.patch \ - file://0001-Fixed-compiler-warnings-about-snprintf-truncations.patch \ - " -SRCREV = "1469d659dbccd6d042ac44f0afc4e1309788dc9d" - -S = "${WORKDIR}/git" - -PACKAGECONFIG ??= "" -PACKAGECONFIG[fuse] = " --enable-fuse, --disable-fuse, fuse" - -USERADD_PACKAGES = "${PN}" -GROUPADD_PARAM_${PN} = "--system xrdp" -USERADD_PARAM_${PN} = "--system --home /var/run/xrdp -g xrdp \ - --no-create-home --shell /bin/false xrdp" - -FILES_${PN} += "${datadir}/dbus-1/services/*.service \ - ${datadir}/dbus-1/accessibility-services/*.service " - -FILES_${PN}-dev += "${libdir}/xrdp/libcommon.so \ - ${libdir}/xrdp/libxrdp.so \ - ${libdir}/xrdp/libscp.so \ - ${libdir}/xrdp/libxrdpapi.so " - -EXTRA_OECONF = "--enable-pam-config=suse" - -do_configure_prepend() { - cd ${S} - ./bootstrap - cd - -} - -do_compile_prepend() { - sed -i 's/(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am/(MAKE) $(AM_MAKEFLAGS) install-exec-am/g' ${S}/keygen/Makefile.in -} - - -do_install_append() { - install -d ${D}${sysconfdir} - install -d ${D}${sysconfdir}/xrdp - install -d ${D}${sysconfdir}/xrdp/pam.d - install -d ${D}${sysconfdir}/sysconfig/xrdp - - # deal with systemd unit files - install -d ${D}${systemd_unitdir}/system - install -m 0644 ${S}/instfiles/xrdp.service.in ${D}${systemd_unitdir}/system/xrdp.service - install -m 0644 ${S}/instfiles/xrdp-sesman.service.in ${D}${systemd_unitdir}/system/xrdp-sesman.service - sed -i -e 's,@localstatedir@,${localstatedir},g' ${D}${systemd_unitdir}/system/xrdp.service ${D}${systemd_unitdir}/system/xrdp-sesman.service - sed -i -e 's,@sysconfdir@,${sysconfdir},g' ${D}${systemd_unitdir}/system/xrdp.service ${D}${systemd_unitdir}/system/xrdp-sesman.service - sed -i -e 's,@sbindir@,${sbindir},g' ${D}${systemd_unitdir}/system/xrdp.service ${D}${systemd_unitdir}/system/xrdp-sesman.service - - install -m 0644 ${S}/instfiles/*.ini ${D}${sysconfdir}/xrdp/ - install -m 0644 ${S}/sesman/sesman.ini.in ${D}${sysconfdir}/xrdp/ - install -m 0644 ${S}/sesman/startwm.sh ${D}${sysconfdir}/xrdp/ - install -m 0644 ${S}/xrdp/xrdp.ini.in ${D}${sysconfdir}/xrdp/ - install -m 0644 ${S}/xrdp/xrdp_keyboard.ini ${D}${sysconfdir}/xrdp/ - install -m 0644 ${S}/keygen/openssl.conf ${D}${sysconfdir}/xrdp/ - install -m 0644 ${WORKDIR}/xrdp.sysconfig ${D}${sysconfdir}/sysconfig/xrdp/ - chown xrdp:xrdp ${D}${sysconfdir}/xrdp -} - -SYSTEMD_SERVICE_${PN} = "xrdp.service xrdp-sesman.service" - -pkg_postinst_${PN}() { - if test -z "$D" - then - if test -x ${bindir}/xrdp-keygen - then - ${bindir}/xrdp-keygen xrdp ${sysconfdir}/xrdp/rsakeys.ini >/dev/null - fi - if test ! -s ${sysconfdir}/xrdp/cert.pem - then - openssl req -x509 -newkey rsa:2048 -sha256 -nodes -days 3652 \ - -keyout ${sysconfdir}/xrdp/key.pem \ - -out ${sysconfdir}/xrdp/cert.pem \ - -config ${sysconfdir}/xrdp/openssl.conf >/dev/null 2>&1 - chmod 400 ${sysconfdir}/xrdp/key.pem - fi - fi -} diff --git a/meta-oe/recipes-support/xrdp/xrdp_0.9.15.bb b/meta-oe/recipes-support/xrdp/xrdp_0.9.15.bb new file mode 100644 index 0000000000..039ba1a763 --- /dev/null +++ b/meta-oe/recipes-support/xrdp/xrdp_0.9.15.bb @@ -0,0 +1,94 @@ +SUMMARY = "An open source remote desktop protocol(rdp) server." + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://COPYING;md5=72cfbe4e7bd33a0a1de9630c91195c21 \ +" + +inherit features_check autotools pkgconfig useradd systemd + +DEPENDS = "openssl virtual/libx11 libxfixes libxrandr libpam nasm-native" + +REQUIRED_DISTRO_FEATURES = "x11 pam" + +SRC_URI = "git://github.com/neutrinolabs/xrdp.git;branch=devel \ + file://xrdp.sysconfig \ + file://0001-Added-req_distinguished_name-in-etc-xrdp-openssl.con.patch \ + file://0001-Fix-the-compile-error.patch \ + file://0001-arch-Define-NO_NEED_ALIGN-on-ppc64.patch \ + " +SRCREV = "f24b7b7988140b18202908654db3289659303772" + +S = "${WORKDIR}/git" + +PACKAGECONFIG ??= "" +PACKAGECONFIG[fuse] = " --enable-fuse, --disable-fuse, fuse" + +USERADD_PACKAGES = "${PN}" +GROUPADD_PARAM_${PN} = "--system xrdp" +USERADD_PARAM_${PN} = "--system --home /var/run/xrdp -g xrdp \ + --no-create-home --shell /bin/false xrdp" + +FILES_${PN} += "${datadir}/dbus-1/services/*.service \ + ${datadir}/dbus-1/accessibility-services/*.service " + +FILES_${PN}-dev += "${libdir}/xrdp/libcommon.so \ + ${libdir}/xrdp/libxrdp.so \ + ${libdir}/xrdp/libscp.so \ + ${libdir}/xrdp/libxrdpapi.so " + +EXTRA_OECONF = "--enable-pam-config=suse" + +do_configure_prepend() { + cd ${S} + ./bootstrap + cd - +} + +do_compile_prepend() { + sed -i 's/(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am/(MAKE) $(AM_MAKEFLAGS) install-exec-am/g' ${S}/keygen/Makefile.in +} + + +do_install_append() { + install -d ${D}${sysconfdir} + install -d ${D}${sysconfdir}/xrdp + install -d ${D}${sysconfdir}/xrdp/pam.d + install -d ${D}${sysconfdir}/sysconfig/xrdp + + # deal with systemd unit files + install -d ${D}${systemd_unitdir}/system + install -m 0644 ${S}/instfiles/xrdp.service.in ${D}${systemd_unitdir}/system/xrdp.service + install -m 0644 ${S}/instfiles/xrdp-sesman.service.in ${D}${systemd_unitdir}/system/xrdp-sesman.service + sed -i -e 's,@localstatedir@,${localstatedir},g' ${D}${systemd_unitdir}/system/xrdp.service ${D}${systemd_unitdir}/system/xrdp-sesman.service + sed -i -e 's,@sysconfdir@,${sysconfdir},g' ${D}${systemd_unitdir}/system/xrdp.service ${D}${systemd_unitdir}/system/xrdp-sesman.service + sed -i -e 's,@sbindir@,${sbindir},g' ${D}${systemd_unitdir}/system/xrdp.service ${D}${systemd_unitdir}/system/xrdp-sesman.service + + install -m 0644 ${S}/instfiles/*.ini ${D}${sysconfdir}/xrdp/ + install -m 0644 ${S}/sesman/sesman.ini.in ${D}${sysconfdir}/xrdp/ + install -m 0644 ${S}/sesman/startwm.sh ${D}${sysconfdir}/xrdp/ + install -m 0644 ${S}/xrdp/xrdp.ini.in ${D}${sysconfdir}/xrdp/ + install -m 0644 ${S}/xrdp/xrdp_keyboard.ini ${D}${sysconfdir}/xrdp/ + install -m 0644 ${S}/keygen/openssl.conf ${D}${sysconfdir}/xrdp/ + install -m 0644 ${WORKDIR}/xrdp.sysconfig ${D}${sysconfdir}/sysconfig/xrdp/ + chown xrdp:xrdp ${D}${sysconfdir}/xrdp +} + +SYSTEMD_SERVICE_${PN} = "xrdp.service xrdp-sesman.service" + +pkg_postinst_${PN}() { + if test -z "$D" + then + if test -x ${bindir}/xrdp-keygen + then + ${bindir}/xrdp-keygen xrdp ${sysconfdir}/xrdp/rsakeys.ini >/dev/null + fi + if test ! -s ${sysconfdir}/xrdp/cert.pem + then + openssl req -x509 -newkey rsa:2048 -sha256 -nodes -days 3652 \ + -keyout ${sysconfdir}/xrdp/key.pem \ + -out ${sysconfdir}/xrdp/cert.pem \ + -config ${sysconfdir}/xrdp/openssl.conf >/dev/null 2>&1 + chmod 400 ${sysconfdir}/xrdp/key.pem + fi + fi +} -- cgit v1.2.3-54-g00ecf