This set of patches addresses the situation when an application calls Leave() or Attach() methods on a node that has another incomplete method call on Network interface associated with it. The simple solution is to return error in response to Leave() method if an application still owes the daemon either a reply to GetManagedObjects request in case of Attach() or a reply to JoinComplete() in case of Join(), Create() or Import() Similarly, a "Busy" error is returned in response to Attach() method if an application still owes the daemon a reply to JoinComplete() in case of pending Join(), Create() or Import() Inga Stotland (4): mesh: Make "Busy" and "InProgress" to be distinct errors mesh: Add destroy callback to dbus_send_with_timeout() mesh: Add timeout to a get managed objects call mesh: Add "node is busy" check for Leave() & Attach() doc/mesh-api.txt | 5 +++- mesh/dbus.c | 14 ++++++++--- mesh/dbus.h | 1 + mesh/error.h | 1 + mesh/manager.c | 11 ++++----- mesh/mesh.c | 22 +++++++++++------ mesh/node.c | 64 +++++++++++++++++++++++++++++++----------------- mesh/node.h | 1 + test/test-mesh | 2 -- 9 files changed, 78 insertions(+), 43 deletions(-) -- 2.26.2