(gss_release_buffer_set): don't leak the ->elements memory.

git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@18885 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
Love Hörnquist Åstrand
2006-10-24 21:53:02 +00:00
parent 6f3ca67165
commit ab649d3154

View File

@@ -98,22 +98,21 @@ gss_add_buffer_set_member
} }
OM_uint32 OM_uint32
gss_release_buffer_set gss_release_buffer_set(OM_uint32 * minor_status,
(OM_uint32 * minor_status, gss_buffer_set_t *buffer_set)
gss_buffer_set_t *buffer_set)
{ {
int i; int i;
OM_uint32 minor; OM_uint32 minor;
*minor_status = 0; *minor_status = 0;
if (*buffer_set == GSS_C_NO_BUFFER_SET) { if (*buffer_set == GSS_C_NO_BUFFER_SET)
return GSS_S_COMPLETE; return GSS_S_COMPLETE;
}
for (i = 0; i < (*buffer_set)->count; i++) { for (i = 0; i < (*buffer_set)->count; i++)
gss_release_buffer(&minor, &((*buffer_set)->elements[i])); gss_release_buffer(&minor, &((*buffer_set)->elements[i]));
}
free((*buffer_set)->elements);
(*buffer_set)->elements = NULL; (*buffer_set)->elements = NULL;
(*buffer_set)->count = 0; (*buffer_set)->count = 0;