Parent: 4a1bea28b15b4ab9b9c962597162cb4070587763
Author: MichaĆ Lowas-Rzechonek <michal.lowas-rzechonek@silvair.com>
Committer: Brian Gix <brian.gix@intel.com>
Date: 2019-12-18 17:46:16
Tree: 776e1d5390908d3aef8583deed18921738f49abe
mesh: Fix getting managed objects from ObjectManager D-Bus spec mandates that GetManagedObjects method of org.freedesktop.DBus.ObjectManager interface returns *children* only: https://dbus.freedesktop.org/doc/dbus-specification.html > All returned object paths are children of the object path implementing > this interface, i.e. their object paths start with the ObjectManager's > object path plus '/' Both test scripts and ELL abuse this by returning application interfaces via ObjectManager attached to the same path, but other D-Bus implementations do not, making Attach() fail because mandatory interfaces cannot be found. This patch fixes the issue by scanning hierarchy returned by GetManagedObjects for object implementing org.bluez.mesh.Application1 interface and keeping that as node's app_path.
Diffstat
| M | doc/mesh-api.txt | | | 52 | ++++++++++++++++++++++++++++- - - - - - - - - - - - - - - - - - - - - - - - |
| M | mesh/node.c | | | 22 | +++++++++++++- - - - - - - - - |
| M | mesh/node.h | | | 8 | ++++- - - - |
3 files changed, 45 insertions(+), 37 deletions(-)