diff options
author | Thomas Haller <thaller@redhat.com> | 2019-03-16 14:03:26 +0100 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2019-03-25 09:12:32 +0100 |
commit | 25ef45ff3debe7d3df526f7727401116b4f3252e (patch) | |
tree | 8c8c35602ecf6c58d91e343fdb54cdd1a2ba3051 /clients/common | |
parent | bb4e5a7a62ce7322beaac55d3f14528bde43eec0 (diff) | |
download | NetworkManager-25ef45ff3debe7d3df526f7727401116b4f3252e.tar.gz |
libnm/cli: support deleting VLAN egress/ingress priority map by "from"
The "from" part is like a key for the egress/ingress priority map.
Extend nm_setting_vlan_remove_priority_str_by_value() to accept only the
"from" part when finding and deleting value. This allows for:
$ nmcli connection modify "$PROFILE" -vlan.ingress-priority-map '4:'
$ nmcli connection modify "$PROFILE" -vlan.ingress-priority-map '4:*'
to fuzzy match the value to remove.
Diffstat (limited to 'clients/common')
-rw-r--r-- | clients/common/nm-meta-setting-desc.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/clients/common/nm-meta-setting-desc.c b/clients/common/nm-meta-setting-desc.c index 31356f2e2e..71f6f1d5b0 100644 --- a/clients/common/nm-meta-setting-desc.c +++ b/clients/common/nm-meta-setting-desc.c @@ -408,6 +408,7 @@ _parse_team_link_watcher (const char *str, static char ** _parse_vlan_priority_maps (const char *priority_map, NMVlanPriorityMap map_type, + gboolean allow_wildcard_to, GError **error) { gs_strfreev char **mapping = NULL; @@ -420,7 +421,7 @@ _parse_vlan_priority_maps (const char *priority_map, for (iter = mapping; *iter; iter++) { if (!nm_utils_vlan_priority_map_parse_str (map_type, *iter, - FALSE, + allow_wildcard_to, NULL, NULL, NULL)) { @@ -4279,7 +4280,7 @@ _set_vlan_xgress_priority_map (NMSetting *setting, { char **prio_map, **p; - prio_map = _parse_vlan_priority_maps (value, map_type, error); + prio_map = _parse_vlan_priority_maps (value, map_type, FALSE, error); if (!prio_map) return FALSE; @@ -4320,7 +4321,7 @@ _remove_vlan_xgress_priority_map (const NMMetaEnvironment *environment, char **prio_map; gs_free char *v = g_strdup (value); - prio_map = _parse_vlan_priority_maps (v, map_type, error); + prio_map = _parse_vlan_priority_maps (v, map_type, TRUE, error); if (!prio_map) return FALSE; if (prio_map[1]) { |