poky/meta/recipes-connectivity/connman/connman/0001-connman-vpn-avoid-hiding-implementation-reserved-sym.patch
Peter Tatrai 68b64fda69 connman: avoid hiding implementation-reserved symbols in version scripts
This commit adds a patch to ConnMan that modifies the version scripts
(src/connman.ver and vpn/vpn.ver) to avoid hiding implementation-reserved
symbols (such as _IO_stdin_used). Previously, using 'local: *;' in the
version script caused glibc's libio to misdetect the libc version,
resulting in a crash when printing to stdout (e.g., running 'connmand
--help') on PowerPC.

The new patch changes 'local: *;' to 'local: [!_]*;', following the
recommendation in glibc bug 17908
(https://sourceware.org/bugzilla/show_bug.cgi?id=17908). This ensures
that symbols starting with an underscore are not hidden, allowing libio
to correctly detect the libc version and preventing the crash.

(From OE-Core rev: fb2e29fc6931dc03ec892908e8e22d869d992f76)

Signed-off-by: Peter Tatrai <peter.tatrai.ext@siemens.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-09-11 11:31:56 +01:00

51 lines
1.5 KiB
Diff
Executable File

From eac489c872c775c88bbd85b4cec6c1d47ad9e6a6 Mon Sep 17 00:00:00 2001
From: Peter Tatrai <peter.tatrai.ext@siemens.com>
Date: Sun, 7 Sep 2025 09:25:20 +0200
Subject: [PATCH] connman, vpn: avoid hiding implementation-reserved symbols
When using 'local: *;' in the version script, all symbols, including those
reserved for the implementation (such as _IO_stdin_used), are hidden. This
causes glibc's libio to misdetect the libc version, leading to a crash when
glibc prints to stdout (e.g., with connmand --help) on PowerPC.
Change 'local: *;' to 'local: [!_]*;' to avoid hiding symbols starting with an
underscore, as recommended in glibc bug 17908
(https://sourceware.org/bugzilla/show_bug.cgi?id=17908). This ensures libio can
correctly detect the libc version and prevents the crash.
Reference: https://sourceware.org/bugzilla/show_bug.cgi?id=17908
Upstream-Status: Submitted [https://lore.kernel.org/connman/20250907081844.1558-1-peter.tatrai.ext@siemens.com/]
Signed-off-by: Peter Tatrai <peter.tatrai.ext@siemens.com>
---
src/connman.ver | 2 +-
vpn/vpn.ver | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/connman.ver b/src/connman.ver
index 03a0eec..b75e90d 100644
--- a/src/connman.ver
+++ b/src/connman.ver
@@ -3,5 +3,5 @@
connman_*;
g_dbus_*;
local:
- *;
+ [!_]*;
};
diff --git a/vpn/vpn.ver b/vpn/vpn.ver
index b887706..5cad344 100644
--- a/vpn/vpn.ver
+++ b/vpn/vpn.ver
@@ -4,5 +4,5 @@
vpn_*;
g_dbus_*;
local:
- *;
+ [!_]*;
};
--
2.47.2