summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTheodore Tso <tytso@mit.edu>1993-09-21 23:22:19 +0000
committerTheodore Tso <tytso@mit.edu>1993-09-21 23:22:19 +0000
commitcfd12c6c08848b1621ae155a5a500cb503ca18eb (patch)
tree5e1ed928fcf58377a2e27b75356ff6d7f2bec58d /src
parent882c20f22ff05050afdebe2370190c6e9a35657f (diff)
downloadkrb5-cfd12c6c08848b1621ae155a5a500cb503ca18eb.tar.gz
krb5-cfd12c6c08848b1621ae155a5a500cb503ca18eb.tar.xz
krb5-cfd12c6c08848b1621ae155a5a500cb503ca18eb.zip
Remove deference of freed structure
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@2645 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
-rw-r--r--src/lib/krb5/rcache/rc_dfl.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/lib/krb5/rcache/rc_dfl.c b/src/lib/krb5/rcache/rc_dfl.c
index de333c00f..e667eb17c 100644
--- a/src/lib/krb5/rcache/rc_dfl.c
+++ b/src/lib/krb5/rcache/rc_dfl.c
@@ -499,6 +499,7 @@ krb5_rcache id;
char *name = t->name;
krb5_error_code retval;
krb5_rcache tmp;
+ krb5_deltat lifespan = t->lifespan; /* save original lifespan */
(void) krb5_rc_dfl_close(id);
retval = krb5_rc_dfl_resolve(id, name);
@@ -507,6 +508,7 @@ krb5_rcache id;
retval = krb5_rc_dfl_recover(id);
if (retval)
return retval;
+ t = (struct dfl_data *)id->data; /* point to recovered cache */
tmp = (krb5_rcache) malloc(sizeof(*tmp));
if (!tmp)
return ENOMEM;
@@ -516,7 +518,7 @@ krb5_rcache id;
retval = krb5_rc_resolve(tmp, 0);
if (retval)
return retval;
- retval = krb5_rc_initialize(tmp, t->lifespan);
+ retval = krb5_rc_initialize(tmp, lifespan);
if (retval)
return retval;
for (q = t->a;q;q = q->na) {