diff options
author | Beniamino Galvani <bgalvani@redhat.com> | 2016-09-09 15:17:28 +0200 |
---|---|---|
committer | Beniamino Galvani <bgalvani@redhat.com> | 2016-09-26 15:10:39 +0200 |
commit | 1a6e3e0a57d682609d7148786ea3384552f04a84 (patch) | |
tree | a43f316b71fbc5e40d9bbaebcdfd8108d74d4e63 | |
parent | 5b8c092d6be5251695fb59ff0821ab0161438966 (diff) | |
download | NetworkManager-1a6e3e0a57d682609d7148786ea3384552f04a84.tar.gz |
manager: add nm_manager_get_device_paths()
-rw-r--r-- | src/nm-manager.c | 22 | ||||
-rw-r--r-- | src/nm-manager.h | 1 |
2 files changed, 23 insertions, 0 deletions
diff --git a/src/nm-manager.c b/src/nm-manager.c index dfbe10c049..8967031ea2 100644 --- a/src/nm-manager.c +++ b/src/nm-manager.c @@ -2288,6 +2288,28 @@ nm_manager_get_devices (NMManager *manager) return NM_MANAGER_GET_PRIVATE (manager)->devices; } +const char ** +nm_manager_get_device_paths (NMManager *self) +{ + const GSList *devices, *iter; + GPtrArray *paths; + const char *path; + + g_return_val_if_fail (NM_IS_MANAGER (self), NULL); + devices = NM_MANAGER_GET_PRIVATE (self)->devices; + paths = g_ptr_array_new (); + + for (iter = devices; iter; iter = g_slist_next (iter)) { + path = nm_exported_object_get_path (NM_EXPORTED_OBJECT (iter->data)); + if (path) + g_ptr_array_add (paths, (gpointer) path); + } + + g_ptr_array_add (paths, NULL); + + return (const char **) g_ptr_array_free (paths, FALSE); +} + static NMDevice * nm_manager_get_connection_device (NMManager *self, NMConnection *connection) diff --git a/src/nm-manager.h b/src/nm-manager.h index fb97951ce3..9e0b4e3e79 100644 --- a/src/nm-manager.h +++ b/src/nm-manager.h @@ -91,6 +91,7 @@ void nm_manager_write_device_state (NMManager *manager); /* Device handling */ const GSList * nm_manager_get_devices (NMManager *manager); +const char ** nm_manager_get_device_paths (NMManager *self); NMDevice * nm_manager_get_device_by_ifindex (NMManager *manager, int ifindex); |