From d15bc1710108f58d11e229d33a2df95da91c8d79 Mon Sep 17 00:00:00 2001 From: Marcel Holtmann Date: Fri, 3 Jul 2009 10:19:27 -0700 Subject: [PATCH] Fix to replace unprintable characters with a white space --- plugins/supplicant.c | 11 +++++------ src/device.c | 16 +++++++--------- 2 files changed, 12 insertions(+), 15 deletions(-) diff --git a/plugins/supplicant.c b/plugins/supplicant.c index a9cc056..5a68231 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 63d5209..82901a7 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); -- 2.7.4