in src/omxmlsec/saml/response.c [221:274]
AXIS2_EXTERN void saml_response_free(saml_response_t *response, const axutil_env_t *env)
{
int size =0, i = 0;
saml_assertion_t *assertion = NULL;
if(response->major_version)
{
AXIS2_FREE(env->allocator, response->major_version);
}
if(response->minor_version)
{
AXIS2_FREE(env->allocator, response->minor_version);
}
if(response->issue_instant)
{
axutil_date_time_free(response->issue_instant, env);
}
if(response->recepient)
{
AXIS2_FREE(env->allocator, response->recepient);
}
if(response->response_id)
{
AXIS2_FREE(env->allocator, response->response_id);
}
if(response->sig_ctx)
{
oxs_sign_ctx_free(response->sig_ctx, env);
}
if(response->status)
{
saml_status_free(response->status, env);
}
if(response->request_response_id)
{
AXIS2_FREE(env->allocator, response->request_response_id);
}
if(response->saml_assertions)
{
size = axutil_array_list_size(response->saml_assertions, env);
for(i = 0; i < size ; i++)
{
assertion = (saml_assertion_t*)axutil_array_list_get(response->saml_assertions, env, i);
if(assertion)
{
saml_assertion_free(assertion, env);
}
}
axutil_array_list_free(response->saml_assertions, env);
}
response->original_xml = NULL;
response->signature = NULL;
AXIS2_FREE(env->allocator, response);
response = NULL;
}