ksu keeps old ccache locked
authorKen Raeburn <raeburn@mit.edu>
Wed, 15 Jun 2005 23:17:15 +0000 (23:17 +0000)
committerKen Raeburn <raeburn@mit.edu>
Wed, 15 Jun 2005 23:17:15 +0000 (23:17 +0000)
commite922fedabb27caacf044f75fa2f93b5706fc4b58
tree596ada7184d8703e83002005209a003b0dc170cd
parent97f60ce57f7eac3f35b8bb23052d015efa145c40
ksu keeps old ccache locked

ksu can keep the user's ccache (the old one, not the newly created
one) locked while the new shell is running.  It's a read lock, which
prevents other processes from modifying the file (e.g., adding newly
acquired tickets); they just hang until ksu exits.

The problem is really a bug down in the ccache code, where the wrong
data pointer is pulled out of a linked list, and used.  But ksu is one
of the few programs that manipulates multiple ccaches; most other
programs wouldn't show the problem, and it only shows up with ksu if
some other program is also being run that has to fetch new tickets.

Any other programs maintaining multiple file ccaches may be affected
as well.

* cc_file.c (dereference): Fix test is list-walking loop.

ticket: new
target_version: 1.4.2
tags: pullup

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17243 dc483132-0cff-0310-8789-dd5450dbe970
src/lib/krb5/ccache/ChangeLog
src/lib/krb5/ccache/cc_file.c