aboutsummaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorJeffrey Altman <jaltman@secure-endpoints.com>2005-01-15 21:40:23 +0000
committerJeffrey Altman <jaltman@secure-endpoints.com>2005-01-15 21:40:23 +0000
commit2656e5e1e026f800559eed79dfcc58cd3da5d9a0 (patch)
tree7672ba79f1b689d4b0805c170318a3f2107733a8 /src/lib
parent9f9f9321d2944985af9d4c37cb6ee81366eb55e0 (diff)
downloadkrb5-2656e5e1e026f800559eed79dfcc58cd3da5d9a0.zip
krb5-2656e5e1e026f800559eed79dfcc58cd3da5d9a0.tar.gz
krb5-2656e5e1e026f800559eed79dfcc58cd3da5d9a0.tar.bz2
* rc_dfl.c: Move the extraction of the struct dfl_data
from the krb5_rcache after obtaining the lock, not before. ticket: new target_version: 1.4 tags: pullup git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17046 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/krb5/rcache/ChangeLog5
-rw-r--r--src/lib/krb5/rcache/rc_dfl.c6
2 files changed, 8 insertions, 3 deletions
diff --git a/src/lib/krb5/rcache/ChangeLog b/src/lib/krb5/rcache/ChangeLog
index 24b04b0..597ce15 100644
--- a/src/lib/krb5/rcache/ChangeLog
+++ b/src/lib/krb5/rcache/ChangeLog
@@ -1,3 +1,8 @@
+2005-01-15 Jeffrey Altman <jaltman@mit.edu>
+
+ * rc_dfl.c: Move the extraction of the struct dfl_data
+ from the krb5_rcache after obtaining the lock, not before.
+
2004-08-03 Ken Raeburn <raeburn@mit.edu>
* rc-int.h (struct _krb5_rc_ops): Add new member,
diff --git a/src/lib/krb5/rcache/rc_dfl.c b/src/lib/krb5/rcache/rc_dfl.c
index 586716a..a334002 100644
--- a/src/lib/krb5/rcache/rc_dfl.c
+++ b/src/lib/krb5/rcache/rc_dfl.c
@@ -182,10 +182,10 @@ krb5_rc_dfl_get_span(krb5_context context, krb5_rcache id,
krb5_error_code err;
struct dfl_data *t;
- t = (struct dfl_data *) id->data;
err = k5_mutex_lock(&id->lock);
if (err)
return err;
+ t = (struct dfl_data *) id->data;
*lifespan = t->lifespan;
k5_mutex_unlock(&id->lock);
return 0;
@@ -514,7 +514,6 @@ krb5_error_code KRB5_CALLCONV
krb5_rc_dfl_recover_or_init(krb5_context context, krb5_rcache id,
krb5_deltat lifespan)
{
- struct dfl_data *t = (struct dfl_data *)id->data;
krb5_error_code retval;
retval = k5_mutex_lock(&id->lock);
@@ -561,7 +560,7 @@ krb5_error_code KRB5_CALLCONV
krb5_rc_dfl_store(krb5_context context, krb5_rcache id, krb5_donot_replay *rep)
{
krb5_error_code ret;
- struct dfl_data *t = (struct dfl_data *)id->data;
+ struct dfl_data *t;
krb5_int32 now;
ret = krb5_timeofday(context, &now);
@@ -582,6 +581,7 @@ krb5_rc_dfl_store(krb5_context context, krb5_rcache id, krb5_donot_replay *rep)
case 0: break;
default: /* wtf? */ ;
}
+ t = (struct dfl_data *)id->data;
#ifndef NOIOSTUFF
ret = krb5_rc_io_store(context, t, rep);
if (ret) {