summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>2026-04-09 14:32:51 +0200
committerKhem Raj <khem.raj@oss.qualcomm.com>2026-04-10 07:59:58 -0700
commitf2c5f3fadc68922d6b5dcb8967fd5de9f785c3ec (patch)
tree6f93a26257c0f5a57bd9db641557a7d40377ea89
parentffb7d752ff9dc303169b331ec2d7f7b9885c6612 (diff)
downloadmeta-openembedded-f2c5f3fadc68922d6b5dcb8967fd5de9f785c3ec.tar.gz
libgpiod: update to v2.2.4
Bug-fix release addressing several issues discovered during an AI-augmented security audit. The most severe bug was found in the C extension code of the python bindings - which also get an update - but there were some memory leaks and integer overflow bugs in the core C library as well as in tools and DBus daemon. Full changelog: Bug fixes: - fix buffer over-read bugs when translating uAPI structs to library types - fix variable and argument types where necessary - sanitize values returned by the kernel to avoid potential buffer overflows - fix memory leaks in gpio-tools - add missing return value checks in gpio-tools - fix period parsing in gpio-tools - use correct loop counter in error path in gpio-manager Improvements: - make tests work with newer coreutils by removing cases checking tools' behavior on SIGINT which stopped working due to changes in behavior of the timeout tool Also: drop the patch that's now upstream from the recipe. Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com> Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
-rw-r--r--meta-oe/recipes-support/libgpiod/libgpiod-2.x/0001-tools-tests-remove-SIGINT-test-cases.patch83
-rw-r--r--meta-oe/recipes-support/libgpiod/libgpiod_2.2.4.bb (renamed from meta-oe/recipes-support/libgpiod/libgpiod_2.2.3.bb)3
2 files changed, 1 insertions, 85 deletions
diff --git a/meta-oe/recipes-support/libgpiod/libgpiod-2.x/0001-tools-tests-remove-SIGINT-test-cases.patch b/meta-oe/recipes-support/libgpiod/libgpiod-2.x/0001-tools-tests-remove-SIGINT-test-cases.patch
deleted file mode 100644
index 7fe06b9882..0000000000
--- a/meta-oe/recipes-support/libgpiod/libgpiod-2.x/0001-tools-tests-remove-SIGINT-test-cases.patch
+++ /dev/null
@@ -1,83 +0,0 @@
1From 3c38c5f9ab49384039f35408656a88f87619dd03 Mon Sep 17 00:00:00 2001
2From: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
3Date: Wed, 18 Mar 2026 14:07:06 +0100
4Subject: [libgpiod][PATCH] tools: tests: remove SIGINT test cases
5
6In coreutils v9.10 (specifically with commit 8c2461933411 ("timeout:
7honor ignored signal dispositions")) the behavior of timeout changed and
8it will no longer propagate SIGINT or SIGQUIT in shell background jobs.
9This breaks the test cases checking the behavior of tools after SIGINT.
10We have to assume that if exit after SIGTERM works, then so does it
11after SIGINT and remove the failing tests.
12
13Upstream-Status: Submitted [https://lore.kernel.org/all/20260318131413.56575-1-bartosz.golaszewski@oss.qualcomm.com/]
14Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
15---
16 tools/gpio-tools-test.bash | 37 -------------------------------------
17 1 file changed, 37 deletions(-)
18
19diff --git a/tools/gpio-tools-test.bash b/tools/gpio-tools-test.bash
20index 71d6e3d..62f6836 100755
21--- a/tools/gpio-tools-test.bash
22+++ b/tools/gpio-tools-test.bash
23@@ -1415,17 +1415,6 @@ test_gpioset_with_lines_strictly_by_name() {
24 gpiosim_check_value sim0 6 0
25 }
26
27-test_gpioset_interactive_after_SIGINT() {
28- gpiosim_chip sim0 num_lines=8 line_name=1:foo
29-
30- dut_run gpioset -i foo=1
31-
32- dut_kill -SIGINT
33- dut_wait
34-
35- status_is 130
36-}
37-
38 test_gpioset_interactive_after_SIGTERM() {
39 gpiosim_chip sim0 num_lines=8 line_name=1:foo
40
41@@ -1907,20 +1896,6 @@ test_gpiomon_multiple_lines_across_multiple_chips() {
42 assert_fail dut_readable
43 }
44
45-test_gpiomon_exit_after_SIGINT() {
46- gpiosim_chip sim0 num_lines=8
47-
48- local sim0=${GPIOSIM_CHIP_NAME[sim0]}
49-
50- dut_run gpiomon --banner --chip "$sim0" 4
51- dut_regex_match "Monitoring line .*"
52-
53- dut_kill -SIGINT
54- dut_wait
55-
56- status_is 130
57-}
58-
59 test_gpiomon_exit_after_SIGTERM() {
60 gpiosim_chip sim0 num_lines=8
61
62@@ -2503,18 +2478,6 @@ test_gpionotify_multiple_lines_across_multiple_chips() {
63 assert_fail dut_readable
64 }
65
66-test_gpionotify_exit_after_SIGINT() {
67- gpiosim_chip sim0 num_lines=8
68-
69- dut_run gpionotify --banner --chip "${GPIOSIM_CHIP_NAME[sim0]}" 4
70- dut_regex_match "Watching line .*"
71-
72- dut_kill -SIGINT
73- dut_wait
74-
75- status_is 130
76-}
77-
78 test_gpionotify_exit_after_SIGTERM() {
79 gpiosim_chip sim0 num_lines=8
80
81--
822.47.3
83
diff --git a/meta-oe/recipes-support/libgpiod/libgpiod_2.2.3.bb b/meta-oe/recipes-support/libgpiod/libgpiod_2.2.4.bb
index 38829a620f..2c8d9f1873 100644
--- a/meta-oe/recipes-support/libgpiod/libgpiod_2.2.3.bb
+++ b/meta-oe/recipes-support/libgpiod/libgpiod_2.2.4.bb
@@ -13,10 +13,9 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}-2.x:"
13 13
14SRC_URI += " \ 14SRC_URI += " \
15 file://gpio-manager.init \ 15 file://gpio-manager.init \
16 file://0001-tools-tests-remove-SIGINT-test-cases.patch \
17" 16"
18 17
19SRC_URI[sha256sum] = "70012b0262e4b90f140431efa841ca89643b02ea6c09f507e23cec664a51b71a" 18SRC_URI[sha256sum] = "13207176b0eb9b3e0f02552d5f49f5a6a449343ce47416158bb484d9d3019592"
20 19
21# Enable all project features for ptest 20# Enable all project features for ptest
22PACKAGECONFIG[tests] = " \ 21PACKAGECONFIG[tests] = " \