summaryrefslogtreecommitdiff
path: root/libnm-core/nm-setting-ovs-interface.c
diff options
context:
space:
mode:
authorLubomir Rintel <lkundrak@v3.sk>2017-10-02 09:03:19 +0200
committerLubomir Rintel <lkundrak@v3.sk>2017-10-30 17:40:08 +0100
commit8a1ae40a80efcd6632ea7ba4845b85aec5afe19b (patch)
tree89a682822e2613bd5e67ba37305b111724248e83 /libnm-core/nm-setting-ovs-interface.c
parent27790fa976c66d99dd3d2d38ead97e823910bdbb (diff)
downloadNetworkManager-8a1ae40a80efcd6632ea7ba4845b85aec5afe19b.tar.gz
libnm-core: add ovs-port setting
Diffstat (limited to 'libnm-core/nm-setting-ovs-interface.c')
-rw-r--r--libnm-core/nm-setting-ovs-interface.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/libnm-core/nm-setting-ovs-interface.c b/libnm-core/nm-setting-ovs-interface.c
index b9e749ba96..3b214af892 100644
--- a/libnm-core/nm-setting-ovs-interface.c
+++ b/libnm-core/nm-setting-ovs-interface.c
@@ -85,6 +85,7 @@ verify (NMSetting *setting, NMConnection *connection, GError **error)
if (connection) {
NMSettingConnection *s_con;
+ const char *slave_type;
s_con = nm_connection_get_setting_connection (connection);
if (!s_con) {
@@ -105,6 +106,20 @@ verify (NMSetting *setting, NMConnection *connection, GError **error)
g_prefix_error (error, "%s.%s: ", NM_SETTING_CONNECTION_SETTING_NAME, NM_SETTING_CONNECTION_MASTER);
return FALSE;
}
+
+ slave_type = nm_setting_connection_get_slave_type (s_con);
+ if ( slave_type
+ && strcmp (slave_type, NM_SETTING_OVS_PORT_SETTING_NAME)) {
+ g_set_error (error,
+ NM_CONNECTION_ERROR,
+ NM_CONNECTION_ERROR_INVALID_PROPERTY,
+ _("A connection with a '%s' setting must have the slave-type set to '%s'. Instead it is '%s'"),
+ NM_SETTING_OVS_INTERFACE_SETTING_NAME,
+ NM_SETTING_OVS_PORT_SETTING_NAME,
+ slave_type);
+ g_prefix_error (error, "%s.%s: ", NM_SETTING_CONNECTION_SETTING_NAME, NM_SETTING_CONNECTION_SLAVE_TYPE);
+ return FALSE;
+ }
}
if (!NM_IN_STRSET (self->type, "internal", "system", "patch", "", NULL)) {