dropbear: Add enable-x11-forwarding PACKAGECONFIG option

Add the option to enable X11 forwarding in dropbear with a new
PACKAGECONFIG option ('enable-x11-forwarding'). Method uses
localoption.h file for dropbear feature selection.

Add backport patch to fix X11 forwarding in the current 2022.82
version.

(From OE-Core rev: f09d94979fd98f160ef7157b517489a43086333f)

Signed-off-by: Daniel Gomez <daniel@qtec.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Daniel Gomez
2022-09-27 19:36:51 +02:00
committed by Richard Purdie
parent d96f13c403
commit 18393dc116
2 changed files with 38 additions and 1 deletions

View File

@@ -0,0 +1,28 @@
From 64292091fe3e8ea7c9bfe74af730b2ff5428bf10 Mon Sep 17 00:00:00 2001
From: Matt Johnston <matt@ucc.asn.au>
Date: Sat, 23 Apr 2022 22:33:31 +0800
Subject: [PATCH] Fix X11 build failure, use DROPBEAR_PRIO_LOWDELAY
Upstream-Status: Backport
Signed-off-by: Daniel Gomez <daniel@qtec.com>
---
svr-x11fwd.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/svr-x11fwd.c b/svr-x11fwd.c
index 353cb12..5d9e6a9 100644
--- a/svr-x11fwd.c
+++ b/svr-x11fwd.c
@@ -206,7 +206,7 @@ void x11cleanup(struct ChanSess *chansess) {
}
static int x11_inithandler(struct Channel *channel) {
- channel->prio = DROPBEAR_CHANNEL_PRIO_INTERACTIVE;
+ channel->prio = DROPBEAR_PRIO_LOWDELAY;
return 0;
}
--
2.35.1

View File

@@ -22,7 +22,8 @@ SRC_URI = "http://matt.ucc.asn.au/dropbear/releases/dropbear-${PV}.tar.bz2 \
file://dropbear.socket \
file://dropbear.default \
${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)} \
${@bb.utils.contains('PACKAGECONFIG', 'disable-weak-ciphers', 'file://dropbear-disable-weak-ciphers.patch', '', d)} "
${@bb.utils.contains('PACKAGECONFIG', 'disable-weak-ciphers', 'file://dropbear-disable-weak-ciphers.patch', '', d)} \
file://0007-Fix-X11-build-failure-use-DROPBEAR_PRIO_LOWDELAY.patch"
SRC_URI[sha256sum] = "3a038d2bbc02bf28bbdd20c012091f741a3ec5cbe460691811d714876aad75d1"
@@ -53,6 +54,7 @@ EXTRA_OEMAKE = 'MULTI=1 SCPPROGRESS=1 PROGRAMS="${SBINCOMMANDS} ${BINCOMMANDS}"'
PACKAGECONFIG ?= "disable-weak-ciphers"
PACKAGECONFIG[system-libtom] = "--disable-bundled-libtom,--enable-bundled-libtom,libtommath libtomcrypt"
PACKAGECONFIG[disable-weak-ciphers] = ""
PACKAGECONFIG[enable-x11-forwarding] = ""
EXTRA_OECONF += "\
${@bb.utils.contains('DISTRO_FEATURES', 'pam', '--enable-pam', '--disable-pam', d)}"
@@ -64,6 +66,13 @@ EXTRA_OECONF += "--disable-harden"
# musl does not implement wtmp/logwtmp APIs
EXTRA_OECONF:append:libc-musl = " --disable-wtmp --disable-lastlog"
do_configure:append() {
echo "/* Dropbear features */" > ${B}/localoptions.h
if ${@bb.utils.contains('PACKAGECONFIG', 'enable-x11-forwarding', 'true', 'false', d)}; then
echo "#define DROPBEAR_X11FWD 1" >> ${B}/localoptions.h
fi
}
do_install() {
install -d ${D}${sysconfdir} \
${D}${sysconfdir}/init.d \