diff options
author | Greg Hudson <ghudson@mit.edu> | 2010-09-17 15:52:23 +0000 |
---|---|---|
committer | Greg Hudson <ghudson@mit.edu> | 2010-09-17 15:52:23 +0000 |
commit | 5caa3b093619c89f0ea6ff50c2cd5b8e9469502c (patch) | |
tree | ccbd11e43bff7e094104bc899d0eb885789c99ab | |
parent | 401c54d3d482f5fbd3847593ab994604e909172e (diff) | |
download | krb5-5caa3b093619c89f0ea6ff50c2cd5b8e9469502c.zip krb5-5caa3b093619c89f0ea6ff50c2cd5b8e9469502c.tar.gz krb5-5caa3b093619c89f0ea6ff50c2cd5b8e9469502c.tar.bz2 |
In kinit_kdb_init(), ensure that we don't return an error with the
old, freed value of *pcontext still there--that would result in a
double free.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@24326 dc483132-0cff-0310-8789-dd5450dbe970
-rw-r--r-- | src/clients/kinit/kinit_kdb.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/clients/kinit/kinit_kdb.c b/src/clients/kinit/kinit_kdb.c index f2011a6..7a2c2b4 100644 --- a/src/clients/kinit/kinit_kdb.c +++ b/src/clients/kinit/kinit_kdb.c @@ -52,8 +52,10 @@ kinit_kdb_init(krb5_context *pcontext, char *realm) kadm5_config_params config; krb5_error_code retval = 0; - if (*pcontext) + if (*pcontext) { krb5_free_context(*pcontext); + *pcontext = NULL; + } memset(&config, 0, sizeof config); retval = kadm5_init_krb5_context(pcontext); if (retval) |