[BlueZ 3/4] adapter: Fix const'ness of struct btd_adapter_driver

From
Bastien Nocera <hadess@hadess.net>
Date
2026-01-19 14:12:49
Reply to
Bastien Nocera, 2026-01-19
When registering or deregistering an adapter driver, the struct that
holds the function pointers to the various callbacks doesn't need to be
modified, so make it const.
---
 src/adapter.c | 12 ++++++------
 src/adapter.h |  4 ++--
 2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/src/adapter.c b/src/adapter.c
index 3bbee2e36810..1eaadc4f89bb 100644
--- a/src/adapter.c
+++ b/src/adapter.c
@@ -7696,7 +7696,7 @@ static void adapter_stop(struct btd_adapter *adapter)
 	DBG("adapter %s has been disabled", adapter->path);
 }
 
-int btd_register_adapter_driver(struct btd_adapter_driver *driver)
+int btd_register_adapter_driver(const struct btd_adapter_driver *driver)
 {
 	if (driver->experimental && !(g_dbus_get_flags() &
 					G_DBUS_FLAG_ENABLE_EXPERIMENTAL)) {
@@ -7704,12 +7704,12 @@ int btd_register_adapter_driver(struct btd_adapter_driver *driver)
 		return -ENOTSUP;
 	}
 
-	adapter_drivers = g_slist_append(adapter_drivers, driver);
+	adapter_drivers = g_slist_append(adapter_drivers, (void *) driver);
 
 	if (driver->probe == NULL)
 		return 0;
 
-	adapter_foreach(probe_driver, driver);
+	adapter_foreach(probe_driver, (void *) driver);
 
 	return 0;
 }
@@ -7724,11 +7724,11 @@ static void unload_driver(struct btd_adapter *adapter, gpointer data)
 	adapter->drivers = g_slist_remove(adapter->drivers, data);
 }
 
-void btd_unregister_adapter_driver(struct btd_adapter_driver *driver)
+void btd_unregister_adapter_driver(const struct btd_adapter_driver *driver)
 {
-	adapter_drivers = g_slist_remove(adapter_drivers, driver);
+	adapter_drivers = g_slist_remove(adapter_drivers, (void *) driver);
 
-	adapter_foreach(unload_driver, driver);
+	adapter_foreach(unload_driver, (void *) driver);
 }
 
 static void agent_auth_cb(struct agent *agent, DBusError *derr,
diff --git a/src/adapter.h b/src/adapter.h
index e562b1bcd4da..09d08f9d5b6f 100644
--- a/src/adapter.h
+++ b/src/adapter.h
@@ -139,8 +139,8 @@ typedef void (*service_auth_cb) (DBusError *derr, void *user_data);
 
 void adapter_add_profile(struct btd_adapter *adapter, gpointer p);
 void adapter_remove_profile(struct btd_adapter *adapter, gpointer p);
-int btd_register_adapter_driver(struct btd_adapter_driver *driver);
-void btd_unregister_adapter_driver(struct btd_adapter_driver *driver);
+int btd_register_adapter_driver(const struct btd_adapter_driver *driver);
+void btd_unregister_adapter_driver(const struct btd_adapter_driver *driver);
 guint btd_request_authorization(const bdaddr_t *src, const bdaddr_t *dst,
 		const char *uuid, service_auth_cb cb, void *user_data);
 guint btd_request_authorization_cable_configured(const bdaddr_t *src, const bdaddr_t *dst,
-- 
2.52.0
Thread (7 messages) 7 messages, 3 authors, last reply 2026-01-20
Keyboard shortcuts
hback out one level
jnext message in thread / next series-diff position
kprevious message in thread / previous series-diff position
ldrill in
Escclose help / fold thread tree
?toggle this help