diff options
author | Greg Hudson <ghudson@mit.edu> | 2013-10-07 09:51:56 -0400 |
---|---|---|
committer | Greg Hudson <ghudson@mit.edu> | 2013-10-14 23:32:05 -0400 |
commit | 48dd01f29b893a958a64dcf6eb0b734e8463425b (patch) | |
tree | d640110f683fb152d3e5ca6290b68ad7f486f8b9 /src/tests/gssapi/common.c | |
parent | 69c190ed9189273a79fdb8e8d95ce970d21118b3 (diff) | |
download | krb5-48dd01f29b893a958a64dcf6eb0b734e8463425b.tar.gz krb5-48dd01f29b893a958a64dcf6eb0b734e8463425b.tar.xz krb5-48dd01f29b893a958a64dcf6eb0b734e8463425b.zip |
Fix GSSAPI krb5 cred ccache import
json_to_ccache was incorrectly indexing the JSON array when restoring
a memory ccache. Fix it.
Add test coverage for a multi-cred ccache by exporting/importing the
synthesized S4U2Proxy delegated cred in t_s4u2proxy_krb5.c; move
export_import_cred from t_export_cred.c to common.c to facilitate
this. Make a note in t_export_cred.py that this case is covered in
t_s4u.py.
ticket: 7706
target_version: 1.11.4
Diffstat (limited to 'src/tests/gssapi/common.c')
-rw-r--r-- | src/tests/gssapi/common.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/tests/gssapi/common.c b/src/tests/gssapi/common.c index 19a781a5e..231f44af2 100644 --- a/src/tests/gssapi/common.c +++ b/src/tests/gssapi/common.c @@ -149,6 +149,20 @@ establish_contexts(gss_OID imech, gss_cred_id_t icred, gss_cred_id_t acred, } void +export_import_cred(gss_cred_id_t *cred) +{ + OM_uint32 major, minor; + gss_buffer_desc buf; + + major = gss_export_cred(&minor, *cred, &buf); + check_gsserr("gss_export_cred", major, minor); + (void)gss_release_cred(&minor, cred); + major = gss_import_cred(&minor, &buf, cred); + check_gsserr("gss_import_cred", major, minor); + (void)gss_release_buffer(&minor, &buf); +} + +void display_canon_name(const char *tag, gss_name_t name, gss_OID mech) { gss_name_t canon; |