This patch set (I apologize for its size, but this cannot be helped) implements support for the newly published Mesh Configuration Database Profile. The changes are mostly contained to tools/mesh-cfgclient.c and tools/mesh subdirectory. The only exception is the introduction of a new D-Bus mesh API method ExportKeys() on org.bluez.mesh.Management1 interface. The new functionality allows to export a snapshot of mesh state from the point of view of mesh provisioner/configuration manager in a standard format that can be used for to transferring the "ownership" of the mesh configuration to another provisioner/configuration manager. The changes break backwards compatibility with for the previous versions of config-db.json that were generated when using mesh-cfgclient tool. This can be amended by manually correcting the field names and property values. Inga Stotland (20): tools/mesh-cfgclient: Save provisioner info tools/mesh-cfgclient: Add timestamp to config database tools/mesh-cfgclient: Update stored NetKey and AppKey tools/mesh-cfgclient: Keep track of updated keys tools/mesh: Add new info to stored remote nodes tools/mesh-cfgclient: Overwrite config values when adding new ones tools/mesh-cfgclient: Store remote node's model bindings tools/mesh-cfgclient: Store remote node's model subs tools/mesh-cfgclient: Disallow model commands w/o composition tools/mesh-cfgclient: Store remote's model publication info tools/mesh-cfgclient: Check the result of config save tools/mesh-cfgclient: Rename mesh-db APIs for consistency tools/mesh-cfgclient: Save remote node feature setting tools/mesh-cfgclient: Store remote's heartbeat sub/pub tools/mesh-cfgclient: Add group parent address for DB compliance doc/mesh-api: Add ExportKeys call mesh: Implement ExportKeys() method tools/mesh-cfgclient: Store UUIDs in standard format tools/mesh-cfgclient: Excluded addresses property tools/mesh-cfgclient: Export configuration database doc/mesh-api.txt | 56 ++ mesh/keyring.c | 286 ++++++++- mesh/keyring.h | 2 + mesh/manager.c | 35 ++ tools/mesh-cfgclient.c | 212 ++++++- tools/mesh/cfgcli.c | 284 ++++++--- tools/mesh/keys.c | 4 +- tools/mesh/mesh-db.c | 1260 +++++++++++++++++++++++++++++++++++++--- tools/mesh/mesh-db.h | 66 ++- tools/mesh/model.h | 13 +- tools/mesh/remote.c | 205 +++++-- tools/mesh/remote.h | 11 +- 12 files changed, 2206 insertions(+), 228 deletions(-) -- 2.31.1