summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntonio Cardace <anto.cardace@gmail.com>2019-10-27 14:31:09 +0100
committerThomas Haller <thaller@redhat.com>2019-11-06 21:08:23 +0100
commit303fc1745093c2580293af335c1e1145268baf44 (patch)
tree73bb4c4d9e193ce951bb89f8b4b6bfea657a5206
parente2dac63de6a6ce784f1308608b695bd91a1d91ab (diff)
downloadNetworkManager-303fc1745093c2580293af335c1e1145268baf44.tar.gz
nmcli: show IP interface name when doing 'nmcli connection show <PROFILE>'
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/issues/218 https://gitlab.freedesktop.org/NetworkManager/NetworkManager/merge_requests/322
-rw-r--r--clients/cli/connections.c11
-rw-r--r--clients/cli/utils.h1
2 files changed, 10 insertions, 2 deletions
diff --git a/clients/cli/connections.c b/clients/cli/connections.c
index e6fa24ece1..3297d0af62 100644
--- a/clients/cli/connections.c
+++ b/clients/cli/connections.c
@@ -643,6 +643,7 @@ _metagen_con_active_general_get_fcn (NMC_META_GENERIC_INFO_GET_FCN_ARGS)
case NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_UUID:
return nm_active_connection_get_uuid (ac);
case NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_DEVICES:
+ case NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_IP_IFACE:
{
GString *str = NULL;
const GPtrArray *devices;
@@ -651,10 +652,15 @@ _metagen_con_active_general_get_fcn (NMC_META_GENERIC_INFO_GET_FCN_ARGS)
devices = nm_active_connection_get_devices (ac);
if (devices) {
for (i = 0; i < devices->len; i++) {
- NMDevice *device = devices->pdata[i];
+ NMDevice *device = g_ptr_array_index (devices, i);
const char *iface;
- iface = nm_device_get_iface (device);
+ if (info->info_type == NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_DEVICES) {
+ iface = nm_device_get_iface (device);
+ } else {
+ iface = nm_device_get_ip_iface (device);
+ }
+
if (!iface)
continue;
if (!s) {
@@ -706,6 +712,7 @@ const NmcMetaGenericInfo *const metagen_con_active_general[_NMC_GENERIC_INFO_TYP
_METAGEN_CON_ACTIVE_GENERAL (NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_NAME, "NAME"),
_METAGEN_CON_ACTIVE_GENERAL (NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_UUID, "UUID"),
_METAGEN_CON_ACTIVE_GENERAL (NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_DEVICES, "DEVICES"),
+ _METAGEN_CON_ACTIVE_GENERAL (NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_IP_IFACE, "IP-IFACE"),
_METAGEN_CON_ACTIVE_GENERAL (NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_STATE, "STATE"),
_METAGEN_CON_ACTIVE_GENERAL (NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_DEFAULT, "DEFAULT"),
_METAGEN_CON_ACTIVE_GENERAL (NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_DEFAULT6, "DEFAULT6"),
diff --git a/clients/cli/utils.h b/clients/cli/utils.h
index a064133112..000091939e 100644
--- a/clients/cli/utils.h
+++ b/clients/cli/utils.h
@@ -130,6 +130,7 @@ typedef enum {
NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_NAME = 0,
NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_UUID,
NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_DEVICES,
+ NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_IP_IFACE,
NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_STATE,
NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_DEFAULT,
NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_DEFAULT6,