summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-support/freerdp
diff options
context:
space:
mode:
Diffstat (limited to 'meta-oe/recipes-support/freerdp')
-rw-r--r--meta-oe/recipes-support/freerdp/freerdp/0001-Fixed-compilation-warnings-in-ainput-channel.patch72
-rw-r--r--meta-oe/recipes-support/freerdp/freerdp/0001-Fixed-compilation-warnings.patch27
-rw-r--r--meta-oe/recipes-support/freerdp/freerdp/CVE-2024-32661.patch27
-rw-r--r--meta-oe/recipes-support/freerdp/freerdp3_3.5.1.bb (renamed from meta-oe/recipes-support/freerdp/freerdp3_3.4.0.bb)5
-rw-r--r--meta-oe/recipes-support/freerdp/freerdp_2.11.7.bb (renamed from meta-oe/recipes-support/freerdp/freerdp_2.11.2.bb)18
5 files changed, 142 insertions, 7 deletions
diff --git a/meta-oe/recipes-support/freerdp/freerdp/0001-Fixed-compilation-warnings-in-ainput-channel.patch b/meta-oe/recipes-support/freerdp/freerdp/0001-Fixed-compilation-warnings-in-ainput-channel.patch
new file mode 100644
index 0000000000..62600cddab
--- /dev/null
+++ b/meta-oe/recipes-support/freerdp/freerdp/0001-Fixed-compilation-warnings-in-ainput-channel.patch
@@ -0,0 +1,72 @@
1From 130094de3244d5039e463e1142e1ec487c1104ef Mon Sep 17 00:00:00 2001
2From: Armin Novak <armin.novak@thincast.com>
3Date: Tue, 22 Feb 2022 12:05:08 +0100
4Subject: [PATCH] Fixed compilation warnings in ainput channel
5
6Upstream-Status: Backport [130094de3 Fixed compilation warnings in ainput channel]
7Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
8---
9 channels/ainput/server/ainput_main.c | 18 ++++++++++++------
10 1 file changed, 12 insertions(+), 6 deletions(-)
11
12diff --git a/channels/ainput/server/ainput_main.c b/channels/ainput/server/ainput_main.c
13index bc1737ee1..17d2ec681 100644
14--- a/channels/ainput/server/ainput_main.c
15+++ b/channels/ainput/server/ainput_main.c
16@@ -192,7 +192,7 @@ static UINT ainput_server_recv_mouse_event(ainput_server* ainput, wStream* s)
17
18 static HANDLE ainput_server_get_channel_handle(ainput_server* ainput)
19 {
20- BYTE* buffer = NULL;
21+ void* buffer = NULL;
22 DWORD BytesReturned = 0;
23 HANDLE ChannelEvent = NULL;
24
25@@ -389,7 +389,7 @@ ainput_server_context* ainput_server_context_new(HANDLE vcm)
26 goto fail;
27 return &ainput->context;
28 fail:
29- ainput_server_context_free(ainput);
30+ ainput_server_context_free(&ainput->context);
31 return NULL;
32 }
33
34@@ -496,17 +496,23 @@ UINT ainput_server_context_poll_int(ainput_server_context* context)
35 break;
36 case AINPUT_OPENED:
37 {
38- BYTE* buffer = NULL;
39+ union
40+ {
41+ BYTE* pb;
42+ void* pv;
43+ } buffer;
44 DWORD BytesReturned = 0;
45
46- if (WTSVirtualChannelQuery(ainput->ainput_channel, WTSVirtualChannelReady, &buffer,
47+ buffer.pv = NULL;
48+
49+ if (WTSVirtualChannelQuery(ainput->ainput_channel, WTSVirtualChannelReady, &buffer.pv,
50 &BytesReturned) != TRUE)
51 {
52 WLog_ERR(TAG, "WTSVirtualChannelReady failed,");
53 }
54 else
55 {
56- if (*buffer != 0)
57+ if (*buffer.pb != 0)
58 {
59 error = ainput_server_send_version(ainput);
60 if (error)
61@@ -518,7 +524,7 @@ UINT ainput_server_context_poll_int(ainput_server_context* context)
62 else
63 error = CHANNEL_RC_OK;
64 }
65- WTSFreeMemory(buffer);
66+ WTSFreeMemory(buffer.pv);
67 }
68 break;
69 case AINPUT_VERSION_SENT:
70--
712.43.0
72
diff --git a/meta-oe/recipes-support/freerdp/freerdp/0001-Fixed-compilation-warnings.patch b/meta-oe/recipes-support/freerdp/freerdp/0001-Fixed-compilation-warnings.patch
new file mode 100644
index 0000000000..7fae2703f8
--- /dev/null
+++ b/meta-oe/recipes-support/freerdp/freerdp/0001-Fixed-compilation-warnings.patch
@@ -0,0 +1,27 @@
1From 75fa1fa5bd5ef2350390564245fd0984209ac092 Mon Sep 17 00:00:00 2001
2From: akallabeth <akallabeth@posteo.net>
3Date: Mon, 4 Jul 2022 14:34:46 +0200
4Subject: [PATCH] Fixed compilation warnings
5
6Upstream-Status: Backport [https://github.com/FreeRDP/FreeRDP/commit/2da280b8a1748052b70b3f5a1ef0d8e932c33adc]
7Signed-off-by: Khem Raj <raj.khem@gmail.com>
8---
9 client/X11/xf_graphics.c | 2 +-
10 1 file changed, 1 insertion(+), 1 deletion(-)
11
12diff --git a/client/X11/xf_graphics.c b/client/X11/xf_graphics.c
13index 5aa1fd48b..fe81e0ed9 100644
14--- a/client/X11/xf_graphics.c
15+++ b/client/X11/xf_graphics.c
16@@ -438,7 +438,7 @@ static BOOL xf_Pointer_New(rdpContext* context, rdpPointer* pointer)
17
18 #endif
19 fail:
20- WLog_DBG(TAG, "%s: %ld", __func__, rc ? pointer : -1);
21+ WLog_DBG(TAG, "%s: %p", __func__, rc ? pointer : NULL);
22 return rc;
23 }
24
25--
262.45.0
27
diff --git a/meta-oe/recipes-support/freerdp/freerdp/CVE-2024-32661.patch b/meta-oe/recipes-support/freerdp/freerdp/CVE-2024-32661.patch
new file mode 100644
index 0000000000..002135b5e4
--- /dev/null
+++ b/meta-oe/recipes-support/freerdp/freerdp/CVE-2024-32661.patch
@@ -0,0 +1,27 @@
1From 71e463e31b4d69f4022d36bfc814592f56600793 Mon Sep 17 00:00:00 2001
2From: akallabeth <akallabeth@posteo.net>
3Date: Sun, 21 Apr 2024 13:56:13 +0200
4Subject: [PATCH] [core,info] fix missing check in rdp_write_logon_info_v1
5
6CVE: CVE-2024-32661
7Upstream-Status: Backport [https://github.com/FreeRDP/FreeRDP/commit/71e463e31b4d69f4022d36bfc814592f56600793]
8Signed-off-by: Peter Marko <peter.marko@siemens.com>
9---
10 libfreerdp/core/info.c | 4 ++++
11 1 file changed, 4 insertions(+)
12
13diff --git a/libfreerdp/core/info.c b/libfreerdp/core/info.c
14index 7d6eec137..3395e4d2e 100644
15--- a/libfreerdp/core/info.c
16+++ b/libfreerdp/core/info.c
17@@ -1322,6 +1322,10 @@ static BOOL rdp_write_logon_info_v1(wStream* s, logon_info* info)
18 return FALSE;
19
20 /* domain */
21+ WINPR_ASSERT(info);
22+ if (!info->domain || !info->username)
23+ return FALSE;
24+
25 ilen = ConvertToUnicode(CP_UTF8, 0, info->domain, -1, &wString, 0);
26
27 if (ilen < 0)
diff --git a/meta-oe/recipes-support/freerdp/freerdp3_3.4.0.bb b/meta-oe/recipes-support/freerdp/freerdp3_3.5.1.bb
index 537d19263d..284f61c137 100644
--- a/meta-oe/recipes-support/freerdp/freerdp3_3.4.0.bb
+++ b/meta-oe/recipes-support/freerdp/freerdp3_3.5.1.bb
@@ -7,10 +7,11 @@ DEPENDS = "openssl libusb1 uriparser cairo icu pkcs11-helper zlib jpeg"
7 7
8inherit pkgconfig cmake 8inherit pkgconfig cmake
9 9
10SRCREV = "708f3764897e06297469a7b0507b3c9ecc041ad7" 10SRCREV = "eda5c99686e15327f2f37b9cadf307e852b96adf"
11SRC_URI = "git://github.com/FreeRDP/FreeRDP.git;branch=master;protocol=https" 11SRC_URI = "git://github.com/FreeRDP/FreeRDP.git;branch=master;protocol=https"
12 12
13S = "${WORKDIR}/git" 13
14CVE_PRODUCT = "freerdp"
14 15
15PACKAGECONFIG ??= " \ 16PACKAGECONFIG ??= " \
16 ${@bb.utils.filter('DISTRO_FEATURES', 'pam pulseaudio wayland x11', d)} \ 17 ${@bb.utils.filter('DISTRO_FEATURES', 'pam pulseaudio wayland x11', d)} \
diff --git a/meta-oe/recipes-support/freerdp/freerdp_2.11.2.bb b/meta-oe/recipes-support/freerdp/freerdp_2.11.7.bb
index 8de0e39ad7..18af3229d7 100644
--- a/meta-oe/recipes-support/freerdp/freerdp_2.11.2.bb
+++ b/meta-oe/recipes-support/freerdp/freerdp_2.11.7.bb
@@ -3,7 +3,7 @@
3 3
4DESCRIPTION = "FreeRDP RDP client & server library" 4DESCRIPTION = "FreeRDP RDP client & server library"
5HOMEPAGE = "http://www.freerdp.com" 5HOMEPAGE = "http://www.freerdp.com"
6DEPENDS = "openssl alsa-lib libusb1" 6DEPENDS = "openssl libusb1"
7SECTION = "net" 7SECTION = "net"
8LICENSE = "Apache-2.0" 8LICENSE = "Apache-2.0"
9LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" 9LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
@@ -13,17 +13,18 @@ inherit pkgconfig cmake gitpkgv
13PE = "1" 13PE = "1"
14PKGV = "${GITPKGVTAG}" 14PKGV = "${GITPKGVTAG}"
15 15
16SRCREV = "a38c1be9eee39a9bc22b511fffe96e63fdf8ebe7" 16SRCREV = "efa899d3deb8595a29fabb2a2251722f9d7e0d7f"
17SRC_URI = "git://github.com/FreeRDP/FreeRDP.git;branch=stable-2.0;protocol=https \ 17SRC_URI = "git://github.com/FreeRDP/FreeRDP.git;branch=stable-2.0;protocol=https \
18 file://winpr-makecert-Build-with-install-RPATH.patch \ 18 file://winpr-makecert-Build-with-install-RPATH.patch \
19 file://0001-Fixed-compilation-warnings.patch \
19 file://0001-Fix-const-qualifier-error.patch \ 20 file://0001-Fix-const-qualifier-error.patch \
20 file://0002-Do-not-install-tools-a-CMake-targets.patch \ 21 file://0002-Do-not-install-tools-a-CMake-targets.patch \
22 file://0001-Fixed-compilation-warnings-in-ainput-channel.patch \
23 file://CVE-2024-32661.patch \
21 " 24 "
22 25
23S = "${WORKDIR}/git"
24 26
25EXTRA_OECMAKE += " \ 27EXTRA_OECMAKE += " \
26 -DWITH_ALSA=ON \
27 -DWITH_FFMPEG=OFF \ 28 -DWITH_FFMPEG=OFF \
28 -DWITH_CUNIT=OFF \ 29 -DWITH_CUNIT=OFF \
29 -DWITH_NEON=OFF \ 30 -DWITH_NEON=OFF \
@@ -35,7 +36,7 @@ EXTRA_OECMAKE += " \
35 36
36PACKAGECONFIG ??= " \ 37PACKAGECONFIG ??= " \
37 ${@bb.utils.filter('DISTRO_FEATURES', 'directfb pam pulseaudio wayland x11', d)}\ 38 ${@bb.utils.filter('DISTRO_FEATURES', 'directfb pam pulseaudio wayland x11', d)}\
38 gstreamer cups pcsc server \ 39 alsa gstreamer cups pcsc server \
39" 40"
40 41
41X11_DEPS = "virtual/libx11 libxinerama libxext libxcursor libxv libxi libxrender libxfixes libxdamage libxrandr libxkbfile" 42X11_DEPS = "virtual/libx11 libxinerama libxext libxcursor libxv libxi libxrender libxfixes libxdamage libxrandr libxkbfile"
@@ -48,6 +49,7 @@ PACKAGECONFIG[pulseaudio] = "-DWITH_PULSEAUDIO=ON,-DWITH_PULSEAUDIO=OFF,pulseaud
48PACKAGECONFIG[gstreamer] = "-DWITH_GSTREAMER_1_0=ON,-DWITH_GSTREAMER_1_0=OFF,gstreamer1.0 gstreamer1.0-plugins-base" 49PACKAGECONFIG[gstreamer] = "-DWITH_GSTREAMER_1_0=ON,-DWITH_GSTREAMER_1_0=OFF,gstreamer1.0 gstreamer1.0-plugins-base"
49PACKAGECONFIG[cups] = "-DWITH_CUPS=ON,-DWITH_CUPS=OFF,cups" 50PACKAGECONFIG[cups] = "-DWITH_CUPS=ON,-DWITH_CUPS=OFF,cups"
50PACKAGECONFIG[server] = "-DWITH_SERVER=ON,-DWITH_SERVER=OFF" 51PACKAGECONFIG[server] = "-DWITH_SERVER=ON,-DWITH_SERVER=OFF"
52PACKAGECONFIG[alsa] = "-DWITH_ALSA=ON,-DWITH_ALSA=OFF,alsa-lib"
51 53
52PACKAGES =+ "libfreerdp" 54PACKAGES =+ "libfreerdp"
53 55
@@ -90,3 +92,9 @@ python populate_packages:prepend () {
90 description='FreeRDP plugin %s', 92 description='FreeRDP plugin %s',
91 prepend=True, extra_depends='') 93 prepend=True, extra_depends='')
92} 94}
95
96CVE_STATUS[CVE-2024-32662] = "fixed-version: 2.x is not affected, bug was introduced in 3.0.0"
97
98# avoid http://errors.yoctoproject.org/Errors/Details/852862/
99# fixed in freerdp3 with https://github.com/FreeRDP/FreeRDP/pull/10553
100CFLAGS += "-std=gnu17"