diff options
Diffstat (limited to 'meta-oe/recipes-support/freerdp')
-rw-r--r-- | meta-oe/recipes-support/freerdp/freerdp/0001-Fixed-compilation-warnings-in-ainput-channel.patch | 72 | ||||
-rw-r--r-- | meta-oe/recipes-support/freerdp/freerdp/0001-Fixed-compilation-warnings.patch | 27 | ||||
-rw-r--r-- | meta-oe/recipes-support/freerdp/freerdp/CVE-2024-32661.patch | 27 | ||||
-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 @@ | |||
1 | From 130094de3244d5039e463e1142e1ec487c1104ef Mon Sep 17 00:00:00 2001 | ||
2 | From: Armin Novak <armin.novak@thincast.com> | ||
3 | Date: Tue, 22 Feb 2022 12:05:08 +0100 | ||
4 | Subject: [PATCH] Fixed compilation warnings in ainput channel | ||
5 | |||
6 | Upstream-Status: Backport [130094de3 Fixed compilation warnings in ainput channel] | ||
7 | Signed-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 | |||
12 | diff --git a/channels/ainput/server/ainput_main.c b/channels/ainput/server/ainput_main.c | ||
13 | index 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 | -- | ||
71 | 2.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 @@ | |||
1 | From 75fa1fa5bd5ef2350390564245fd0984209ac092 Mon Sep 17 00:00:00 2001 | ||
2 | From: akallabeth <akallabeth@posteo.net> | ||
3 | Date: Mon, 4 Jul 2022 14:34:46 +0200 | ||
4 | Subject: [PATCH] Fixed compilation warnings | ||
5 | |||
6 | Upstream-Status: Backport [https://github.com/FreeRDP/FreeRDP/commit/2da280b8a1748052b70b3f5a1ef0d8e932c33adc] | ||
7 | Signed-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 | |||
12 | diff --git a/client/X11/xf_graphics.c b/client/X11/xf_graphics.c | ||
13 | index 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 | -- | ||
26 | 2.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 @@ | |||
1 | From 71e463e31b4d69f4022d36bfc814592f56600793 Mon Sep 17 00:00:00 2001 | ||
2 | From: akallabeth <akallabeth@posteo.net> | ||
3 | Date: Sun, 21 Apr 2024 13:56:13 +0200 | ||
4 | Subject: [PATCH] [core,info] fix missing check in rdp_write_logon_info_v1 | ||
5 | |||
6 | CVE: CVE-2024-32661 | ||
7 | Upstream-Status: Backport [https://github.com/FreeRDP/FreeRDP/commit/71e463e31b4d69f4022d36bfc814592f56600793] | ||
8 | Signed-off-by: Peter Marko <peter.marko@siemens.com> | ||
9 | --- | ||
10 | libfreerdp/core/info.c | 4 ++++ | ||
11 | 1 file changed, 4 insertions(+) | ||
12 | |||
13 | diff --git a/libfreerdp/core/info.c b/libfreerdp/core/info.c | ||
14 | index 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 | ||
8 | inherit pkgconfig cmake | 8 | inherit pkgconfig cmake |
9 | 9 | ||
10 | SRCREV = "708f3764897e06297469a7b0507b3c9ecc041ad7" | 10 | SRCREV = "eda5c99686e15327f2f37b9cadf307e852b96adf" |
11 | SRC_URI = "git://github.com/FreeRDP/FreeRDP.git;branch=master;protocol=https" | 11 | SRC_URI = "git://github.com/FreeRDP/FreeRDP.git;branch=master;protocol=https" |
12 | 12 | ||
13 | S = "${WORKDIR}/git" | 13 | |
14 | CVE_PRODUCT = "freerdp" | ||
14 | 15 | ||
15 | PACKAGECONFIG ??= " \ | 16 | PACKAGECONFIG ??= " \ |
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 | ||
4 | DESCRIPTION = "FreeRDP RDP client & server library" | 4 | DESCRIPTION = "FreeRDP RDP client & server library" |
5 | HOMEPAGE = "http://www.freerdp.com" | 5 | HOMEPAGE = "http://www.freerdp.com" |
6 | DEPENDS = "openssl alsa-lib libusb1" | 6 | DEPENDS = "openssl libusb1" |
7 | SECTION = "net" | 7 | SECTION = "net" |
8 | LICENSE = "Apache-2.0" | 8 | LICENSE = "Apache-2.0" |
9 | LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" | 9 | LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" |
@@ -13,17 +13,18 @@ inherit pkgconfig cmake gitpkgv | |||
13 | PE = "1" | 13 | PE = "1" |
14 | PKGV = "${GITPKGVTAG}" | 14 | PKGV = "${GITPKGVTAG}" |
15 | 15 | ||
16 | SRCREV = "a38c1be9eee39a9bc22b511fffe96e63fdf8ebe7" | 16 | SRCREV = "efa899d3deb8595a29fabb2a2251722f9d7e0d7f" |
17 | SRC_URI = "git://github.com/FreeRDP/FreeRDP.git;branch=stable-2.0;protocol=https \ | 17 | SRC_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 | ||
23 | S = "${WORKDIR}/git" | ||
24 | 26 | ||
25 | EXTRA_OECMAKE += " \ | 27 | EXTRA_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 | ||
36 | PACKAGECONFIG ??= " \ | 37 | PACKAGECONFIG ??= " \ |
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 | ||
41 | X11_DEPS = "virtual/libx11 libxinerama libxext libxcursor libxv libxi libxrender libxfixes libxdamage libxrandr libxkbfile" | 42 | X11_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 | |||
48 | PACKAGECONFIG[gstreamer] = "-DWITH_GSTREAMER_1_0=ON,-DWITH_GSTREAMER_1_0=OFF,gstreamer1.0 gstreamer1.0-plugins-base" | 49 | PACKAGECONFIG[gstreamer] = "-DWITH_GSTREAMER_1_0=ON,-DWITH_GSTREAMER_1_0=OFF,gstreamer1.0 gstreamer1.0-plugins-base" |
49 | PACKAGECONFIG[cups] = "-DWITH_CUPS=ON,-DWITH_CUPS=OFF,cups" | 50 | PACKAGECONFIG[cups] = "-DWITH_CUPS=ON,-DWITH_CUPS=OFF,cups" |
50 | PACKAGECONFIG[server] = "-DWITH_SERVER=ON,-DWITH_SERVER=OFF" | 51 | PACKAGECONFIG[server] = "-DWITH_SERVER=ON,-DWITH_SERVER=OFF" |
52 | PACKAGECONFIG[alsa] = "-DWITH_ALSA=ON,-DWITH_ALSA=OFF,alsa-lib" | ||
51 | 53 | ||
52 | PACKAGES =+ "libfreerdp" | 54 | PACKAGES =+ "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 | |||
96 | CVE_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 | ||
100 | CFLAGS += "-std=gnu17" | ||