* [bluez/bluez] 48278c: adapter: Fix crash on UUID discovery filter match
@ 2026-07-09 14:03 Tom Catshoek
0 siblings, 0 replies; only message in thread
From: Tom Catshoek @ 2026-07-09 14:03 UTC (permalink / raw)
To: linux-bluetooth
Branch: refs/heads/1124682
Home: https://github.com/bluez/bluez
Commit: 48278c8a0ecf28a2c51f091dc86cc350457125b6
https://github.com/bluez/bluez/commit/48278c8a0ecf28a2c51f091dc86cc350457125b6
Author: Tom Catshoek <tomcatshoek@zeelandnet.nl>
Date: 2026-07-09 (Thu, 09 Jul 2026)
Changed paths:
M src/adapter.c
Log Message:
-----------
adapter: Fix crash on UUID discovery filter match
is_filter_match() looks up each discovery-filter UUID in the queue of
services parsed from a device advertisement. When that services list was
migrated from a GSList to a struct queue, the queue_find() call kept
GLib's g_slist_find_custom() argument order, passing the UUID string
where queue_find() expects a match function and the comparison function
where it expects the match data.
As a result queue_find() calls the UUID string as if it were a function,
jumping into non-executable heap and crashing bluetoothd with SIGSEGV as
soon as an advertisement matches a UUID filter configured via
SetDiscoveryFilter.
Add a queue_match_func_t helper and pass the arguments in the correct
order.
Fixes: https://github.com/bluez/bluez/issues/2282
To unsubscribe from these emails, change your notification settings at https://github.com/bluez/bluez/settings/notifications
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-07-09 14:03 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-09 14:03 [bluez/bluez] 48278c: adapter: Fix crash on UUID discovery filter match Tom Catshoek
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox