Better error messages when UTF8 conversion fails

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
This commit is contained in:
Harald Barth
2012-05-31 14:50:09 +02:00
committed by Love Hornquist Astrand
parent 124ab6957c
commit 3f52037382
2 changed files with 7 additions and 6 deletions

View File

@@ -739,8 +739,8 @@ build_logon_name(krb5_context context,
ret = wind_utf8ucs2_length(s, &ucs2_len); ret = wind_utf8ucs2_length(s, &ucs2_len);
if (ret) { if (ret) {
krb5_set_error_message(context, ret, "Principal %s is not valid UTF-8", s);
free(s); free(s);
krb5_set_error_message(context, ret, "Failed to count length of UTF-8 string");
return ret; return ret;
} }
@@ -751,12 +751,13 @@ build_logon_name(krb5_context context,
} }
ret = wind_utf8ucs2(s, ucs2, &ucs2_len); ret = wind_utf8ucs2(s, ucs2, &ucs2_len);
free(s);
if (ret) { if (ret) {
free(ucs2); free(ucs2);
krb5_set_error_message(context, ret, "Failed to convert string to UCS-2"); krb5_set_error_message(context, ret, "Principal %s is not valid UTF-8", s);
free(s);
return ret; return ret;
} } else
free(s);
s2_len = (ucs2_len + 1) * 2; s2_len = (ucs2_len + 1) * 2;
s2 = malloc(s2_len); s2 = malloc(s2_len);

View File

@@ -57,7 +57,7 @@ ARCFOUR_string_to_key(krb5_context context,
ret = wind_utf8ucs2_length(password.data, &len); ret = wind_utf8ucs2_length(password.data, &len);
if (ret) { if (ret) {
krb5_set_error_message (context, ret, krb5_set_error_message (context, ret,
N_("Password not an UCS2 string", "")); N_("Password is not valid UTF-8", ""));
goto out; goto out;
} }
@@ -70,7 +70,7 @@ ARCFOUR_string_to_key(krb5_context context,
ret = wind_utf8ucs2(password.data, s, &len); ret = wind_utf8ucs2(password.data, s, &len);
if (ret) { if (ret) {
krb5_set_error_message (context, ret, krb5_set_error_message (context, ret,
N_("Password not an UCS2 string", "")); N_("Password is not valid UTF-8", ""));
goto out; goto out;
} }