summaryrefslogtreecommitdiff
path: root/mesh/mesh.c
diff options
context:
space:
mode:
authorBrian Gix <brian.gix@intel.com>2022-09-22 15:31:02 -0700
committerBrian Gix <brian.gix@intel.com>2022-09-26 13:14:47 -0700
commit9966cb8b6999a5f54fc13acbd7e1526512a84342 (patch)
tree340ca4b754716a30e8fb29a07423e31c8f704864 /mesh/mesh.c
parent491be481a91c39d31f7908da8a2beea60237646e (diff)
downloadbluez-9966cb8b6999a5f54fc13acbd7e1526512a84342.tar.gz
mesh: Add new kernel MGMT based IO transport
1. Re-structures MGMT handling such that it is used to detect kernel support of the mesh MGMT opcodes and events before selecting between using MGMT or the legacy raw HCI socket method. 2. Re-structures main() to allow command line to prefer MGMT over HCI or visa versa, plus optionally pass an explicte controller. 3. Adds mesh-io-mgmt as a transport.
Diffstat (limited to 'mesh/mesh.c')
-rw-r--r--mesh/mesh.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/mesh/mesh.c b/mesh/mesh.c
index 62d650328..91cf25175 100644
--- a/mesh/mesh.c
+++ b/mesh/mesh.c
@@ -324,11 +324,15 @@ static void free_pending_join_call(bool failed)
join_pending = NULL;
}
-void mesh_cleanup(void)
+void mesh_cleanup(bool signaled)
{
struct l_dbus_message *reply;
mesh_io_destroy(mesh.io);
+ mesh.io = NULL;
+
+ if (signaled)
+ return;
if (join_pending) {