Skip Menu |
 

Subject: ccache auxilliary functions
To allow for the creation of KIM, the following additions need to go into the krb5 ccache and
cccol code:

- krb5_cc_lock/unlock to explicitly lock editing of a ccache
- krb5_cccol_lock/unlock to explicitly lock creation and deletion of all ccache
- krb5_cc_last_change_time to monitor changes to ccaches
- krb5_cc_move to migrate a ccache across cache types
- add missing pertype cccursor support to ccache types to allow iteration of all available ccaches
From: jander@mit.edu
Subject: SVN Commit

Merge 1.7 work on auxiliary ccache functions necessary for KIM. Adds krb5_cc_lock/unlock, krb5_cccol_lock/unlock, krb5_cc_last_change_time, krb5_cccol_last_change_time, krb5_cc_move, and adds pertype cursor support to some cache types.

Locking functions work the same as the CCAPI cc_ccache_lock / cc_context_lock functions, though not as read/write locks.
Commit By: jander



Revision: 20743
Changed Files:
U trunk/src/include/k5-int.h
U trunk/src/include/krb5/krb5.hin
U trunk/src/lib/krb5/ccache/cc-int.h
U trunk/src/lib/krb5/ccache/cc_file.c
U trunk/src/lib/krb5/ccache/cc_keyring.c
U trunk/src/lib/krb5/ccache/cc_memory.c
U trunk/src/lib/krb5/ccache/ccapi/stdcc.c
U trunk/src/lib/krb5/ccache/ccapi/stdcc.h
U trunk/src/lib/krb5/ccache/ccbase.c
U trunk/src/lib/krb5/ccache/cccursor.c
U trunk/src/lib/krb5/ccache/ccfns.c
Looking at your changes I am concerned with the following:

a) Addition of functions to krb5.hin which are not added to the library
export list (cc_move, lock, etc). If these are to be exported, please
change the exports list. If not - move them to the cc-int.h below...

b) Addition of library specific code to k5-int.h: You have added the
k5_cc_mutex and support to the "global" k5-int.h. I believe this code
will be localized to the krb5 library - and more specifically to the
ccache portion. Perhaps moving your changes to lib/krb5/ccache/cc-int.h
would be more appropriate.

Ezra