core: be strict about connection argument in D-Bus methods

There is no excuse for clients to send connections to NetworkManager
that have invalid/unknown fields. Just reject them.

This is a dangerous change, because we might now reject connections
that we were accepting previously. Who know what clients were sending
and it used to work.
This commit is contained in:
Thomas Haller
2016-03-23 15:58:53 +01:00
parent 0c5b98b464
commit 7991298c51
2 changed files with 4 additions and 2 deletions

View File

@@ -1736,7 +1736,8 @@ settings_connection_update_helper (NMSettingsConnection *self,
/* Check if the settings are valid first */
if (new_settings) {
tmp = _nm_simple_connection_new_from_dbus (new_settings,
NM_SETTING_PARSE_FLAGS_NORMALIZE,
NM_SETTING_PARSE_FLAGS_STRICT
| NM_SETTING_PARSE_FLAGS_NORMALIZE,
&error);
if (!tmp)
goto error;

View File

@@ -1408,7 +1408,8 @@ impl_settings_add_connection_helper (NMSettings *self,
GError *error = NULL;
connection = _nm_simple_connection_new_from_dbus (settings,
NM_SETTING_PARSE_FLAGS_NORMALIZE,
NM_SETTING_PARSE_FLAGS_STRICT
| NM_SETTING_PARSE_FLAGS_NORMALIZE,
&error);
if (connection) {