handle username part of the ntlm name

git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@22373 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
Love Hörnquist Åstrand
2007-12-28 18:36:06 +00:00
parent 7e14fe4f56
commit 66f8605e07
6 changed files with 61 additions and 9 deletions

View File

@@ -65,6 +65,7 @@ OM_uint32 _gss_ntlm_import_name
p = strchr(name, '@');
if (p == NULL)
return GSS_S_BAD_NAME;
p[0] = '\0';
p++;
p2 = strchr(p, '.');
if (p2 && p2[1] != '\0') {
@@ -75,15 +76,26 @@ OM_uint32 _gss_ntlm_import_name
}
strupr(p);
n = malloc(sizeof(n) + strlen(p));
if (n == NULL) {
n = calloc(1, sizeof(*n));
if (name == NULL) {
free(name);
*minor_status = ENOMEM;
return GSS_S_FAILURE;
}
strcpy(n->domain, p);
n->user = strdup(name);
n->domain = strdup(p);
free(name);
if (n->user == NULL || n->domain == NULL) {
free(n->user);
free(n->domain);
free(n);
*minor_status = ENOMEM;
return GSS_S_FAILURE;
}
*output_name = (gss_name_t)n;
return GSS_S_COMPLETE;