summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--introspection/org.freedesktop.NetworkManager.Device.xml12
-rw-r--r--src/devices/nm-device.c24
2 files changed, 29 insertions, 7 deletions
diff --git a/introspection/org.freedesktop.NetworkManager.Device.xml b/introspection/org.freedesktop.NetworkManager.Device.xml
index ee424101e6..9a13d8f9f6 100644
--- a/introspection/org.freedesktop.NetworkManager.Device.xml
+++ b/introspection/org.freedesktop.NetworkManager.Device.xml
@@ -28,6 +28,9 @@
Interface:
The name of the device's control (and often data) interface.
+ Note that non UTF-8 characters are backslash escaped, so the
+ resulting name may be longer then 15 characters. Use g_strcompress()
+ to revert the escaping.
-->
<property name="Interface" type="s" access="read"/>
@@ -38,6 +41,9 @@
not refer to the actual data interface until the device has successfully
established a data connection, indicated by the device's State becoming
ACTIVATED.
+ Note that non UTF-8 characters are backslash escaped, so the
+ resulting name may be longer then 15 characters. Use g_strcompress()
+ to revert the escaping.
-->
<property name="IpInterface" type="s" access="read"/>
@@ -45,6 +51,8 @@
Driver:
The driver handling the device.
+ Non-UTF-8 sequences are backslash escaped. Use g_strcompress()
+ to revert.
-->
<property name="Driver" type="s" access="read"/>
@@ -52,6 +60,8 @@
DriverVersion:
The version of the driver handling the device.
+ Non-UTF-8 sequences are backslash escaped. Use g_strcompress()
+ to revert.
-->
<property name="DriverVersion" type="s" access="read"/>
@@ -59,6 +69,8 @@
FirmwareVersion:
The firmware version for the device.
+ Non-UTF-8 sequences are backslash escaped. Use g_strcompress()
+ to revert.
-->
<property name="FirmwareVersion" type="s" access="read"/>
diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c
index 39106de9a0..10de535548 100644
--- a/src/devices/nm-device.c
+++ b/src/devices/nm-device.c
@@ -13944,25 +13944,35 @@ get_property (GObject *object, guint prop_id,
g_value_set_string (value, priv->udi);
break;
case PROP_IFACE:
- g_value_set_string (value, priv->iface);
+ g_value_take_string (value,
+ nm_utils_str_utf8safe_escape (priv->iface,
+ NM_UTILS_STR_UTF8_SAFE_FLAG_ESCAPE_CTRL));
break;
case PROP_IP_IFACE:
- if (ip_config_valid (priv->state))
- g_value_set_string (value, nm_device_get_ip_iface (self));
- else
+ if (ip_config_valid (priv->state)) {
+ g_value_take_string (value,
+ nm_utils_str_utf8safe_escape (nm_device_get_ip_iface (self),
+ NM_UTILS_STR_UTF8_SAFE_FLAG_ESCAPE_CTRL));
+ } else
g_value_set_string (value, NULL);
break;
case PROP_IFINDEX:
g_value_set_int (value, priv->ifindex);
break;
case PROP_DRIVER:
- g_value_set_string (value, priv->driver);
+ g_value_take_string (value,
+ nm_utils_str_utf8safe_escape (priv->driver,
+ NM_UTILS_STR_UTF8_SAFE_FLAG_ESCAPE_CTRL));
break;
case PROP_DRIVER_VERSION:
- g_value_set_string (value, priv->driver_version);
+ g_value_take_string (value,
+ nm_utils_str_utf8safe_escape (priv->driver_version,
+ NM_UTILS_STR_UTF8_SAFE_FLAG_ESCAPE_CTRL));
break;
case PROP_FIRMWARE_VERSION:
- g_value_set_string (value, priv->firmware_version);
+ g_value_take_string (value,
+ nm_utils_str_utf8safe_escape (priv->firmware_version,
+ NM_UTILS_STR_UTF8_SAFE_FLAG_ESCAPE_CTRL));
break;
case PROP_CAPABILITIES:
g_value_set_uint (value, (priv->capabilities & ~NM_DEVICE_CAP_INTERNAL_MASK));