diff --git a/lib/gssapi/mech/gss_mech_switch.c b/lib/gssapi/mech/gss_mech_switch.c index d828341dd..58b187eda 100644 --- a/lib/gssapi/mech/gss_mech_switch.c +++ b/lib/gssapi/mech/gss_mech_switch.c @@ -316,6 +316,7 @@ _gss_load_mech(void) m->gm_so = so; m->gm_mech_oid = mech_oid; + m->gm_mech.gm_name = strdup(name); m->gm_mech.gm_mech_oid = mech_oid; m->gm_mech.gm_flags = 0; m->gm_mech.gm_compat = calloc(1, sizeof(struct gss_mech_compat_desc_struct)); @@ -415,6 +416,7 @@ _gss_load_mech(void) if (m != NULL) { free(m->gm_mech.gm_compat); free(m->gm_mech.gm_mech_oid.elements); + free((char *)m->gm_mech.gm_name); free(m); } dlclose(so);