summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLubomir Rintel <lkundrak@v3.sk>2018-06-11 15:43:25 +0200
committerLubomir Rintel <lkundrak@v3.sk>2018-06-11 15:43:25 +0200
commitd3ae93cc0312fae17d4de81950a908112eaba0ca (patch)
tree8ddb7a1396b992e3af431f2f1f20b61ab1502d90
parentf3c63ca4b1fd67af884fd586e6b990852f57e166 (diff)
parent28d2c07661f6e8c4305a5a7f66db346b09a607e2 (diff)
downloadNetworkManager-d3ae93cc0312fae17d4de81950a908112eaba0ca.tar.gz
merge: branch 'lr/alternatives'
https://github.com/NetworkManager/NetworkManager/pull/114
-rw-r--r--Makefile.am5
-rw-r--r--clients/cli/common.c18
-rw-r--r--clients/cli/connections.c36
-rw-r--r--clients/cli/utils.h1
-rw-r--r--clients/tests/test-client.check-on-disk/test_003-007.expected10
-rw-r--r--clients/tests/test-client.check-on-disk/test_003-008.expected10
-rw-r--r--clients/tests/test-client.check-on-disk/test_003-009.expected3
-rw-r--r--clients/tests/test-client.check-on-disk/test_003-010.expected3
-rw-r--r--clients/tests/test-client.check-on-disk/test_003-014.expected10
-rw-r--r--clients/tests/test-client.check-on-disk/test_003-015.expected10
-rw-r--r--clients/tests/test-client.check-on-disk/test_003-016.expected6
-rw-r--r--clients/tests/test-client.check-on-disk/test_003-017.expected6
-rw-r--r--clients/tests/test-client.check-on-disk/test_003-037.expected12
-rw-r--r--clients/tests/test-client.check-on-disk/test_003-038.expected12
-rw-r--r--clients/tests/test-client.check-on-disk/test_003-039.expected8
-rw-r--r--clients/tests/test-client.check-on-disk/test_003-040.expected8
-rw-r--r--clients/tests/test-client.check-on-disk/test_003-057.expected12
-rw-r--r--clients/tests/test-client.check-on-disk/test_003-058.expected12
-rw-r--r--clients/tests/test-client.check-on-disk/test_003-079.expected12
-rw-r--r--clients/tests/test-client.check-on-disk/test_003-080.expected12
-rw-r--r--contrib/fedora/rpm/NetworkManager.spec19
-rw-r--r--introspection/org.freedesktop.NetworkManager.Settings.Connection.xml9
-rw-r--r--libnm/libnm.ver1
-rw-r--r--libnm/nm-remote-connection.c37
-rw-r--r--libnm/nm-remote-connection.h4
-rw-r--r--src/settings/nm-settings-connection.c5
-rw-r--r--src/settings/nm-settings-connection.h4
-rw-r--r--src/settings/plugins/ifcfg-rh/nm-ifdown3
-rw-r--r--src/settings/plugins/ifcfg-rh/nm-ifup3
-rwxr-xr-xtools/test-networkmanager-service.py2
30 files changed, 203 insertions, 90 deletions
diff --git a/Makefile.am b/Makefile.am
index 79b046280d..f7bc85aeff 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -19,6 +19,7 @@ noinst_DATA =
sbin_PROGRAMS =
bin_PROGRAMS =
libexec_PROGRAMS =
+dist_libexec_SCRIPTS =
lib_LTLIBRARIES =
plugin_LTLIBRARIES =
core_plugins =
@@ -2201,6 +2202,10 @@ src_settings_plugins_ifcfg_rh_tests_test_ifcfg_rh_LDADD = \
$(src_settings_plugins_ifcfg_rh_tests_test_ifcfg_rh_OBJECTS): $(libnm_core_lib_h_pub_mkenums)
+dist_libexec_SCRIPTS += \
+ src/settings/plugins/ifcfg-rh/nm-ifup \
+ src/settings/plugins/ifcfg-rh/nm-ifdown
+
endif
EXTRA_DIST += \
diff --git a/clients/cli/common.c b/clients/cli/common.c
index e566de47c8..66b6735e7a 100644
--- a/clients/cli/common.c
+++ b/clients/cli/common.c
@@ -384,7 +384,7 @@ print_dhcp_config (NMDhcpConfig *dhcp,
/*
* nmc_find_connection:
* @connections: array of NMConnections to search in
- * @filter_type: "id", "uuid", "path" or %NULL
+ * @filter_type: "id", "uuid", "path", "filename", or %NULL
* @filter_val: connection to find (connection name, UUID or path)
* @out_result: if not NULL, attach all matching connection to this
* list. If necessary, a new array will be allocated. If the array
@@ -452,6 +452,14 @@ nmc_find_connection (const GPtrArray *connections,
goto found;
}
+ if (NM_IN_STRSET (filter_type, NULL, "filename")) {
+ v = nm_remote_connection_get_filename (NM_REMOTE_CONNECTION (connections->pdata[i]));
+ if (complete && (filter_type || *filter_val))
+ nmc_complete_strings (filter_val, v, NULL);
+ if (nm_streq0 (filter_val, v))
+ goto found;
+ }
+
continue;
found:
if (!out_result)
@@ -523,6 +531,14 @@ nmc_find_active_connection (const GPtrArray *active_cons,
goto found;
}
+ if (NM_IN_STRSET (filter_type, NULL, "filename")) {
+ v = nm_remote_connection_get_filename (con);
+ if (complete && (filter_type || *filter_val))
+ nmc_complete_strings (filter_val, v, NULL);
+ if (nm_streq0 (filter_val, v))
+ goto found;
+ }
+
if (NM_IN_STRSET (filter_type, NULL, "apath")) {
v = nm_object_get_path (NM_OBJECT (candidate));
v_num = nm_utils_dbus_path_get_last_component (v);
diff --git a/clients/cli/connections.c b/clients/cli/connections.c
index d47781566d..d101e8d420 100644
--- a/clients/cli/connections.c
+++ b/clients/cli/connections.c
@@ -493,6 +493,10 @@ _metagen_con_show_get_fcn (NMC_META_GENERIC_INFO_GET_FCN_ARGS)
if (!s_con)
return NULL;
return nm_setting_connection_get_slave_type (s_con);
+ case NMC_GENERIC_INFO_TYPE_CON_SHOW_FILENAME:
+ if (!NM_IS_REMOTE_CONNECTION (c))
+ return NULL;
+ return nm_remote_connection_get_filename (NM_REMOTE_CONNECTION (c));
default:
break;
}
@@ -517,6 +521,7 @@ const NmcMetaGenericInfo *const metagen_con_show[_NMC_GENERIC_INFO_TYPE_CON_SHOW
_METAGEN_CON_SHOW (NMC_GENERIC_INFO_TYPE_CON_SHOW_STATE, "STATE"),
_METAGEN_CON_SHOW (NMC_GENERIC_INFO_TYPE_CON_SHOW_ACTIVE_PATH, "ACTIVE-PATH"),
_METAGEN_CON_SHOW (NMC_GENERIC_INFO_TYPE_CON_SHOW_SLAVE, "SLAVE"),
+ _METAGEN_CON_SHOW (NMC_GENERIC_INFO_TYPE_CON_SHOW_FILENAME, "FILENAME"),
};
#define NMC_FIELDS_CON_SHOW_COMMON "NAME,UUID,TYPE,DEVICE"
@@ -1833,9 +1838,9 @@ get_connection (NmCli *nmc,
}
if (*argc == 1 && nmc->complete)
- nmc_complete_strings (**argv, "id", "uuid", "path", NULL);
+ nmc_complete_strings (**argv, "id", "uuid", "path", "filename", NULL);
- if (NM_IN_STRSET (**argv, "id", "uuid", "path")) {
+ if (NM_IN_STRSET (**argv, "id", "uuid", "path", "filename")) {
if (*argc == 1) {
if (!nmc->complete) {
g_set_error (error, NMCLI_ERROR, NMC_RESULT_ERROR_USER_INPUT,
@@ -1976,7 +1981,7 @@ do_connections_show (NmCli *nmc, int argc, char **argv)
char **argv_cp = argv;
do {
- if (NM_IN_STRSET (*argv_cp, "id", "uuid", "path", "apath")) {
+ if (NM_IN_STRSET (*argv_cp, "id", "uuid", "path", "filename", "apath")) {
argc_cp--;
argv_cp++;
}
@@ -1994,9 +1999,9 @@ do_connections_show (NmCli *nmc, int argc, char **argv)
guint i_found_cons;
if (argc == 1 && nmc->complete)
- nmc_complete_strings (*argv, "id", "uuid", "path", "apath", NULL);
+ nmc_complete_strings (*argv, "id", "uuid", "path", "filename", "apath", NULL);
- if (NM_IN_STRSET (*argv, "id", "uuid", "path", "apath")) {
+ if (NM_IN_STRSET (*argv, "id", "uuid", "path", "filename", "apath")) {
selector = *argv;
argc--;
argv++;
@@ -2943,9 +2948,9 @@ do_connection_down (NmCli *nmc, int argc, char **argv)
const char *selector = NULL;
if (arg_num == 1 && nmc->complete)
- nmc_complete_strings (*arg_ptr, "id", "uuid", "path", "apath", NULL);
+ nmc_complete_strings (*arg_ptr, "id", "uuid", "path", "filename", "apath", NULL);
- if (NM_IN_STRSET (*arg_ptr, "id", "uuid", "path", "apath")) {
+ if (NM_IN_STRSET (*arg_ptr, "id", "uuid", "path", "filename", "apath")) {
selector = *arg_ptr;
arg_num--;
arg_ptr++;
@@ -7944,6 +7949,7 @@ do_connection_edit (NmCli *nmc, int argc, char **argv)
const char *con_id = NULL;
const char *con_uuid = NULL;
const char *con_path = NULL;
+ const char *con_filename = NULL;
const char *selector = NULL;
gs_free_error GError *error = NULL;
GError *err1 = NULL;
@@ -7952,11 +7958,12 @@ do_connection_edit (NmCli *nmc, int argc, char **argv)
{ "id", TRUE, &con_id, FALSE },
{ "uuid", TRUE, &con_uuid, FALSE },
{ "path", TRUE, &con_path, FALSE },
+ { "filename", TRUE, &con_filename, FALSE },
{ NULL } };
next_arg (nmc, &argc, &argv, NULL);
if (argc == 1 && nmc->complete)
- nmc_complete_strings (*argv, "type", "con-name", "id", "uuid", "path", NULL);
+ nmc_complete_strings (*argv, "type", "con-name", "id", "uuid", "path", "filename", NULL);
nmc->return_value = NMC_RESULT_SUCCESS;
@@ -7978,20 +7985,23 @@ do_connection_edit (NmCli *nmc, int argc, char **argv)
connections = nm_client_get_connections (nmc->client);
if (!con) {
- if (con_id && !con_uuid && !con_path) {
+ if (con_id && !con_uuid && !con_path && !con_filename) {
con = con_id;
selector = "id";
- } else if (con_uuid && !con_id && !con_path) {
+ } else if (con_uuid && !con_id && !con_path && !con_filename) {
con = con_uuid;
selector = "uuid";
- } else if (con_path && !con_id && !con_uuid) {
+ } else if (con_path && !con_id && !con_uuid && !con_filename) {
con = con_path;
selector = "path";
- } else if (!con_path && !con_id && !con_uuid) {
+ } else if (con_filename && !con_path && !con_id && !con_uuid) {
+ con = con_filename;
+ selector = "filename";
+ } else if (!con_path && !con_id && !con_uuid && !con_filename) {
/* no-op */
} else {
g_string_printf (nmc->return_text,
- _("Error: only one of 'id', uuid, or 'path' can be provided."));
+ _("Error: only one of 'id', 'filename', uuid, or 'path' can be provided."));
NMC_RETURN (nmc, NMC_RESULT_ERROR_USER_INPUT);
}
}
diff --git a/clients/cli/utils.h b/clients/cli/utils.h
index 3122b8808c..19694d111c 100644
--- a/clients/cli/utils.h
+++ b/clients/cli/utils.h
@@ -135,6 +135,7 @@ typedef enum {
NMC_GENERIC_INFO_TYPE_CON_SHOW_STATE,
NMC_GENERIC_INFO_TYPE_CON_SHOW_ACTIVE_PATH,
NMC_GENERIC_INFO_TYPE_CON_SHOW_SLAVE,
+ NMC_GENERIC_INFO_TYPE_CON_SHOW_FILENAME,
_NMC_GENERIC_INFO_TYPE_CON_SHOW_NUM,
NMC_GENERIC_INFO_TYPE_CON_ACTIVE_GENERAL_NAME = 0,
diff --git a/clients/tests/test-client.check-on-disk/test_003-007.expected b/clients/tests/test-client.check-on-disk/test_003-007.expected
index 4f2acde854..f1a8cc4e3d 100644
--- a/clients/tests/test-client.check-on-disk/test_003-007.expected
+++ b/clients/tests/test-client.check-on-disk/test_003-007.expected
@@ -2,12 +2,12 @@ location: clients/tests/test-client.py:721:test_003()/7
cmd: $NMCLI -f ALL c s
lang: C
returncode: 0
-stdout: 912 bytes
+stdout: 1108 bytes
>>>
-NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE
-con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/1 no -- -- -- --
-con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/2 no -- -- -- --
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/3 no -- -- -- --
+NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE FILENAME
+con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/1 no -- -- -- -- /etc/NetworkManager/system-connections/con-1
+con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/2 no -- -- -- -- /etc/NetworkManager/system-connections/con-xx1
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/3 no -- -- -- -- /etc/NetworkManager/system-connections/ethernet
<<<
stderr: 0 bytes
diff --git a/clients/tests/test-client.check-on-disk/test_003-008.expected b/clients/tests/test-client.check-on-disk/test_003-008.expected
index 0567713bb6..1000b4272e 100644
--- a/clients/tests/test-client.check-on-disk/test_003-008.expected
+++ b/clients/tests/test-client.check-on-disk/test_003-008.expected
@@ -2,12 +2,12 @@ location: clients/tests/test-client.py:721:test_003()/8
cmd: $NMCLI -f ALL c s
lang: pl_PL.UTF-8
returncode: 0
-stdout: 912 bytes
+stdout: 1108 bytes
>>>
-NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE
-con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/1 nie -- -- -- --
-con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/2 nie -- -- -- --
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/3 nie -- -- -- --
+NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE FILENAME
+con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/1 nie -- -- -- -- /etc/NetworkManager/system-connections/con-1
+con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/2 nie -- -- -- -- /etc/NetworkManager/system-connections/con-xx1
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/3 nie -- -- -- -- /etc/NetworkManager/system-connections/ethernet
<<<
stderr: 0 bytes
diff --git a/clients/tests/test-client.check-on-disk/test_003-009.expected b/clients/tests/test-client.check-on-disk/test_003-009.expected
index 24612567e6..9adc837d04 100644
--- a/clients/tests/test-client.check-on-disk/test_003-009.expected
+++ b/clients/tests/test-client.check-on-disk/test_003-009.expected
@@ -2,7 +2,7 @@ location: clients/tests/test-client.py:725:test_003()/9
cmd: $NMCLI --complete-args -f ALL c s ''
lang: C
returncode: 0
-stdout: 64 bytes
+stdout: 73 bytes
>>>
--active
@@ -11,6 +11,7 @@ apath
con-1
con-xx1
ethernet
+filename
help
id
path
diff --git a/clients/tests/test-client.check-on-disk/test_003-010.expected b/clients/tests/test-client.check-on-disk/test_003-010.expected
index 66a29b7ec5..69b1e2b7b3 100644
--- a/clients/tests/test-client.check-on-disk/test_003-010.expected
+++ b/clients/tests/test-client.check-on-disk/test_003-010.expected
@@ -2,7 +2,7 @@ location: clients/tests/test-client.py:725:test_003()/10
cmd: $NMCLI --complete-args -f ALL c s ''
lang: pl_PL.UTF-8
returncode: 0
-stdout: 64 bytes
+stdout: 73 bytes
>>>
--active
@@ -11,6 +11,7 @@ apath
con-1
con-xx1
ethernet
+filename
help
id
path
diff --git a/clients/tests/test-client.check-on-disk/test_003-014.expected b/clients/tests/test-client.check-on-disk/test_003-014.expected
index a195e46726..e86eebf438 100644
--- a/clients/tests/test-client.check-on-disk/test_003-014.expected
+++ b/clients/tests/test-client.check-on-disk/test_003-014.expected
@@ -2,12 +2,12 @@ location: clients/tests/test-client.py:744:test_003()/14
cmd: $NMCLI -f ALL con
lang: C
returncode: 0
-stdout: 1084 bytes
+stdout: 1280 bytes
>>>
-NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth0 activated /org/freedesktop/NetworkManager/ActiveConnection/1 --
-con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/1 no -- -- -- --
-con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/2 no -- -- -- --
+NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE FILENAME
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth0 activated /org/freedesktop/NetworkManager/ActiveConnection/1 -- /etc/NetworkManager/system-connections/ethernet
+con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/1 no -- -- -- -- /etc/NetworkManager/system-connections/con-1
+con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/2 no -- -- -- -- /etc/NetworkManager/system-connections/con-xx1
<<<
stderr: 0 bytes
diff --git a/clients/tests/test-client.check-on-disk/test_003-015.expected b/clients/tests/test-client.check-on-disk/test_003-015.expected
index d2f12d7b64..a9e790a209 100644
--- a/clients/tests/test-client.check-on-disk/test_003-015.expected
+++ b/clients/tests/test-client.check-on-disk/test_003-015.expected
@@ -2,12 +2,12 @@ location: clients/tests/test-client.py:744:test_003()/15
cmd: $NMCLI -f ALL con
lang: pl_PL.UTF-8
returncode: 0
-stdout: 1088 bytes
+stdout: 1284 bytes
>>>
-NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth0 aktywowano /org/freedesktop/NetworkManager/ActiveConnection/1 --
-con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/1 nie -- -- -- --
-con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/2 nie -- -- -- --
+NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE FILENAME
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth0 aktywowano /org/freedesktop/NetworkManager/ActiveConnection/1 -- /etc/NetworkManager/system-connections/ethernet
+con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/1 nie -- -- -- -- /etc/NetworkManager/system-connections/con-1
+con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/2 nie -- -- -- -- /etc/NetworkManager/system-connections/con-xx1
<<<
stderr: 0 bytes
diff --git a/clients/tests/test-client.check-on-disk/test_003-016.expected b/clients/tests/test-client.check-on-disk/test_003-016.expected
index 2225c69fd3..c622792a37 100644
--- a/clients/tests/test-client.check-on-disk/test_003-016.expected
+++ b/clients/tests/test-client.check-on-disk/test_003-016.expected
@@ -2,10 +2,10 @@ location: clients/tests/test-client.py:747:test_003()/16
cmd: $NMCLI -f ALL con s -a
lang: C
returncode: 0
-stdout: 542 bytes
+stdout: 640 bytes
>>>
-NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth0 activated /org/freedesktop/NetworkManager/ActiveConnection/1 --
+NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE FILENAME
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth0 activated /org/freedesktop/NetworkManager/ActiveConnection/1 -- /etc/NetworkManager/system-connections/ethernet
<<<
stderr: 0 bytes
diff --git a/clients/tests/test-client.check-on-disk/test_003-017.expected b/clients/tests/test-client.check-on-disk/test_003-017.expected
index 482438d2f9..9f78c5235c 100644
--- a/clients/tests/test-client.check-on-disk/test_003-017.expected
+++ b/clients/tests/test-client.check-on-disk/test_003-017.expected
@@ -2,10 +2,10 @@ location: clients/tests/test-client.py:747:test_003()/17
cmd: $NMCLI -f ALL con s -a
lang: pl_PL.UTF-8
returncode: 0
-stdout: 544 bytes
+stdout: 642 bytes
>>>
-NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth0 aktywowano /org/freedesktop/NetworkManager/ActiveConnection/1 --
+NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE FILENAME
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth0 aktywowano /org/freedesktop/NetworkManager/ActiveConnection/1 -- /etc/NetworkManager/system-connections/ethernet
<<<
stderr: 0 bytes
diff --git a/clients/tests/test-client.check-on-disk/test_003-037.expected b/clients/tests/test-client.check-on-disk/test_003-037.expected
index db933ad07d..87bf8e3ce4 100644
--- a/clients/tests/test-client.check-on-disk/test_003-037.expected
+++ b/clients/tests/test-client.check-on-disk/test_003-037.expected
@@ -2,13 +2,13 @@ location: clients/tests/test-client.py:744:test_003()/37
cmd: $NMCLI -f ALL con
lang: C
returncode: 0
-stdout: 1355 bytes
+stdout: 1600 bytes
>>>
-NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth0 activated /org/freedesktop/NetworkManager/ActiveConnection/1 --
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth1 activated /org/freedesktop/NetworkManager/ActiveConnection/2 --
-con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/1 no -- -- -- --
-con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/2 no -- -- -- --
+NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE FILENAME
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth0 activated /org/freedesktop/NetworkManager/ActiveConnection/1 -- /etc/NetworkManager/system-connections/ethernet
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth1 activated /org/freedesktop/NetworkManager/ActiveConnection/2 -- /etc/NetworkManager/system-connections/ethernet
+con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/1 no -- -- -- -- /etc/NetworkManager/system-connections/con-1
+con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/2 no -- -- -- -- /etc/NetworkManager/system-connections/con-xx1
<<<
stderr: 0 bytes
diff --git a/clients/tests/test-client.check-on-disk/test_003-038.expected b/clients/tests/test-client.check-on-disk/test_003-038.expected
index 67e0da301b..5d89806ac9 100644
--- a/clients/tests/test-client.check-on-disk/test_003-038.expected
+++ b/clients/tests/test-client.check-on-disk/test_003-038.expected
@@ -2,13 +2,13 @@ location: clients/tests/test-client.py:744:test_003()/38
cmd: $NMCLI -f ALL con
lang: pl_PL.UTF-8
returncode: 0
-stdout: 1360 bytes
+stdout: 1605 bytes
>>>
-NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth0 aktywowano /org/freedesktop/NetworkManager/ActiveConnection/1 --
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth1 aktywowano /org/freedesktop/NetworkManager/ActiveConnection/2 --
-con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/1 nie -- -- -- --
-con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/2 nie -- -- -- --
+NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE FILENAME
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth0 aktywowano /org/freedesktop/NetworkManager/ActiveConnection/1 -- /etc/NetworkManager/system-connections/ethernet
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth1 aktywowano /org/freedesktop/NetworkManager/ActiveConnection/2 -- /etc/NetworkManager/system-connections/ethernet
+con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/1 nie -- -- -- -- /etc/NetworkManager/system-connections/con-1
+con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/2 nie -- -- -- -- /etc/NetworkManager/system-connections/con-xx1
<<<
stderr: 0 bytes
diff --git a/clients/tests/test-client.check-on-disk/test_003-039.expected b/clients/tests/test-client.check-on-disk/test_003-039.expected
index 638a81d280..0425e67826 100644
--- a/clients/tests/test-client.check-on-disk/test_003-039.expected
+++ b/clients/tests/test-client.check-on-disk/test_003-039.expected
@@ -2,11 +2,11 @@ location: clients/tests/test-client.py:747:test_003()/39
cmd: $NMCLI -f ALL con s -a
lang: C
returncode: 0
-stdout: 813 bytes
+stdout: 960 bytes
>>>
-NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth0 activated /org/freedesktop/NetworkManager/ActiveConnection/1 --
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth1 activated /org/freedesktop/NetworkManager/ActiveConnection/2 --
+NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE FILENAME
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth0 activated /org/freedesktop/NetworkManager/ActiveConnection/1 -- /etc/NetworkManager/system-connections/ethernet
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth1 activated /org/freedesktop/NetworkManager/ActiveConnection/2 -- /etc/NetworkManager/system-connections/ethernet
<<<
stderr: 0 bytes
diff --git a/clients/tests/test-client.check-on-disk/test_003-040.expected b/clients/tests/test-client.check-on-disk/test_003-040.expected
index f17c04678c..1822c0bd6c 100644
--- a/clients/tests/test-client.check-on-disk/test_003-040.expected
+++ b/clients/tests/test-client.check-on-disk/test_003-040.expected
@@ -2,11 +2,11 @@ location: clients/tests/test-client.py:747:test_003()/40
cmd: $NMCLI -f ALL con s -a
lang: pl_PL.UTF-8
returncode: 0
-stdout: 816 bytes
+stdout: 963 bytes
>>>
-NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth0 aktywowano /org/freedesktop/NetworkManager/ActiveConnection/1 --
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth1 aktywowano /org/freedesktop/NetworkManager/ActiveConnection/2 --
+NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE FILENAME
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth0 aktywowano /org/freedesktop/NetworkManager/ActiveConnection/1 -- /etc/NetworkManager/system-connections/ethernet
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth1 aktywowano /org/freedesktop/NetworkManager/ActiveConnection/2 -- /etc/NetworkManager/system-connections/ethernet
<<<
stderr: 0 bytes
diff --git a/clients/tests/test-client.check-on-disk/test_003-057.expected b/clients/tests/test-client.check-on-disk/test_003-057.expected
index f5d5a595a9..dfbd2cfc0c 100644
--- a/clients/tests/test-client.check-on-disk/test_003-057.expected
+++ b/clients/tests/test-client.check-on-disk/test_003-057.expected
@@ -2,13 +2,13 @@ location: clients/tests/test-client.py:785:test_003()/57
cmd: $NMCLI -f ALL con
lang: C
returncode: 0
-stdout: 1370 bytes
+stdout: 1615 bytes
>>>
-NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth1 activated /org/freedesktop/NetworkManager/ActiveConnection/2 --
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth0 deactivating /org/freedesktop/NetworkManager/ActiveConnection/1 --
-con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/1 no -- -- -- --
-con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/2 no -- -- -- --
+NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE FILENAME
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth1 activated /org/freedesktop/NetworkManager/ActiveConnection/2 -- /etc/NetworkManager/system-connections/ethernet
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth0 deactivating /org/freedesktop/NetworkManager/ActiveConnection/1 -- /etc/NetworkManager/system-connections/ethernet
+con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/1 no -- -- -- -- /etc/NetworkManager/system-connections/con-1
+con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/2 no -- -- -- -- /etc/NetworkManager/system-connections/con-xx1
<<<
stderr: 0 bytes
diff --git a/clients/tests/test-client.check-on-disk/test_003-058.expected b/clients/tests/test-client.check-on-disk/test_003-058.expected
index 35899e35b7..04ba3a819e 100644
--- a/clients/tests/test-client.check-on-disk/test_003-058.expected
+++ b/clients/tests/test-client.check-on-disk/test_003-058.expected
@@ -2,13 +2,13 @@ location: clients/tests/test-client.py:785:test_003()/58
cmd: $NMCLI -f ALL con
lang: pl_PL.UTF-8
returncode: 0
-stdout: 1380 bytes
+stdout: 1625 bytes
>>>
-NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth1 aktywowano /org/freedesktop/NetworkManager/ActiveConnection/2 --
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth0 dezaktywowanie /org/freedesktop/NetworkManager/ActiveConnection/1 --
-con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/1 nie -- -- -- --
-con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/2 nie -- -- -- --
+NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE FILENAME
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth1 aktywowano /org/freedesktop/NetworkManager/ActiveConnection/2 -- /etc/NetworkManager/system-connections/ethernet
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth0 dezaktywowanie /org/freedesktop/NetworkManager/ActiveConnection/1 -- /etc/NetworkManager/system-connections/ethernet
+con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/1 nie -- -- -- -- /etc/NetworkManager/system-connections/con-1
+con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/2 nie -- -- -- -- /etc/NetworkManager/system-connections/con-xx1
<<<
stderr: 0 bytes
diff --git a/clients/tests/test-client.check-on-disk/test_003-079.expected b/clients/tests/test-client.check-on-disk/test_003-079.expected
index 92c9cf319e..18c6e1e8b3 100644
--- a/clients/tests/test-client.check-on-disk/test_003-079.expected
+++ b/clients/tests/test-client.check-on-disk/test_003-079.expected
@@ -2,13 +2,13 @@ location: clients/tests/test-client.py:785:test_003()/79
cmd: $NMCLI -f ALL con
lang: C
returncode: 0
-stdout: 1370 bytes
+stdout: 1615 bytes
>>>
-NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet -- -- -- -- -- /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth1 activated /org/freedesktop/NetworkManager/ActiveConnection/2 --
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet -- -- -- -- -- /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth0 deactivating /org/freedesktop/NetworkManager/ActiveConnection/1 --
-con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/1 no -- -- -- --
-con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/2 no -- -- -- --
+NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE FILENAME
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet -- -- -- -- -- /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth1 activated /org/freedesktop/NetworkManager/ActiveConnection/2 -- /etc/NetworkManager/system-connections/ethernet
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet -- -- -- -- -- /org/freedesktop/NetworkManager/Settings/Connection/3 yes eth0 deactivating /org/freedesktop/NetworkManager/ActiveConnection/1 -- /etc/NetworkManager/system-connections/ethernet
+con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/1 no -- -- -- -- /etc/NetworkManager/system-connections/con-1
+con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 never yes 0 no /org/freedesktop/NetworkManager/Settings/Connection/2 no -- -- -- -- /etc/NetworkManager/system-connections/con-xx1
<<<
stderr: 0 bytes
diff --git a/clients/tests/test-client.check-on-disk/test_003-080.expected b/clients/tests/test-client.check-on-disk/test_003-080.expected
index 880d552e96..82fc06dc9d 100644
--- a/clients/tests/test-client.check-on-disk/test_003-080.expected
+++ b/clients/tests/test-client.check-on-disk/test_003-080.expected
@@ -2,13 +2,13 @@ location: clients/tests/test-client.py:785:test_003()/80
cmd: $NMCLI -f ALL con
lang: pl_PL.UTF-8
returncode: 0
-stdout: 1380 bytes
+stdout: 1625 bytes
>>>
-NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet -- -- -- -- -- /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth1 aktywowano /org/freedesktop/NetworkManager/ActiveConnection/2 --
-ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet -- -- -- -- -- /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth0 dezaktywowanie /org/freedesktop/NetworkManager/ActiveConnection/1 --
-con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/1 nie -- -- -- --
-con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/2 nie -- -- -- --
+NAME UUID TYPE TIMESTAMP TIMESTAMP-REAL AUTOCONNECT AUTOCONNECT-PRIORITY READONLY DBUS-PATH ACTIVE DEVICE STATE ACTIVE-PATH SLAVE FILENAME
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet -- -- -- -- -- /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth1 aktywowano /org/freedesktop/NetworkManager/ActiveConnection/2 -- /etc/NetworkManager/system-connections/ethernet
+ethernet UUID-ethernet-REPLACED-REPLACED-REPL ethernet -- -- -- -- -- /org/freedesktop/NetworkManager/Settings/Connection/3 tak eth0 dezaktywowanie /org/freedesktop/NetworkManager/ActiveConnection/1 -- /etc/NetworkManager/system-connections/ethernet
+con-1 5fcfd6d7-1e63-3332-8826-a7eda103792d ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/1 nie -- -- -- -- /etc/NetworkManager/system-connections/con-1
+con-xx1 UUID-con-xx1-REPLACED-REPLACED-REPLA ethernet 0 nigdy tak 0 nie /org/freedesktop/NetworkManager/Settings/Connection/2 nie -- -- -- -- /etc/NetworkManager/system-connections/con-xx1
<<<
stderr: 0 bytes
diff --git a/contrib/fedora/rpm/NetworkManager.spec b/contrib/fedora/rpm/NetworkManager.spec
index c6f265c217..7289bc4fc2 100644
--- a/contrib/fedora/rpm/NetworkManager.spec
+++ b/contrib/fedora/rpm/NetworkManager.spec
@@ -116,7 +116,9 @@ Source3: 20-connectivity-fedora.conf
#Patch1: 0001-some.patch
Requires(post): systemd
+Requires(post): /sbin/update-alternatives
Requires(preun): systemd
+Requires(preun): /sbin/update-alternatives
Requires(postun): systemd
Requires: dbus >= %{dbus_version}
@@ -565,6 +567,8 @@ mkdir -p %{buildroot}%{_prefix}/src/debug/NetworkManager-%{real_version}
cp valgrind.suppressions %{buildroot}%{_prefix}/src/debug/NetworkManager-%{real_version}
%endif
+touch %{buildroot}%{_sbindir}/ifup %{buildroot}%{_sbindir}/ifdown
+
%check
%if %{with test}
@@ -588,6 +592,15 @@ fi
%systemd_post NetworkManager.service NetworkManager-wait-online.service NetworkManager-dispatcher.service
+%triggerin -- initscripts
+if [ -f %{_sbindir}/ifup -a ! -L %{_sbindir}/ifup ]; then
+ # initscripts package too old, won't let us set an alternative
+ /usr/sbin/update-alternatives --remove ifup %{_libexecdir}/nm-ifup >/dev/null 2>&1 || :
+else
+ /usr/sbin/update-alternatives --install %{_sbindir}/ifup ifup %{_libexecdir}/nm-ifup 50 \
+ --slave %{_sbindir}/ifdown ifdown %{_libexecdir}/nm-ifdown
+fi
+
%preun
if [ $1 -eq 0 ]; then
# Package removal, not upgrade
@@ -595,6 +608,8 @@ if [ $1 -eq 0 ]; then
# Don't kill networking entirely just on package remove
#/bin/systemctl stop NetworkManager.service >/dev/null 2>&1 || :
+
+ /usr/sbin/update-alternatives --remove ifup %{_libexecdir}/nm-ifup >/dev/null 2>&1 || :
fi
%systemd_preun NetworkManager-wait-online.service NetworkManager-dispatcher.service
@@ -628,6 +643,10 @@ fi
%dir %{_sysconfdir}/%{name}/dnsmasq-shared.d
%config(noreplace) %{_sysconfdir}/%{name}/NetworkManager.conf
%{_bindir}/nm-online
+%{_libexecdir}/nm-ifup
+%ghost %{_sbindir}/ifup
+%{_libexecdir}/nm-ifdown
+%ghost %{_sbindir}/ifdown
%{_libexecdir}/nm-dhcp-helper
%{_libexecdir}/nm-dispatcher
%{_libexecdir}/nm-iface-helper
diff --git a/introspection/org.freedesktop.NetworkManager.Settings.Connection.xml b/introspection/org.freedesktop.NetworkManager.Settings.Connection.xml
index 13f626c339..2cbb6c2ebc 100644
--- a/introspection/org.freedesktop.NetworkManager.Settings.Connection.xml
+++ b/introspection/org.freedesktop.NetworkManager.Settings.Connection.xml
@@ -171,6 +171,15 @@
<property name="Flags" type="u" access="read"/>
<!--
+ Filename:
+
+ File that stores the connection in case the connection is file-backed.
+
+ Since: 1.12
+ -->
+ <property name="Filename" type="s" access="read"/>
+
+ <!--
PropertiesChanged:
@properties: A dictionary mapping property names to variant boxed values.
diff --git a/libnm/libnm.ver b/libnm/libnm.ver
index 8afd01b070..60629ff65c 100644
--- a/libnm/libnm.ver
+++ b/libnm/libnm.ver
@@ -1351,6 +1351,7 @@ global:
nm_connection_get_setting_tc_config;
nm_device_ip_tunnel_get_flags;
nm_ip_tunnel_flags_get_type;
+ nm_remote_connection_get_filename;
nm_remote_connection_get_flags;
nm_setting_connection_get_mdns;
nm_setting_connection_mdns_get_type;
diff --git a/libnm/nm-remote-connection.c b/libnm/nm-remote-connection.c
index bd60c41329..45b804f154 100644
--- a/libnm/nm-remote-connection.c
+++ b/libnm/nm-remote-connection.c
@@ -51,6 +51,7 @@ enum {
PROP_0,
PROP_UNSAVED,
PROP_FLAGS,
+ PROP_FILENAME,
PROP_VISIBLE,
LAST_PROP
@@ -61,6 +62,7 @@ typedef struct {
gboolean unsaved;
guint32 flags;
+ const char *filename;
gboolean visible;
} NMRemoteConnectionPrivate;
@@ -670,6 +672,22 @@ nm_remote_connection_get_flags (NMRemoteConnection *connection)
}
/**
+ * nm_remote_connection_get_filename:
+ * @connection: the #NMRemoteConnection
+ *
+ * Returns: file that stores the connection in case the connection is file-backed.
+ *
+ * Since: 1.12
+ **/
+const char *
+nm_remote_connection_get_filename (NMRemoteConnection *connection)
+{
+ g_return_val_if_fail (NM_IS_REMOTE_CONNECTION (connection), NULL);
+
+ return NM_REMOTE_CONNECTION_GET_PRIVATE (connection)->filename;
+}
+
+/**
* nm_remote_connection_get_visible:
* @connection: the #NMRemoteConnection
*
@@ -760,6 +778,7 @@ init_dbus (NMObject *object)
const NMPropertiesInfo property_info[] = {
{ NM_REMOTE_CONNECTION_UNSAVED, &priv->unsaved },
{ NM_REMOTE_CONNECTION_FLAGS, &priv->flags },
+ { NM_REMOTE_CONNECTION_FILENAME, &priv->filename },
{ NULL },
};
@@ -893,6 +912,9 @@ get_property (GObject *object, guint prop_id,
case PROP_FLAGS:
g_value_set_boolean (value, NM_REMOTE_CONNECTION_GET_PRIVATE (object)->flags);
break;
+ case PROP_FILENAME:
+ g_value_set_string (value, NM_REMOTE_CONNECTION_GET_PRIVATE (object)->filename);
+ break;
case PROP_VISIBLE:
g_value_set_boolean (value, NM_REMOTE_CONNECTION_GET_PRIVATE (object)->visible);
break;
@@ -966,6 +988,21 @@ nm_remote_connection_class_init (NMRemoteConnectionClass *remote_class)
G_PARAM_STATIC_STRINGS));
/**
+ * NMRemoteConnection:filename:
+ *
+ * File that stores the connection in case the connection is
+ * file-backed.
+ *
+ * Since: 1.12
+ **/
+ g_object_class_install_property
+ (object_class, PROP_FILENAME,
+ g_param_spec_string (NM_REMOTE_CONNECTION_FILENAME, "", "",
+ NULL,
+ G_PARAM_READABLE |
+ G_PARAM_STATIC_STRINGS));
+
+ /**
* NMRemoteConnection:visible:
*
* %TRUE if the remote connection is visible to the current user, %FALSE if
diff --git a/libnm/nm-remote-connection.h b/libnm/nm-remote-connection.h
index d5b6a8c4bc..834b52d884 100644
--- a/libnm/nm-remote-connection.h
+++ b/libnm/nm-remote-connection.h
@@ -42,6 +42,7 @@ G_BEGIN_DECLS
#define NM_REMOTE_CONNECTION_PATH "path"
#define NM_REMOTE_CONNECTION_UNSAVED "unsaved"
#define NM_REMOTE_CONNECTION_FLAGS "flags"
+#define NM_REMOTE_CONNECTION_FILENAME "filename"
#define NM_REMOTE_CONNECTION_VISIBLE "visible"
/**
@@ -126,6 +127,9 @@ gboolean nm_remote_connection_get_unsaved (NMRemoteConnection *connection);
NM_AVAILABLE_IN_1_12
NMSettingsConnectionFlags nm_remote_connection_get_flags (NMRemoteConnection *connection);
+NM_AVAILABLE_IN_1_12
+const char *nm_remote_connection_get_filename (NMRemoteConnection *connection);
+
gboolean nm_remote_connection_get_visible (NMRemoteConnection *connection);
G_END_DECLS
diff --git a/src/settings/nm-settings-connection.c b/src/settings/nm-settings-connection.c
index 6526abc76f..50cc14274d 100644
--- a/src/settings/nm-settings-connection.c
+++ b/src/settings/nm-settings-connection.c
@@ -3189,8 +3189,9 @@ static const NMDBusInterfaceInfoExtended interface_info_settings_connection = {
&signal_info_removed,
),
.properties = NM_DEFINE_GDBUS_PROPERTY_INFOS (
- NM_DEFINE_DBUS_PROPERTY_INFO_EXTENDED_READABLE_L ("Unsaved", "b", NM_SETTINGS_CONNECTION_UNSAVED),
- NM_DEFINE_DBUS_PROPERTY_INFO_EXTENDED_READABLE ("Flags", "u", NM_SETTINGS_CONNECTION_FLAGS),
+ NM_DEFINE_DBUS_PROPERTY_INFO_EXTENDED_READABLE_L ("Unsaved", "b", NM_SETTINGS_CONNECTION_UNSAVED),
+ NM_DEFINE_DBUS_PROPERTY_INFO_EXTENDED_READABLE ("Flags", "u", NM_SETTINGS_CONNECTION_FLAGS),
+ NM_DEFINE_DBUS_PROPERTY_INFO_EXTENDED_READABLE ("Filename", "s", NM_SETTINGS_CONNECTION_FILENAME),
),
),
.legacy_property_changed = TRUE,
diff --git a/src/settings/nm-settings-connection.h b/src/settings/nm-settings-connection.h
index 70518687c2..cd64f9762d 100644
--- a/src/settings/nm-settings-connection.h
+++ b/src/settings/nm-settings-connection.h
@@ -42,11 +42,11 @@
/* Properties */
#define NM_SETTINGS_CONNECTION_UNSAVED "unsaved"
+#define NM_SETTINGS_CONNECTION_FLAGS "flags"
+#define NM_SETTINGS_CONNECTION_FILENAME "filename"
/* Internal properties */
#define NM_SETTINGS_CONNECTION_READY "ready"
-#define NM_SETTINGS_CONNECTION_FLAGS "flags"
-#define NM_SETTINGS_CONNECTION_FILENAME "filename"
/**
* NMSettingsConnectionIntFlags:
diff --git a/src/settings/plugins/ifcfg-rh/nm-ifdown b/src/settings/plugins/ifcfg-rh/nm-ifdown
new file mode 100644
index 0000000000..e7bd73aec3
--- /dev/null
+++ b/src/settings/plugins/ifcfg-rh/nm-ifdown
@@ -0,0 +1,3 @@
+#!/bin/sh
+nmcli connection load "/etc/sysconfig/network-scripts/ifcfg-$1" &&
+exec nmcli connection down filename "/etc/sysconfig/network-scripts/ifcfg-$1"
diff --git a/src/settings/plugins/ifcfg-rh/nm-ifup b/src/settings/plugins/ifcfg-rh/nm-ifup
new file mode 100644
index 0000000000..96637a92fb
--- /dev/null
+++ b/src/settings/plugins/ifcfg-rh/nm-ifup
@@ -0,0 +1,3 @@
+#!/bin/sh
+nmcli connection load "/etc/sysconfig/network-scripts/ifcfg-$1" &&
+exec nmcli connection up filename "/etc/sysconfig/network-scripts/ifcfg-$1"
diff --git a/tools/test-networkmanager-service.py b/tools/test-networkmanager-service.py
index 9496dea0bd..af8dc27534 100755
--- a/tools/test-networkmanager-service.py
+++ b/tools/test-networkmanager-service.py
@@ -1562,6 +1562,7 @@ class NetworkManager(ExportedObj):
###############################################################################
PRP_CONNECTION_UNSAVED = 'Unsaved'
+PRP_CONNECTION_FILENAME = 'Filename'
class Connection(ExportedObj):
def __init__(self, path_counter, con_hash, do_verify_strict=True):
@@ -1587,6 +1588,7 @@ class Connection(ExportedObj):
props = {
PRP_CONNECTION_UNSAVED: False,
+ PRP_CONNECTION_FILENAME: "/etc/NetworkManager/system-connections/" + self.get_id(),
}
self.dbus_interface_add(IFACE_CONNECTION, props)