Make gss-krb5 use cache collection
authorGreg Hudson <ghudson@mit.edu>
Mon, 5 Sep 2011 16:35:40 +0000 (16:35 +0000)
committerGreg Hudson <ghudson@mit.edu>
Mon, 5 Sep 2011 16:35:40 +0000 (16:35 +0000)
commit1cd2821c19b2b95e39d5fc2f451a035585a40fa5
treeda78b3780a8cbf0c57977ad4504c5336b03fb49b
parent7c5926d866b1874e66ef5d05416ff024faab01ff
Make gss-krb5 use cache collection

For default credentials, defer ccache resolution until we need the
information.  If this happens in init_sec_context when we have the
target principal in hand, use krb5_cc_select() to pick a cache.  If
the target principal is not known, use the default cache.

For credentials with a specified principal, use krb5_cc_cache_match()
to find the cache.  If no cache is found and a password is specified,
create a new cache within the collection to hold the new credentials,
if the default cache type supports a collection.

ticket: 6958

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@25160 dc483132-0cff-0310-8789-dd5450dbe970
src/lib/gssapi/krb5/acquire_cred.c
src/lib/gssapi/krb5/gssapiP_krb5.h
src/lib/gssapi/krb5/iakerb.c
src/lib/gssapi/krb5/init_sec_context.c
src/lib/gssapi/krb5/inq_cred.c
src/lib/gssapi/krb5/s4u_gss_glue.c
src/tests/gssapi/Makefile.in
src/tests/gssapi/deps
src/tests/gssapi/t_ccselect.c [new file with mode: 0644]
src/tests/gssapi/t_ccselect.py [new file with mode: 0644]