[PATCH] Add WPA_UNICODE_SSID support
Dmitry Shmidt
dimitrysh at google.com
Fri Feb 25 12:57:35 EST 2011
Hi Johannes,
On Fri, Feb 25, 2011 at 12:42 AM, Johannes Berg
<johannes at sipsolutions.net> wrote:
> On Thu, 2011-02-24 at 17:31 -0800, Dmitry Shmidt wrote:
>
>> --- a/src/utils/common.c
>> +++ b/src/utils/common.c
>> @@ -374,8 +374,10 @@ const char * wpa_ssid_txt(const u8 *ssid, size_t ssid_len)
>> os_memcpy(ssid_txt, ssid, ssid_len);
>> ssid_txt[ssid_len] = '\0';
>> for (pos = ssid_txt; *pos != '\0'; pos++) {
>> +#ifndef WPA_UNICODE_SSID
>> if ((u8) *pos < 32 || (u8) *pos >= 127)
>> *pos = '_';
>> +#endif
>
> That doesn't make sense, anyone who has a working, say UTF-8, config now
> will be totally confused by this change.
I am missing your point. The code I am trying to "remove" is hiding
non-ascii chars.
>
>> +#ifdef WPA_UNICODE_SSID
>> +static char * wpa_config_write_str_unicode(const struct parse_data *data,
>> + struct wpa_ssid *ssid)
>> +{
>> + size_t len;
>> + char **src;
>> +
>> + src = (char **) (((u8 *) ssid) + (long) data->param1);
>> + if (*src == NULL)
>> + return NULL;
>> +
>> + if (data->param2)
>> + len = *((size_t *) (((u8 *) ssid) + (long) data->param2));
>> + else
>> + len = os_strlen(*src);
>> +
>> + return wpa_config_write_string_ascii((const u8 *) *src, len);
>> +}
>> +#endif
>
> And without the first change, this change also doesn't make a lot of
> sense?
Correct, non-ascii chars will be replaced with '_'
>
> johannes
>
>
More information about the HostAP
mailing list