[1435] in Kerberos-V5-bugs
gss_display_name() and gss_import_name() improperly handle name type
daemon@ATHENA.MIT.EDU (Dan Nessett)
Fri May 26 15:34:17 1995
Date: Fri, 26 May 1995 12:33:24 -0700
From: Danny.Nessett@Eng.Sun.COM (Dan Nessett)
To: krb5-bugs@MIT.EDU
In the file (Version 5 Patch level 3) :
.../src/lib/gssapi/krb5/display_name.c
the name type is improperly set to the mechanism OID :
...
*minor_status = 0;
|| if (output_name_type)
|| *output_name_type = (gss_OID) gss_mech_krb5;
|| ^^^^^^^^^^^^^
return(GSS_S_COMPLETE);
}
It seems that gss_import_name() doesn't record the name type in any data
structure associated with the internal name, so it isn't clear how
gss_display_name() would return this information.
Suggested fix : keep the name_type OID and a handle to the internal name
within a struct. When gss_import_name() is called, copy the OID into this
struct and return a handle to the struct. When gss_display_name() is called,
return the OID recorded there. A change to gss_release_name() would also
be required to reclaim the space for the struct.
Dan Nessett