shared: check for valid UTF-8 in nm_utils_ifname_valid()

The interface name might come from the command line or from a filename
(like during nm_vpn_wireguard_import()). It's not clear that this
is valid UTF-8. Asserting against that requires the caller to ensure
that the encoding is valid. That is cumbersome, especially since we anyway
check. Just report a regular error.
This commit is contained in:
Thomas Haller
2020-02-17 16:22:26 +01:00
parent ed5a647ad1
commit 82fb8b00b4

View File

@@ -4127,7 +4127,11 @@ nm_utils_ifname_valid (const char* name,
return FALSE; return FALSE;
} }
g_return_val_if_fail (g_utf8_validate (name, -1, NULL), FALSE); if (!g_utf8_validate (name, -1, NULL)) {
g_set_error_literal (error, NM_UTILS_ERROR, NM_UTILS_ERROR_UNKNOWN,
_("interface name must be UTF-8 encoded"));
return FALSE;
}
switch (type) { switch (type) {
case NMU_IFACE_KERNEL: case NMU_IFACE_KERNEL: