}
MHD_stop_daemon(current);
+ _krb5_unload_plugins(context, "kdc");
pthread_key_delete(k5ctx);
return 0;
}
switch_environment();
start_kdc(context, config, argv[0]);
+ _krb5_unload_plugins(context, "kdc");
krb5_free_context(context);
free(config);
return 0;
}
heim_array_append_value(r->kv, str);
+ heim_release(str);
}
void
krb5_error_code ret;
unsigned int i;
int claim = 0;
- heim_auto_release_t pool = heim_auto_release_create();
r = calloc(sizeof(*r), 1);
if (!r)
free(r->cname);
free(r->sname);
free(r->e_text_buf);
- heim_release(r->kv);
}
- heim_release(pool);
+ heim_release(r->kv);
+ free(r);
return ret;
}
}
- heim_release(pool);
-
+ heim_release(r->kv);
+ free(r);
return -1;
}
krb5_err(context, 1, ret, "Authorization failed");
printf("Authorized!\n");
krb5_free_principal(context, princ);
+ _krb5_unload_plugins(context, "kdc");
krb5_free_context(context);
hx509_request_free(&csr);
/* FIXME There's no free function for config yet */
if (ret != HX509_UNSUPPORTED_OPERATION)
krb5_err(context, 1, ret,
"Could not store certificate and chain in %s", out);
+ _krb5_unload_plugins(context, "kdc");
krb5_free_principal(context, p);
krb5_free_context(context);
hx509_request_free(&req);
printf("Token is valid. Actual principal: %s\n", s);
else
printf("Token is valid.");
+ _krb5_unload_plugins(context, "kdc");
krb5_free_principal(context, actual_princ);
+ krb5_free_context(context);
return 0;
}