summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2009-07-03 10:19:27 -0700
committerMarcel Holtmann <marcel@holtmann.org>2009-07-03 10:19:27 -0700
commitd15bc1710108f58d11e229d33a2df95da91c8d79 (patch)
tree62ae9a575a5197e3afd0aaaf50a31e5e9b5d61be
parent299c1c383072e28853f602d4e2bb1e509fa2924d (diff)
downloadconnman-d15bc1710108f58d11e229d33a2df95da91c8d79.tar.gz
connman-d15bc1710108f58d11e229d33a2df95da91c8d79.tar.bz2
connman-d15bc1710108f58d11e229d33a2df95da91c8d79.zip
Fix to replace unprintable characters with a white space
-rw-r--r--plugins/supplicant.c11
-rw-r--r--src/device.c16
2 files changed, 12 insertions, 15 deletions
diff --git a/plugins/supplicant.c b/plugins/supplicant.c
index a9cc0562..5a682315 100644
--- a/plugins/supplicant.c
+++ b/plugins/supplicant.c
@@ -934,7 +934,6 @@ static void extract_ssid(DBusMessageIter *value,
DBusMessageIter array;
unsigned char *ssid;
int ssid_len, i;
- char *d;
dbus_message_iter_recurse(value, &array);
dbus_message_iter_get_fixed_array(&array, &ssid, &ssid_len);
@@ -953,12 +952,12 @@ static void extract_ssid(DBusMessageIter *value,
if (result->name == NULL)
return;
- d = result->name;
- for (i = 0; i < ssid_len; i++)
+ for (i = 0; i < ssid_len; i++) {
if (g_ascii_isprint(ssid[i]))
- *d++ = ssid[i];
-
- *d = '\0';
+ result->name[i] = ssid[i];
+ else
+ result->name[i] = ' ';
+ }
}
static void extract_wpaie(DBusMessageIter *value,
diff --git a/src/device.c b/src/device.c
index 63d52097..82901a7c 100644
--- a/src/device.c
+++ b/src/device.c
@@ -468,18 +468,17 @@ static char *build_group(const unsigned char *ssid, unsigned int ssid_len,
return g_string_free(str, FALSE);
}
-static char *build_network_name(const char *ssid, char *name,
+static void convert_name(const char *ssid, char *name,
unsigned int ssid_len)
{
unsigned int i;
- char *d = name;
- for (i = 0; i < ssid_len; i++)
+ for (i = 0; i < ssid_len; i++) {
if (g_ascii_isprint(ssid[i]))
- *d++ = ssid[i];
-
- *d = '\0';
- return name;
+ name[i] = ssid[i];
+ else
+ name[i] = ' ';
+ }
}
static DBusMessage *join_network(DBusConnection *conn,
@@ -541,8 +540,7 @@ static DBusMessage *join_network(DBusConnection *conn,
return __connman_error_failed(msg,
-ENOMEM);
- name = build_network_name((char *) str, name,
- strlen(str));
+ convert_name((char *) str, name, strlen(str));
connman_network_set_name(network, name);
g_free(name);