1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 3<title>HeimdalKerberos5library: Heimdal Kerberos 5 credential cache functions</title> 4<link href="doxygen.css" rel="stylesheet" type="text/css"> 5<link href="tabs.css" rel="stylesheet" type="text/css"> 6</head><body> 7<p> 8<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a> 9</p> 10<!-- end of header marker --> 11<!-- Generated by Doxygen 1.5.6 --> 12<div class="navigation" id="top"> 13 <div class="tabs"> 14 <ul> 15 <li><a href="index.html"><span>Main Page</span></a></li> 16 <li><a href="pages.html"><span>Related Pages</span></a></li> 17 <li><a href="modules.html"><span>Modules</span></a></li> 18 <li><a href="annotated.html"><span>Data Structures</span></a></li> 19 </ul> 20 </div> 21</div> 22<div class="contents"> 23<h1>Heimdal Kerberos 5 credential cache functions</h1><table border="0" cellpadding="0" cellspacing="0"> 24<tr><td></td></tr> 25<tr><td colspan="2"><br><h2>Functions</h2></td></tr> 26<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 27krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#gc3a45bff840e57a9675d51c1fee6c2e8">krb5_cc_register</a> (krb5_context context, const krb5_cc_ops *ops, krb5_boolean override)</td></tr> 28 29<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 30krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#ge8ab9d6f4af5710dab860f2806a7d13b">krb5_cc_resolve</a> (krb5_context context, const char *name, krb5_ccache *id)</td></tr> 31 32<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 33krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g86c0f70d0c2b5de2d876edf4b693b5b9">krb5_cc_new_unique</a> (krb5_context context, const char *type, const char *hint, krb5_ccache *id)</td></tr> 34 35<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION const char <br> 36*KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g99e06555ebd9e2f02ce250918f5ee846">krb5_cc_get_name</a> (krb5_context context, krb5_ccache id)</td></tr> 37 38<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION const char <br> 39*KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g08ab758e7d47c00d266beaff319f2736">krb5_cc_get_type</a> (krb5_context context, krb5_ccache id)</td></tr> 40 41<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 42krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g8cd3ff7e8d884abfab2805b50c9fc5bf">krb5_cc_get_full_name</a> (krb5_context context, krb5_ccache id, char **str)</td></tr> 43 44<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION const <br> 45krb5_cc_ops *KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#gd7ee5a815a02d132862f77a7749edf4a">krb5_cc_get_ops</a> (krb5_context context, krb5_ccache id)</td></tr> 46 47<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 48krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#gc2b41cdf638a1ec3d0fd4e72d7b71f3a">krb5_cc_switch</a> (krb5_context context, krb5_ccache id)</td></tr> 49 50<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION krb5_boolean <br> 51KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g52344bb9dee620b5e386a9dd3c996e0f">krb5_cc_support_switch</a> (krb5_context context, const char *type)</td></tr> 52 53<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 54krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g86c6699db4cbdcf18f42add005040941">krb5_cc_set_default_name</a> (krb5_context context, const char *name)</td></tr> 55 56<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION const char <br> 57*KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#gbba6e24537d53808ee90eed7551fc0c1">krb5_cc_default_name</a> (krb5_context context)</td></tr> 58 59<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 60krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#gd7d54822ef022f3e27f7f0f457d9c751">krb5_cc_default</a> (krb5_context context, krb5_ccache *id)</td></tr> 61 62<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 63krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#gb66e7ef829afdad1cd37c1ead2262843">krb5_cc_initialize</a> (krb5_context context, krb5_ccache id, krb5_principal primary_principal)</td></tr> 64 65<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 66krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g3115bcccd71594374831caa9a07b1290">krb5_cc_destroy</a> (krb5_context context, krb5_ccache id)</td></tr> 67 68<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 69krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#gebc0dd2a77529c05fb49e27235da7017">krb5_cc_close</a> (krb5_context context, krb5_ccache id)</td></tr> 70 71<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 72krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g7092b498b9acfab73491d9b15c1bc821">krb5_cc_store_cred</a> (krb5_context context, krb5_ccache id, krb5_creds *creds)</td></tr> 73 74<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 75krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g7ae6118dc052a0b5fbae2e73596b9cf7">krb5_cc_retrieve_cred</a> (krb5_context context, krb5_ccache id, krb5_flags whichfields, const krb5_creds *mcreds, krb5_creds *creds)</td></tr> 76 77<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 78krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g0d0b8a8698b3bfb079d235a1232160fd">krb5_cc_get_principal</a> (krb5_context context, krb5_ccache id, krb5_principal *principal)</td></tr> 79 80<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 81krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#gcbf766cea6b49dd64b76628c7708b979">krb5_cc_start_seq_get</a> (krb5_context context, const krb5_ccache id, krb5_cc_cursor *cursor)</td></tr> 82 83<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 84krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#gd9cd0ebcc7bdf3ca2b0ed166ea2f8df6">krb5_cc_next_cred</a> (krb5_context context, const krb5_ccache id, krb5_cc_cursor *cursor, krb5_creds *creds)</td></tr> 85 86<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 87krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g024ce036ebf277f918354d4681bd0550">krb5_cc_end_seq_get</a> (krb5_context context, const krb5_ccache id, krb5_cc_cursor *cursor)</td></tr> 88 89<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 90krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g46126e8ea4420b494fd7f5c8dc7a5fda">krb5_cc_remove_cred</a> (krb5_context context, krb5_ccache id, krb5_flags which, krb5_creds *cred)</td></tr> 91 92<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 93krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g289cc14cd4b24c5f30031f9bd17db857">krb5_cc_set_flags</a> (krb5_context context, krb5_ccache id, krb5_flags flags)</td></tr> 94 95<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 96krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g5ce8d7a3dafd8d750c4e98429205f737">krb5_cc_get_flags</a> (krb5_context context, krb5_ccache id, krb5_flags *flags)</td></tr> 97 98<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 99krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g432b6b4e84262d1f3f84ff36cf9da57e">krb5_cc_copy_match_f</a> (krb5_context context, const krb5_ccache from, krb5_ccache to, krb5_boolean(*match)(krb5_context, void *, const krb5_creds *), void *matchctx, unsigned int *matched)</td></tr> 100 101<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 102krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#gc68afe0efd13b8ef5489ddde21e49525">krb5_cc_copy_cache</a> (krb5_context context, const krb5_ccache from, krb5_ccache to)</td></tr> 103 104<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 105krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g83845338ad0292cff8b9e34955c32ace">krb5_cc_get_version</a> (krb5_context context, const krb5_ccache id)</td></tr> 106 107<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION void <br> 108KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g704afc89612843c7844e0eca7a9c26f3">krb5_cc_clear_mcred</a> (krb5_creds *mcred)</td></tr> 109 110<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION const <br> 111krb5_cc_ops *KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g2a9faa8374678785261160e2966343db">krb5_cc_get_prefix_ops</a> (krb5_context context, const char *prefix)</td></tr> 112 113<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 114krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#gac7e0690f9b79ca82d4037467f587741">krb5_cc_cache_get_first</a> (krb5_context context, const char *type, krb5_cc_cache_cursor *cursor)</td></tr> 115 116<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 117krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g7c61cdcba0ac4a2584ac080d3e6210bd">krb5_cc_cache_next</a> (krb5_context context, krb5_cc_cache_cursor cursor, krb5_ccache *id)</td></tr> 118 119<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 120krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g79777e9758a9ff1beb2fd84a90cbd52c">krb5_cc_cache_end_seq_get</a> (krb5_context context, krb5_cc_cache_cursor cursor)</td></tr> 121 122<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 123krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g6ff680ba8ad9e4e81131d421d751c22a">krb5_cc_cache_match</a> (krb5_context context, krb5_principal client, krb5_ccache *id)</td></tr> 124 125<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 126krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#gbf9f97e04dd6fceb4f0a73afb819c16c">krb5_cc_move</a> (krb5_context context, krb5_ccache from, krb5_ccache to)</td></tr> 127 128<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION krb5_boolean <br> 129KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g7aae400e0b7a263ed7de884ed0a433be">krb5_is_config_principal</a> (krb5_context context, krb5_const_principal principal)</td></tr> 130 131<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 132krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g562a222918f31fb27ba2060af2ae315b">krb5_cc_set_config</a> (krb5_context context, krb5_ccache id, krb5_const_principal principal, const char *name, krb5_data *data)</td></tr> 133 134<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 135krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#gd4161eacf89b11edbe222b74c9e6fbef">krb5_cc_get_config</a> (krb5_context context, krb5_ccache id, krb5_const_principal principal, const char *name, krb5_data *data)</td></tr> 136 137<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 138krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g06b59cb27291f73994294ac9567c5d9b">krb5_cccol_cursor_new</a> (krb5_context context, krb5_cccol_cursor *cursor)</td></tr> 139 140<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 141krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g3f1e7d611a7e16c9d7f1d2f171b72542">krb5_cccol_cursor_next</a> (krb5_context context, krb5_cccol_cursor cursor, krb5_ccache *cache)</td></tr> 142 143<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 144krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g45efd722e955444f3d6083966446fd54">krb5_cccol_cursor_free</a> (krb5_context context, krb5_cccol_cursor *cursor)</td></tr> 145 146<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 147krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g90e97172b4cc6bd3f64290cf93236c52">krb5_cc_last_change_time</a> (krb5_context context, krb5_ccache id, krb5_timestamp *mtime)</td></tr> 148 149<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 150krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g058a08546f002063625d22a3ebc94897">krb5_cccol_last_change_time</a> (krb5_context context, const char *type, krb5_timestamp *mtime)</td></tr> 151 152<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 153krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g085a03429338d58cae4599e0a028e995">krb5_cc_get_friendly_name</a> (krb5_context context, krb5_ccache id, char **name)</td></tr> 154 155<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 156krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#gc0765d91e9cc8936dc8fcbd0abddcb78">krb5_cc_set_friendly_name</a> (krb5_context context, krb5_ccache id, const char *name)</td></tr> 157 158<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 159krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g353afddbcbe2f4acc00971888962567f">krb5_cc_get_lifetime</a> (krb5_context context, krb5_ccache id, time_t *t)</td></tr> 160 161<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 162krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g51ceb3c48f1c1abc73beadb5d6f34621">krb5_cc_set_kdc_offset</a> (krb5_context context, krb5_ccache id, krb5_deltat offset)</td></tr> 163 164<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 165krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g670e4b093c4f858687e0646641b0024c">krb5_cc_get_kdc_offset</a> (krb5_context context, krb5_ccache id, krb5_deltat *offset)</td></tr> 166 167<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 168krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g4291d5acf30523b93f84fe9473aed4e4">krb5_cc_gen_new</a> (krb5_context context, const krb5_cc_ops *ops, krb5_ccache *id) KRB5_DEPRECATED_FUNCTION("Use X instead")</td></tr> 169 170<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 171krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g6eb819810e7d74f09ae902f1ea784066">krb5_cc_copy_creds</a> (krb5_context context, const krb5_ccache from, krb5_ccache to)</td></tr> 172 173<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 174krb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g00aae24e7570d1aea954c173287900bc">krb5_get_validated_creds</a> (krb5_context context, krb5_creds *creds, krb5_principal client, krb5_ccache ccache, char *service)</td></tr> 175 176<tr><td colspan="2"><br><h2>Variables</h2></td></tr> 177<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_VARIABLE const krb5_cc_ops </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g6e72d7bbecc876f7265e4b20f087e04f">krb5_acc_ops</a></td></tr> 178 179<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_VARIABLE const krb5_cc_ops </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#gff6f544b45b0b7662443e70609527702">krb5_fcc_ops</a></td></tr> 180 181<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_VARIABLE const krb5_cc_ops </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__ccache.html#g4b23b96d2f610d79c642d516eb4d067c">krb5_mcc_ops</a></td></tr> 182 183</table> 184<hr><a name="_details"></a><h2>Detailed Description</h2> 185<hr><h2>Function Documentation</h2> 186<a class="anchor" name="g79777e9758a9ff1beb2fd84a90cbd52c"></a><!-- doxytag: member="cache.c::krb5_cc_cache_end_seq_get" ref="g79777e9758a9ff1beb2fd84a90cbd52c" args="(krb5_context context, krb5_cc_cache_cursor cursor)" --> 187<div class="memitem"> 188<div class="memproto"> 189 <table class="memname"> 190 <tr> 191 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_cache_end_seq_get </td> 192 <td>(</td> 193 <td class="paramtype">krb5_context </td> 194 <td class="paramname"> <em>context</em>, </td> 195 </tr> 196 <tr> 197 <td class="paramkey"></td> 198 <td></td> 199 <td class="paramtype">krb5_cc_cache_cursor </td> 200 <td class="paramname"> <em>cursor</em></td><td> </td> 201 </tr> 202 <tr> 203 <td></td> 204 <td>)</td> 205 <td></td><td></td><td></td> 206 </tr> 207 </table> 208</div> 209<div class="memdoc"> 210 211<p> 212Destroy the cursor `cursor'.<p> 213<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 214 215</div> 216</div><p> 217<a class="anchor" name="gac7e0690f9b79ca82d4037467f587741"></a><!-- doxytag: member="cache.c::krb5_cc_cache_get_first" ref="gac7e0690f9b79ca82d4037467f587741" args="(krb5_context context, const char *type, krb5_cc_cache_cursor *cursor)" --> 218<div class="memitem"> 219<div class="memproto"> 220 <table class="memname"> 221 <tr> 222 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_cache_get_first </td> 223 <td>(</td> 224 <td class="paramtype">krb5_context </td> 225 <td class="paramname"> <em>context</em>, </td> 226 </tr> 227 <tr> 228 <td class="paramkey"></td> 229 <td></td> 230 <td class="paramtype">const char * </td> 231 <td class="paramname"> <em>type</em>, </td> 232 </tr> 233 <tr> 234 <td class="paramkey"></td> 235 <td></td> 236 <td class="paramtype">krb5_cc_cache_cursor * </td> 237 <td class="paramname"> <em>cursor</em></td><td> </td> 238 </tr> 239 <tr> 240 <td></td> 241 <td>)</td> 242 <td></td><td></td><td></td> 243 </tr> 244 </table> 245</div> 246<div class="memdoc"> 247 248<p> 249Start iterating over all caches of specified type. See also <a class="el" href="group__krb5__ccache.html#g06b59cb27291f73994294ac9567c5d9b">krb5_cccol_cursor_new()</a>.<p> 250<dl compact><dt><b>Parameters:</b></dt><dd> 251 <table border="0" cellspacing="2" cellpadding="0"> 252 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos 5 context </td></tr> 253 <tr><td valign="top"></td><td valign="top"><em>type</em> </td><td>optional type to iterate over, if NULL, the default cache is used. </td></tr> 254 <tr><td valign="top"></td><td valign="top"><em>cursor</em> </td><td>cursor should be freed with <a class="el" href="group__krb5__ccache.html#g79777e9758a9ff1beb2fd84a90cbd52c">krb5_cc_cache_end_seq_get()</a>.</td></tr> 255 </table> 256</dl> 257<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 258 259</div> 260</div><p> 261<a class="anchor" name="g6ff680ba8ad9e4e81131d421d751c22a"></a><!-- doxytag: member="cache.c::krb5_cc_cache_match" ref="g6ff680ba8ad9e4e81131d421d751c22a" args="(krb5_context context, krb5_principal client, krb5_ccache *id)" --> 262<div class="memitem"> 263<div class="memproto"> 264 <table class="memname"> 265 <tr> 266 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_cache_match </td> 267 <td>(</td> 268 <td class="paramtype">krb5_context </td> 269 <td class="paramname"> <em>context</em>, </td> 270 </tr> 271 <tr> 272 <td class="paramkey"></td> 273 <td></td> 274 <td class="paramtype">krb5_principal </td> 275 <td class="paramname"> <em>client</em>, </td> 276 </tr> 277 <tr> 278 <td class="paramkey"></td> 279 <td></td> 280 <td class="paramtype">krb5_ccache * </td> 281 <td class="paramname"> <em>id</em></td><td> </td> 282 </tr> 283 <tr> 284 <td></td> 285 <td>)</td> 286 <td></td><td></td><td></td> 287 </tr> 288 </table> 289</div> 290<div class="memdoc"> 291 292<p> 293Search for a matching credential cache that have the `principal' as the default principal. On success, `id' needs to be freed with <a class="el" href="group__krb5__ccache.html#gebc0dd2a77529c05fb49e27235da7017">krb5_cc_close()</a> or <a class="el" href="group__krb5__ccache.html#g3115bcccd71594374831caa9a07b1290">krb5_cc_destroy()</a>.<p> 294<dl compact><dt><b>Parameters:</b></dt><dd> 295 <table border="0" cellspacing="2" cellpadding="0"> 296 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos 5 context </td></tr> 297 <tr><td valign="top"></td><td valign="top"><em>client</em> </td><td>The principal to search for </td></tr> 298 <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>the returned credential cache</td></tr> 299 </table> 300</dl> 301<dl class="return" compact><dt><b>Returns:</b></dt><dd>On failure, error code is returned and `id' is set to NULL. </dd></dl> 302 303</div> 304</div><p> 305<a class="anchor" name="g7c61cdcba0ac4a2584ac080d3e6210bd"></a><!-- doxytag: member="cache.c::krb5_cc_cache_next" ref="g7c61cdcba0ac4a2584ac080d3e6210bd" args="(krb5_context context, krb5_cc_cache_cursor cursor, krb5_ccache *id)" --> 306<div class="memitem"> 307<div class="memproto"> 308 <table class="memname"> 309 <tr> 310 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_cache_next </td> 311 <td>(</td> 312 <td class="paramtype">krb5_context </td> 313 <td class="paramname"> <em>context</em>, </td> 314 </tr> 315 <tr> 316 <td class="paramkey"></td> 317 <td></td> 318 <td class="paramtype">krb5_cc_cache_cursor </td> 319 <td class="paramname"> <em>cursor</em>, </td> 320 </tr> 321 <tr> 322 <td class="paramkey"></td> 323 <td></td> 324 <td class="paramtype">krb5_ccache * </td> 325 <td class="paramname"> <em>id</em></td><td> </td> 326 </tr> 327 <tr> 328 <td></td> 329 <td>)</td> 330 <td></td><td></td><td></td> 331 </tr> 332 </table> 333</div> 334<div class="memdoc"> 335 336<p> 337Retrieve the next cache pointed to by (`cursor') in `id' and advance `cursor'.<p> 338<dl compact><dt><b>Parameters:</b></dt><dd> 339 <table border="0" cellspacing="2" cellpadding="0"> 340 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos 5 context </td></tr> 341 <tr><td valign="top"></td><td valign="top"><em>cursor</em> </td><td>the iterator cursor, returned by <a class="el" href="group__krb5__ccache.html#gac7e0690f9b79ca82d4037467f587741">krb5_cc_cache_get_first()</a> </td></tr> 342 <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>next ccache</td></tr> 343 </table> 344</dl> 345<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return 0 or an error code. Returns KRB5_CC_END when the end of caches is reached, see krb5_get_error_message(). </dd></dl> 346 347</div> 348</div><p> 349<a class="anchor" name="g704afc89612843c7844e0eca7a9c26f3"></a><!-- doxytag: member="cache.c::krb5_cc_clear_mcred" ref="g704afc89612843c7844e0eca7a9c26f3" args="(krb5_creds *mcred)" --> 350<div class="memitem"> 351<div class="memproto"> 352 <table class="memname"> 353 <tr> 354 <td class="memname">KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_cc_clear_mcred </td> 355 <td>(</td> 356 <td class="paramtype">krb5_creds * </td> 357 <td class="paramname"> <em>mcred</em> </td> 358 <td> ) </td> 359 <td></td> 360 </tr> 361 </table> 362</div> 363<div class="memdoc"> 364 365<p> 366Clear `mcreds' so it can be used with krb5_cc_retrieve_cred 367</div> 368</div><p> 369<a class="anchor" name="gebc0dd2a77529c05fb49e27235da7017"></a><!-- doxytag: member="cache.c::krb5_cc_close" ref="gebc0dd2a77529c05fb49e27235da7017" args="(krb5_context context, krb5_ccache id)" --> 370<div class="memitem"> 371<div class="memproto"> 372 <table class="memname"> 373 <tr> 374 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_close </td> 375 <td>(</td> 376 <td class="paramtype">krb5_context </td> 377 <td class="paramname"> <em>context</em>, </td> 378 </tr> 379 <tr> 380 <td class="paramkey"></td> 381 <td></td> 382 <td class="paramtype">krb5_ccache </td> 383 <td class="paramname"> <em>id</em></td><td> </td> 384 </tr> 385 <tr> 386 <td></td> 387 <td>)</td> 388 <td></td><td></td><td></td> 389 </tr> 390 </table> 391</div> 392<div class="memdoc"> 393 394<p> 395Stop using the ccache `id' and free the related resources.<p> 396<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 397 398</div> 399</div><p> 400<a class="anchor" name="gc68afe0efd13b8ef5489ddde21e49525"></a><!-- doxytag: member="cache.c::krb5_cc_copy_cache" ref="gc68afe0efd13b8ef5489ddde21e49525" args="(krb5_context context, const krb5_ccache from, krb5_ccache to)" --> 401<div class="memitem"> 402<div class="memproto"> 403 <table class="memname"> 404 <tr> 405 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_copy_cache </td> 406 <td>(</td> 407 <td class="paramtype">krb5_context </td> 408 <td class="paramname"> <em>context</em>, </td> 409 </tr> 410 <tr> 411 <td class="paramkey"></td> 412 <td></td> 413 <td class="paramtype">const krb5_ccache </td> 414 <td class="paramname"> <em>from</em>, </td> 415 </tr> 416 <tr> 417 <td class="paramkey"></td> 418 <td></td> 419 <td class="paramtype">krb5_ccache </td> 420 <td class="paramname"> <em>to</em></td><td> </td> 421 </tr> 422 <tr> 423 <td></td> 424 <td>)</td> 425 <td></td><td></td><td></td> 426 </tr> 427 </table> 428</div> 429<div class="memdoc"> 430 431<p> 432Just like <a class="el" href="group__krb5__ccache.html#g432b6b4e84262d1f3f84ff36cf9da57e">krb5_cc_copy_match_f()</a>, but copy everything.<p> 433@ 434</div> 435</div><p> 436<a class="anchor" name="g6eb819810e7d74f09ae902f1ea784066"></a><!-- doxytag: member="mit_glue.c::krb5_cc_copy_creds" ref="g6eb819810e7d74f09ae902f1ea784066" args="(krb5_context context, const krb5_ccache from, krb5_ccache to)" --> 437<div class="memitem"> 438<div class="memproto"> 439 <table class="memname"> 440 <tr> 441 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_copy_creds </td> 442 <td>(</td> 443 <td class="paramtype">krb5_context </td> 444 <td class="paramname"> <em>context</em>, </td> 445 </tr> 446 <tr> 447 <td class="paramkey"></td> 448 <td></td> 449 <td class="paramtype">const krb5_ccache </td> 450 <td class="paramname"> <em>from</em>, </td> 451 </tr> 452 <tr> 453 <td class="paramkey"></td> 454 <td></td> 455 <td class="paramtype">krb5_ccache </td> 456 <td class="paramname"> <em>to</em></td><td> </td> 457 </tr> 458 <tr> 459 <td></td> 460 <td>)</td> 461 <td></td><td></td><td></td> 462 </tr> 463 </table> 464</div> 465<div class="memdoc"> 466 467<p> 468MIT compat glue 469</div> 470</div><p> 471<a class="anchor" name="g432b6b4e84262d1f3f84ff36cf9da57e"></a><!-- doxytag: member="cache.c::krb5_cc_copy_match_f" ref="g432b6b4e84262d1f3f84ff36cf9da57e" args="(krb5_context context, const krb5_ccache from, krb5_ccache to, krb5_boolean(*match)(krb5_context, void *, const krb5_creds *), void *matchctx, unsigned int *matched)" --> 472<div class="memitem"> 473<div class="memproto"> 474 <table class="memname"> 475 <tr> 476 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_copy_match_f </td> 477 <td>(</td> 478 <td class="paramtype">krb5_context </td> 479 <td class="paramname"> <em>context</em>, </td> 480 </tr> 481 <tr> 482 <td class="paramkey"></td> 483 <td></td> 484 <td class="paramtype">const krb5_ccache </td> 485 <td class="paramname"> <em>from</em>, </td> 486 </tr> 487 <tr> 488 <td class="paramkey"></td> 489 <td></td> 490 <td class="paramtype">krb5_ccache </td> 491 <td class="paramname"> <em>to</em>, </td> 492 </tr> 493 <tr> 494 <td class="paramkey"></td> 495 <td></td> 496 <td class="paramtype">krb5_boolean(*)(krb5_context, void *, const krb5_creds *) </td> 497 <td class="paramname"> <em>match</em>, </td> 498 </tr> 499 <tr> 500 <td class="paramkey"></td> 501 <td></td> 502 <td class="paramtype">void * </td> 503 <td class="paramname"> <em>matchctx</em>, </td> 504 </tr> 505 <tr> 506 <td class="paramkey"></td> 507 <td></td> 508 <td class="paramtype">unsigned int * </td> 509 <td class="paramname"> <em>matched</em></td><td> </td> 510 </tr> 511 <tr> 512 <td></td> 513 <td>)</td> 514 <td></td><td></td><td></td> 515 </tr> 516 </table> 517</div> 518<div class="memdoc"> 519 520<p> 521Copy the contents of `from' to `to' if the given match function return true.<p> 522<dl compact><dt><b>Parameters:</b></dt><dd> 523 <table border="0" cellspacing="2" cellpadding="0"> 524 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos 5 context. </td></tr> 525 <tr><td valign="top"></td><td valign="top"><em>from</em> </td><td>the cache to copy data from. </td></tr> 526 <tr><td valign="top"></td><td valign="top"><em>to</em> </td><td>the cache to copy data to. </td></tr> 527 <tr><td valign="top"></td><td valign="top"><em>match</em> </td><td>a match function that should return TRUE if cred argument should be copied, if NULL, all credentials are copied. </td></tr> 528 <tr><td valign="top"></td><td valign="top"><em>matchctx</em> </td><td>context passed to match function. </td></tr> 529 <tr><td valign="top"></td><td valign="top"><em>matched</em> </td><td>set to true if there was a credential that matched, may be NULL.</td></tr> 530 </table> 531</dl> 532<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 533 534</div> 535</div><p> 536<a class="anchor" name="gd7d54822ef022f3e27f7f0f457d9c751"></a><!-- doxytag: member="cache.c::krb5_cc_default" ref="gd7d54822ef022f3e27f7f0f457d9c751" args="(krb5_context context, krb5_ccache *id)" --> 537<div class="memitem"> 538<div class="memproto"> 539 <table class="memname"> 540 <tr> 541 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_default </td> 542 <td>(</td> 543 <td class="paramtype">krb5_context </td> 544 <td class="paramname"> <em>context</em>, </td> 545 </tr> 546 <tr> 547 <td class="paramkey"></td> 548 <td></td> 549 <td class="paramtype">krb5_ccache * </td> 550 <td class="paramname"> <em>id</em></td><td> </td> 551 </tr> 552 <tr> 553 <td></td> 554 <td>)</td> 555 <td></td><td></td><td></td> 556 </tr> 557 </table> 558</div> 559<div class="memdoc"> 560 561<p> 562Open the default ccache in `id'.<p> 563<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 564 565</div> 566</div><p> 567<a class="anchor" name="gbba6e24537d53808ee90eed7551fc0c1"></a><!-- doxytag: member="cache.c::krb5_cc_default_name" ref="gbba6e24537d53808ee90eed7551fc0c1" args="(krb5_context context)" --> 568<div class="memitem"> 569<div class="memproto"> 570 <table class="memname"> 571 <tr> 572 <td class="memname">KRB5_LIB_FUNCTION const char* KRB5_LIB_CALL krb5_cc_default_name </td> 573 <td>(</td> 574 <td class="paramtype">krb5_context </td> 575 <td class="paramname"> <em>context</em> </td> 576 <td> ) </td> 577 <td></td> 578 </tr> 579 </table> 580</div> 581<div class="memdoc"> 582 583<p> 584Return a pointer to a context static string containing the default ccache name.<p> 585<dl class="return" compact><dt><b>Returns:</b></dt><dd>String to the default credential cache name. </dd></dl> 586 587</div> 588</div><p> 589<a class="anchor" name="g3115bcccd71594374831caa9a07b1290"></a><!-- doxytag: member="cache.c::krb5_cc_destroy" ref="g3115bcccd71594374831caa9a07b1290" args="(krb5_context context, krb5_ccache id)" --> 590<div class="memitem"> 591<div class="memproto"> 592 <table class="memname"> 593 <tr> 594 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_destroy </td> 595 <td>(</td> 596 <td class="paramtype">krb5_context </td> 597 <td class="paramname"> <em>context</em>, </td> 598 </tr> 599 <tr> 600 <td class="paramkey"></td> 601 <td></td> 602 <td class="paramtype">krb5_ccache </td> 603 <td class="paramname"> <em>id</em></td><td> </td> 604 </tr> 605 <tr> 606 <td></td> 607 <td>)</td> 608 <td></td><td></td><td></td> 609 </tr> 610 </table> 611</div> 612<div class="memdoc"> 613 614<p> 615Remove the ccache `id'.<p> 616<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 617 618</div> 619</div><p> 620<a class="anchor" name="g024ce036ebf277f918354d4681bd0550"></a><!-- doxytag: member="cache.c::krb5_cc_end_seq_get" ref="g024ce036ebf277f918354d4681bd0550" args="(krb5_context context, const krb5_ccache id, krb5_cc_cursor *cursor)" --> 621<div class="memitem"> 622<div class="memproto"> 623 <table class="memname"> 624 <tr> 625 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_end_seq_get </td> 626 <td>(</td> 627 <td class="paramtype">krb5_context </td> 628 <td class="paramname"> <em>context</em>, </td> 629 </tr> 630 <tr> 631 <td class="paramkey"></td> 632 <td></td> 633 <td class="paramtype">const krb5_ccache </td> 634 <td class="paramname"> <em>id</em>, </td> 635 </tr> 636 <tr> 637 <td class="paramkey"></td> 638 <td></td> 639 <td class="paramtype">krb5_cc_cursor * </td> 640 <td class="paramname"> <em>cursor</em></td><td> </td> 641 </tr> 642 <tr> 643 <td></td> 644 <td>)</td> 645 <td></td><td></td><td></td> 646 </tr> 647 </table> 648</div> 649<div class="memdoc"> 650 651<p> 652Destroy the cursor `cursor'. 653</div> 654</div><p> 655<a class="anchor" name="g4291d5acf30523b93f84fe9473aed4e4"></a><!-- doxytag: member="deprecated.c::krb5_cc_gen_new" ref="g4291d5acf30523b93f84fe9473aed4e4" args="(krb5_context context, const krb5_cc_ops *ops, krb5_ccache *id) KRB5_DEPRECATED_FUNCTION("Use X instead")" --> 656<div class="memitem"> 657<div class="memproto"> 658 <table class="memname"> 659 <tr> 660 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_gen_new </td> 661 <td>(</td> 662 <td class="paramtype">krb5_context </td> 663 <td class="paramname"> <em>context</em>, </td> 664 </tr> 665 <tr> 666 <td class="paramkey"></td> 667 <td></td> 668 <td class="paramtype">const krb5_cc_ops * </td> 669 <td class="paramname"> <em>ops</em>, </td> 670 </tr> 671 <tr> 672 <td class="paramkey"></td> 673 <td></td> 674 <td class="paramtype">krb5_ccache * </td> 675 <td class="paramname"> <em>id</em></td><td> </td> 676 </tr> 677 <tr> 678 <td></td> 679 <td>)</td> 680 <td></td><td></td><td></td> 681 </tr> 682 </table> 683</div> 684<div class="memdoc"> 685 686<p> 687Generate a new ccache of type `ops' in `id'.<p> 688Deprecated: use <a class="el" href="group__krb5__ccache.html#g86c0f70d0c2b5de2d876edf4b693b5b9">krb5_cc_new_unique()</a> instead.<p> 689<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 690 691</div> 692</div><p> 693<a class="anchor" name="gd4161eacf89b11edbe222b74c9e6fbef"></a><!-- doxytag: member="cache.c::krb5_cc_get_config" ref="gd4161eacf89b11edbe222b74c9e6fbef" args="(krb5_context context, krb5_ccache id, krb5_const_principal principal, const char *name, krb5_data *data)" --> 694<div class="memitem"> 695<div class="memproto"> 696 <table class="memname"> 697 <tr> 698 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_get_config </td> 699 <td>(</td> 700 <td class="paramtype">krb5_context </td> 701 <td class="paramname"> <em>context</em>, </td> 702 </tr> 703 <tr> 704 <td class="paramkey"></td> 705 <td></td> 706 <td class="paramtype">krb5_ccache </td> 707 <td class="paramname"> <em>id</em>, </td> 708 </tr> 709 <tr> 710 <td class="paramkey"></td> 711 <td></td> 712 <td class="paramtype">krb5_const_principal </td> 713 <td class="paramname"> <em>principal</em>, </td> 714 </tr> 715 <tr> 716 <td class="paramkey"></td> 717 <td></td> 718 <td class="paramtype">const char * </td> 719 <td class="paramname"> <em>name</em>, </td> 720 </tr> 721 <tr> 722 <td class="paramkey"></td> 723 <td></td> 724 <td class="paramtype">krb5_data * </td> 725 <td class="paramname"> <em>data</em></td><td> </td> 726 </tr> 727 <tr> 728 <td></td> 729 <td>)</td> 730 <td></td><td></td><td></td> 731 </tr> 732 </table> 733</div> 734<div class="memdoc"> 735 736<p> 737Get some configuration for the credential cache in the cache.<p> 738<dl compact><dt><b>Parameters:</b></dt><dd> 739 <table border="0" cellspacing="2" cellpadding="0"> 740 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context </td></tr> 741 <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>the credential cache to store the data for </td></tr> 742 <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>configuration for a specific principal, if NULL, global for the whole cache. </td></tr> 743 <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>name under which the configuraion is stored. </td></tr> 744 <tr><td valign="top"></td><td valign="top"><em>data</em> </td><td>data to fetched, free with <a class="el" href="group__krb5.html#gb4b80ac7a8bbab89fe947ae1c7828ea8">krb5_data_free()</a> </td></tr> 745 </table> 746</dl> 747 748</div> 749</div><p> 750<a class="anchor" name="g5ce8d7a3dafd8d750c4e98429205f737"></a><!-- doxytag: member="cache.c::krb5_cc_get_flags" ref="g5ce8d7a3dafd8d750c4e98429205f737" args="(krb5_context context, krb5_ccache id, krb5_flags *flags)" --> 751<div class="memitem"> 752<div class="memproto"> 753 <table class="memname"> 754 <tr> 755 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_get_flags </td> 756 <td>(</td> 757 <td class="paramtype">krb5_context </td> 758 <td class="paramname"> <em>context</em>, </td> 759 </tr> 760 <tr> 761 <td class="paramkey"></td> 762 <td></td> 763 <td class="paramtype">krb5_ccache </td> 764 <td class="paramname"> <em>id</em>, </td> 765 </tr> 766 <tr> 767 <td class="paramkey"></td> 768 <td></td> 769 <td class="paramtype">krb5_flags * </td> 770 <td class="paramname"> <em>flags</em></td><td> </td> 771 </tr> 772 <tr> 773 <td></td> 774 <td>)</td> 775 <td></td><td></td><td></td> 776 </tr> 777 </table> 778</div> 779<div class="memdoc"> 780 781<p> 782Get the flags of `id', store them in `flags'. 783</div> 784</div><p> 785<a class="anchor" name="g085a03429338d58cae4599e0a028e995"></a><!-- doxytag: member="cache.c::krb5_cc_get_friendly_name" ref="g085a03429338d58cae4599e0a028e995" args="(krb5_context context, krb5_ccache id, char **name)" --> 786<div class="memitem"> 787<div class="memproto"> 788 <table class="memname"> 789 <tr> 790 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_get_friendly_name </td> 791 <td>(</td> 792 <td class="paramtype">krb5_context </td> 793 <td class="paramname"> <em>context</em>, </td> 794 </tr> 795 <tr> 796 <td class="paramkey"></td> 797 <td></td> 798 <td class="paramtype">krb5_ccache </td> 799 <td class="paramname"> <em>id</em>, </td> 800 </tr> 801 <tr> 802 <td class="paramkey"></td> 803 <td></td> 804 <td class="paramtype">char ** </td> 805 <td class="paramname"> <em>name</em></td><td> </td> 806 </tr> 807 <tr> 808 <td></td> 809 <td>)</td> 810 <td></td><td></td><td></td> 811 </tr> 812 </table> 813</div> 814<div class="memdoc"> 815 816<p> 817Return a friendly name on credential cache. Free the result with krb5_xfree().<p> 818<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 819 820</div> 821</div><p> 822<a class="anchor" name="g8cd3ff7e8d884abfab2805b50c9fc5bf"></a><!-- doxytag: member="cache.c::krb5_cc_get_full_name" ref="g8cd3ff7e8d884abfab2805b50c9fc5bf" args="(krb5_context context, krb5_ccache id, char **str)" --> 823<div class="memitem"> 824<div class="memproto"> 825 <table class="memname"> 826 <tr> 827 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_get_full_name </td> 828 <td>(</td> 829 <td class="paramtype">krb5_context </td> 830 <td class="paramname"> <em>context</em>, </td> 831 </tr> 832 <tr> 833 <td class="paramkey"></td> 834 <td></td> 835 <td class="paramtype">krb5_ccache </td> 836 <td class="paramname"> <em>id</em>, </td> 837 </tr> 838 <tr> 839 <td class="paramkey"></td> 840 <td></td> 841 <td class="paramtype">char ** </td> 842 <td class="paramname"> <em>str</em></td><td> </td> 843 </tr> 844 <tr> 845 <td></td> 846 <td>)</td> 847 <td></td><td></td><td></td> 848 </tr> 849 </table> 850</div> 851<div class="memdoc"> 852 853<p> 854Return the complete resolvable name the cache<p> 855<dl compact><dt><b>Parameters:</b></dt><dd> 856 <table border="0" cellspacing="2" cellpadding="0"> 857 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context </td></tr> 858 <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>return pointer to a found credential cache </td></tr> 859 <tr><td valign="top"></td><td valign="top"><em>str</em> </td><td>the returned name of a credential cache, free with krb5_xfree()</td></tr> 860 </table> 861</dl> 862<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns 0 or an error (and then *str is set to NULL). </dd></dl> 863 864</div> 865</div><p> 866<a class="anchor" name="g670e4b093c4f858687e0646641b0024c"></a><!-- doxytag: member="cache.c::krb5_cc_get_kdc_offset" ref="g670e4b093c4f858687e0646641b0024c" args="(krb5_context context, krb5_ccache id, krb5_deltat *offset)" --> 867<div class="memitem"> 868<div class="memproto"> 869 <table class="memname"> 870 <tr> 871 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_get_kdc_offset </td> 872 <td>(</td> 873 <td class="paramtype">krb5_context </td> 874 <td class="paramname"> <em>context</em>, </td> 875 </tr> 876 <tr> 877 <td class="paramkey"></td> 878 <td></td> 879 <td class="paramtype">krb5_ccache </td> 880 <td class="paramname"> <em>id</em>, </td> 881 </tr> 882 <tr> 883 <td class="paramkey"></td> 884 <td></td> 885 <td class="paramtype">krb5_deltat * </td> 886 <td class="paramname"> <em>offset</em></td><td> </td> 887 </tr> 888 <tr> 889 <td></td> 890 <td>)</td> 891 <td></td><td></td><td></td> 892 </tr> 893 </table> 894</div> 895<div class="memdoc"> 896 897<p> 898Get the time offset betwen the client and the KDC<p> 899If the backend doesn't support KDC offset, use the context global setting.<p> 900<dl compact><dt><b>Parameters:</b></dt><dd> 901 <table border="0" cellspacing="2" cellpadding="0"> 902 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos 5 context. </td></tr> 903 <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>a credential cache </td></tr> 904 <tr><td valign="top"></td><td valign="top"><em>offset</em> </td><td>the offset in seconds</td></tr> 905 </table> 906</dl> 907<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 908 909</div> 910</div><p> 911<a class="anchor" name="g353afddbcbe2f4acc00971888962567f"></a><!-- doxytag: member="cache.c::krb5_cc_get_lifetime" ref="g353afddbcbe2f4acc00971888962567f" args="(krb5_context context, krb5_ccache id, time_t *t)" --> 912<div class="memitem"> 913<div class="memproto"> 914 <table class="memname"> 915 <tr> 916 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_get_lifetime </td> 917 <td>(</td> 918 <td class="paramtype">krb5_context </td> 919 <td class="paramname"> <em>context</em>, </td> 920 </tr> 921 <tr> 922 <td class="paramkey"></td> 923 <td></td> 924 <td class="paramtype">krb5_ccache </td> 925 <td class="paramname"> <em>id</em>, </td> 926 </tr> 927 <tr> 928 <td class="paramkey"></td> 929 <td></td> 930 <td class="paramtype">time_t * </td> 931 <td class="paramname"> <em>t</em></td><td> </td> 932 </tr> 933 <tr> 934 <td></td> 935 <td>)</td> 936 <td></td><td></td><td></td> 937 </tr> 938 </table> 939</div> 940<div class="memdoc"> 941 942<p> 943Get the lifetime of the initial ticket in the cache<p> 944Get the lifetime of the initial ticket in the cache, if the initial ticket was not found, the error code KRB5_CC_END is returned.<p> 945<dl compact><dt><b>Parameters:</b></dt><dd> 946 <table border="0" cellspacing="2" cellpadding="0"> 947 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos 5 context. </td></tr> 948 <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>a credential cache </td></tr> 949 <tr><td valign="top"></td><td valign="top"><em>t</em> </td><td>the relative lifetime of the initial ticket</td></tr> 950 </table> 951</dl> 952<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 953 954</div> 955</div><p> 956<a class="anchor" name="g99e06555ebd9e2f02ce250918f5ee846"></a><!-- doxytag: member="cache.c::krb5_cc_get_name" ref="g99e06555ebd9e2f02ce250918f5ee846" args="(krb5_context context, krb5_ccache id)" --> 957<div class="memitem"> 958<div class="memproto"> 959 <table class="memname"> 960 <tr> 961 <td class="memname">KRB5_LIB_FUNCTION const char* KRB5_LIB_CALL krb5_cc_get_name </td> 962 <td>(</td> 963 <td class="paramtype">krb5_context </td> 964 <td class="paramname"> <em>context</em>, </td> 965 </tr> 966 <tr> 967 <td class="paramkey"></td> 968 <td></td> 969 <td class="paramtype">krb5_ccache </td> 970 <td class="paramname"> <em>id</em></td><td> </td> 971 </tr> 972 <tr> 973 <td></td> 974 <td>)</td> 975 <td></td><td></td><td></td> 976 </tr> 977 </table> 978</div> 979<div class="memdoc"> 980 981<p> 982Return the name of the ccache `id' 983</div> 984</div><p> 985<a class="anchor" name="gd7ee5a815a02d132862f77a7749edf4a"></a><!-- doxytag: member="cache.c::krb5_cc_get_ops" ref="gd7ee5a815a02d132862f77a7749edf4a" args="(krb5_context context, krb5_ccache id)" --> 986<div class="memitem"> 987<div class="memproto"> 988 <table class="memname"> 989 <tr> 990 <td class="memname">KRB5_LIB_FUNCTION const krb5_cc_ops* KRB5_LIB_CALL krb5_cc_get_ops </td> 991 <td>(</td> 992 <td class="paramtype">krb5_context </td> 993 <td class="paramname"> <em>context</em>, </td> 994 </tr> 995 <tr> 996 <td class="paramkey"></td> 997 <td></td> 998 <td class="paramtype">krb5_ccache </td> 999 <td class="paramname"> <em>id</em></td><td> </td> 1000 </tr> 1001 <tr> 1002 <td></td> 1003 <td>)</td> 1004 <td></td><td></td><td></td> 1005 </tr> 1006 </table> 1007</div> 1008<div class="memdoc"> 1009 1010<p> 1011Return krb5_cc_ops of a the ccache `id'. 1012</div> 1013</div><p> 1014<a class="anchor" name="g2a9faa8374678785261160e2966343db"></a><!-- doxytag: member="cache.c::krb5_cc_get_prefix_ops" ref="g2a9faa8374678785261160e2966343db" args="(krb5_context context, const char *prefix)" --> 1015<div class="memitem"> 1016<div class="memproto"> 1017 <table class="memname"> 1018 <tr> 1019 <td class="memname">KRB5_LIB_FUNCTION const krb5_cc_ops* KRB5_LIB_CALL krb5_cc_get_prefix_ops </td> 1020 <td>(</td> 1021 <td class="paramtype">krb5_context </td> 1022 <td class="paramname"> <em>context</em>, </td> 1023 </tr> 1024 <tr> 1025 <td class="paramkey"></td> 1026 <td></td> 1027 <td class="paramtype">const char * </td> 1028 <td class="paramname"> <em>prefix</em></td><td> </td> 1029 </tr> 1030 <tr> 1031 <td></td> 1032 <td>)</td> 1033 <td></td><td></td><td></td> 1034 </tr> 1035 </table> 1036</div> 1037<div class="memdoc"> 1038 1039<p> 1040Get the cc ops that is registered in `context' to handle the prefix. prefix can be a complete credential cache name or a prefix, the function will only use part up to the first colon (:) if there is one. If prefix the argument is NULL, the default ccache implemtation is returned.<p> 1041<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns NULL if ops not found. </dd></dl> 1042 1043</div> 1044</div><p> 1045<a class="anchor" name="g0d0b8a8698b3bfb079d235a1232160fd"></a><!-- doxytag: member="cache.c::krb5_cc_get_principal" ref="g0d0b8a8698b3bfb079d235a1232160fd" args="(krb5_context context, krb5_ccache id, krb5_principal *principal)" --> 1046<div class="memitem"> 1047<div class="memproto"> 1048 <table class="memname"> 1049 <tr> 1050 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_get_principal </td> 1051 <td>(</td> 1052 <td class="paramtype">krb5_context </td> 1053 <td class="paramname"> <em>context</em>, </td> 1054 </tr> 1055 <tr> 1056 <td class="paramkey"></td> 1057 <td></td> 1058 <td class="paramtype">krb5_ccache </td> 1059 <td class="paramname"> <em>id</em>, </td> 1060 </tr> 1061 <tr> 1062 <td class="paramkey"></td> 1063 <td></td> 1064 <td class="paramtype">krb5_principal * </td> 1065 <td class="paramname"> <em>principal</em></td><td> </td> 1066 </tr> 1067 <tr> 1068 <td></td> 1069 <td>)</td> 1070 <td></td><td></td><td></td> 1071 </tr> 1072 </table> 1073</div> 1074<div class="memdoc"> 1075 1076<p> 1077Return the principal of `id' in `principal'.<p> 1078<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 1079 1080</div> 1081</div><p> 1082<a class="anchor" name="g08ab758e7d47c00d266beaff319f2736"></a><!-- doxytag: member="cache.c::krb5_cc_get_type" ref="g08ab758e7d47c00d266beaff319f2736" args="(krb5_context context, krb5_ccache id)" --> 1083<div class="memitem"> 1084<div class="memproto"> 1085 <table class="memname"> 1086 <tr> 1087 <td class="memname">KRB5_LIB_FUNCTION const char* KRB5_LIB_CALL krb5_cc_get_type </td> 1088 <td>(</td> 1089 <td class="paramtype">krb5_context </td> 1090 <td class="paramname"> <em>context</em>, </td> 1091 </tr> 1092 <tr> 1093 <td class="paramkey"></td> 1094 <td></td> 1095 <td class="paramtype">krb5_ccache </td> 1096 <td class="paramname"> <em>id</em></td><td> </td> 1097 </tr> 1098 <tr> 1099 <td></td> 1100 <td>)</td> 1101 <td></td><td></td><td></td> 1102 </tr> 1103 </table> 1104</div> 1105<div class="memdoc"> 1106 1107<p> 1108Return the type of the ccache `id'. 1109</div> 1110</div><p> 1111<a class="anchor" name="g83845338ad0292cff8b9e34955c32ace"></a><!-- doxytag: member="cache.c::krb5_cc_get_version" ref="g83845338ad0292cff8b9e34955c32ace" args="(krb5_context context, const krb5_ccache id)" --> 1112<div class="memitem"> 1113<div class="memproto"> 1114 <table class="memname"> 1115 <tr> 1116 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_get_version </td> 1117 <td>(</td> 1118 <td class="paramtype">krb5_context </td> 1119 <td class="paramname"> <em>context</em>, </td> 1120 </tr> 1121 <tr> 1122 <td class="paramkey"></td> 1123 <td></td> 1124 <td class="paramtype">const krb5_ccache </td> 1125 <td class="paramname"> <em>id</em></td><td> </td> 1126 </tr> 1127 <tr> 1128 <td></td> 1129 <td>)</td> 1130 <td></td><td></td><td></td> 1131 </tr> 1132 </table> 1133</div> 1134<div class="memdoc"> 1135 1136<p> 1137Return the version of `id'. 1138</div> 1139</div><p> 1140<a class="anchor" name="gb66e7ef829afdad1cd37c1ead2262843"></a><!-- doxytag: member="cache.c::krb5_cc_initialize" ref="gb66e7ef829afdad1cd37c1ead2262843" args="(krb5_context context, krb5_ccache id, krb5_principal primary_principal)" --> 1141<div class="memitem"> 1142<div class="memproto"> 1143 <table class="memname"> 1144 <tr> 1145 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_initialize </td> 1146 <td>(</td> 1147 <td class="paramtype">krb5_context </td> 1148 <td class="paramname"> <em>context</em>, </td> 1149 </tr> 1150 <tr> 1151 <td class="paramkey"></td> 1152 <td></td> 1153 <td class="paramtype">krb5_ccache </td> 1154 <td class="paramname"> <em>id</em>, </td> 1155 </tr> 1156 <tr> 1157 <td class="paramkey"></td> 1158 <td></td> 1159 <td class="paramtype">krb5_principal </td> 1160 <td class="paramname"> <em>primary_principal</em></td><td> </td> 1161 </tr> 1162 <tr> 1163 <td></td> 1164 <td>)</td> 1165 <td></td><td></td><td></td> 1166 </tr> 1167 </table> 1168</div> 1169<div class="memdoc"> 1170 1171<p> 1172Create a new ccache in `id' for `primary_principal'.<p> 1173<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 1174 1175</div> 1176</div><p> 1177<a class="anchor" name="g90e97172b4cc6bd3f64290cf93236c52"></a><!-- doxytag: member="cache.c::krb5_cc_last_change_time" ref="g90e97172b4cc6bd3f64290cf93236c52" args="(krb5_context context, krb5_ccache id, krb5_timestamp *mtime)" --> 1178<div class="memitem"> 1179<div class="memproto"> 1180 <table class="memname"> 1181 <tr> 1182 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_last_change_time </td> 1183 <td>(</td> 1184 <td class="paramtype">krb5_context </td> 1185 <td class="paramname"> <em>context</em>, </td> 1186 </tr> 1187 <tr> 1188 <td class="paramkey"></td> 1189 <td></td> 1190 <td class="paramtype">krb5_ccache </td> 1191 <td class="paramname"> <em>id</em>, </td> 1192 </tr> 1193 <tr> 1194 <td class="paramkey"></td> 1195 <td></td> 1196 <td class="paramtype">krb5_timestamp * </td> 1197 <td class="paramname"> <em>mtime</em></td><td> </td> 1198 </tr> 1199 <tr> 1200 <td></td> 1201 <td>)</td> 1202 <td></td><td></td><td></td> 1203 </tr> 1204 </table> 1205</div> 1206<div class="memdoc"> 1207 1208<p> 1209Return the last time the credential cache was modified.<p> 1210<dl compact><dt><b>Parameters:</b></dt><dd> 1211 <table border="0" cellspacing="2" cellpadding="0"> 1212 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos 5 context </td></tr> 1213 <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>The credential cache to probe </td></tr> 1214 <tr><td valign="top"></td><td valign="top"><em>mtime</em> </td><td>the last modification time, set to 0 on error.</td></tr> 1215 </table> 1216</dl> 1217<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return 0 or and error. See krb5_get_error_message(). </dd></dl> 1218 1219</div> 1220</div><p> 1221<a class="anchor" name="gbf9f97e04dd6fceb4f0a73afb819c16c"></a><!-- doxytag: member="cache.c::krb5_cc_move" ref="gbf9f97e04dd6fceb4f0a73afb819c16c" args="(krb5_context context, krb5_ccache from, krb5_ccache to)" --> 1222<div class="memitem"> 1223<div class="memproto"> 1224 <table class="memname"> 1225 <tr> 1226 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_move </td> 1227 <td>(</td> 1228 <td class="paramtype">krb5_context </td> 1229 <td class="paramname"> <em>context</em>, </td> 1230 </tr> 1231 <tr> 1232 <td class="paramkey"></td> 1233 <td></td> 1234 <td class="paramtype">krb5_ccache </td> 1235 <td class="paramname"> <em>from</em>, </td> 1236 </tr> 1237 <tr> 1238 <td class="paramkey"></td> 1239 <td></td> 1240 <td class="paramtype">krb5_ccache </td> 1241 <td class="paramname"> <em>to</em></td><td> </td> 1242 </tr> 1243 <tr> 1244 <td></td> 1245 <td>)</td> 1246 <td></td><td></td><td></td> 1247 </tr> 1248 </table> 1249</div> 1250<div class="memdoc"> 1251 1252<p> 1253Move the content from one credential cache to another. The operation is an atomic switch.<p> 1254<dl compact><dt><b>Parameters:</b></dt><dd> 1255 <table border="0" cellspacing="2" cellpadding="0"> 1256 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context </td></tr> 1257 <tr><td valign="top"></td><td valign="top"><em>from</em> </td><td>the credential cache to move the content from </td></tr> 1258 <tr><td valign="top"></td><td valign="top"><em>to</em> </td><td>the credential cache to move the content to</td></tr> 1259 </table> 1260</dl> 1261<dl class="return" compact><dt><b>Returns:</b></dt><dd>On sucess, from is freed. On failure, error code is returned and from and to are both still allocated, see krb5_get_error_message(). </dd></dl> 1262 1263</div> 1264</div><p> 1265<a class="anchor" name="g86c0f70d0c2b5de2d876edf4b693b5b9"></a><!-- doxytag: member="cache.c::krb5_cc_new_unique" ref="g86c0f70d0c2b5de2d876edf4b693b5b9" args="(krb5_context context, const char *type, const char *hint, krb5_ccache *id)" --> 1266<div class="memitem"> 1267<div class="memproto"> 1268 <table class="memname"> 1269 <tr> 1270 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_new_unique </td> 1271 <td>(</td> 1272 <td class="paramtype">krb5_context </td> 1273 <td class="paramname"> <em>context</em>, </td> 1274 </tr> 1275 <tr> 1276 <td class="paramkey"></td> 1277 <td></td> 1278 <td class="paramtype">const char * </td> 1279 <td class="paramname"> <em>type</em>, </td> 1280 </tr> 1281 <tr> 1282 <td class="paramkey"></td> 1283 <td></td> 1284 <td class="paramtype">const char * </td> 1285 <td class="paramname"> <em>hint</em>, </td> 1286 </tr> 1287 <tr> 1288 <td class="paramkey"></td> 1289 <td></td> 1290 <td class="paramtype">krb5_ccache * </td> 1291 <td class="paramname"> <em>id</em></td><td> </td> 1292 </tr> 1293 <tr> 1294 <td></td> 1295 <td>)</td> 1296 <td></td><td></td><td></td> 1297 </tr> 1298 </table> 1299</div> 1300<div class="memdoc"> 1301 1302<p> 1303Generates a new unique ccache of `type` in `id'. If `type' is NULL, the library chooses the default credential cache type. The supplied `hint' (that can be NULL) is a string that the credential cache type can use to base the name of the credential on, this is to make it easier for the user to differentiate the credentials.<p> 1304<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 1305 1306</div> 1307</div><p> 1308<a class="anchor" name="gd9cd0ebcc7bdf3ca2b0ed166ea2f8df6"></a><!-- doxytag: member="cache.c::krb5_cc_next_cred" ref="gd9cd0ebcc7bdf3ca2b0ed166ea2f8df6" args="(krb5_context context, const krb5_ccache id, krb5_cc_cursor *cursor, krb5_creds *creds)" --> 1309<div class="memitem"> 1310<div class="memproto"> 1311 <table class="memname"> 1312 <tr> 1313 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_next_cred </td> 1314 <td>(</td> 1315 <td class="paramtype">krb5_context </td> 1316 <td class="paramname"> <em>context</em>, </td> 1317 </tr> 1318 <tr> 1319 <td class="paramkey"></td> 1320 <td></td> 1321 <td class="paramtype">const krb5_ccache </td> 1322 <td class="paramname"> <em>id</em>, </td> 1323 </tr> 1324 <tr> 1325 <td class="paramkey"></td> 1326 <td></td> 1327 <td class="paramtype">krb5_cc_cursor * </td> 1328 <td class="paramname"> <em>cursor</em>, </td> 1329 </tr> 1330 <tr> 1331 <td class="paramkey"></td> 1332 <td></td> 1333 <td class="paramtype">krb5_creds * </td> 1334 <td class="paramname"> <em>creds</em></td><td> </td> 1335 </tr> 1336 <tr> 1337 <td></td> 1338 <td>)</td> 1339 <td></td><td></td><td></td> 1340 </tr> 1341 </table> 1342</div> 1343<div class="memdoc"> 1344 1345<p> 1346Retrieve the next cred pointed to by (`id', `cursor') in `creds' and advance `cursor'.<p> 1347<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 1348 1349</div> 1350</div><p> 1351<a class="anchor" name="gc3a45bff840e57a9675d51c1fee6c2e8"></a><!-- doxytag: member="cache.c::krb5_cc_register" ref="gc3a45bff840e57a9675d51c1fee6c2e8" args="(krb5_context context, const krb5_cc_ops *ops, krb5_boolean override)" --> 1352<div class="memitem"> 1353<div class="memproto"> 1354 <table class="memname"> 1355 <tr> 1356 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_register </td> 1357 <td>(</td> 1358 <td class="paramtype">krb5_context </td> 1359 <td class="paramname"> <em>context</em>, </td> 1360 </tr> 1361 <tr> 1362 <td class="paramkey"></td> 1363 <td></td> 1364 <td class="paramtype">const krb5_cc_ops * </td> 1365 <td class="paramname"> <em>ops</em>, </td> 1366 </tr> 1367 <tr> 1368 <td class="paramkey"></td> 1369 <td></td> 1370 <td class="paramtype">krb5_boolean </td> 1371 <td class="paramname"> <em>override</em></td><td> </td> 1372 </tr> 1373 <tr> 1374 <td></td> 1375 <td>)</td> 1376 <td></td><td></td><td></td> 1377 </tr> 1378 </table> 1379</div> 1380<div class="memdoc"> 1381 1382<p> 1383Add a new ccache type with operations `ops', overwriting any existing one if `override'.<p> 1384<dl compact><dt><b>Parameters:</b></dt><dd> 1385 <table border="0" cellspacing="2" cellpadding="0"> 1386 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context </td></tr> 1387 <tr><td valign="top"></td><td valign="top"><em>ops</em> </td><td>type of plugin symbol </td></tr> 1388 <tr><td valign="top"></td><td valign="top"><em>override</em> </td><td>flag to select if the registration is to overide an existing ops with the same name.</td></tr> 1389 </table> 1390</dl> 1391<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 1392 1393</div> 1394</div><p> 1395<a class="anchor" name="g46126e8ea4420b494fd7f5c8dc7a5fda"></a><!-- doxytag: member="cache.c::krb5_cc_remove_cred" ref="g46126e8ea4420b494fd7f5c8dc7a5fda" args="(krb5_context context, krb5_ccache id, krb5_flags which, krb5_creds *cred)" --> 1396<div class="memitem"> 1397<div class="memproto"> 1398 <table class="memname"> 1399 <tr> 1400 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_remove_cred </td> 1401 <td>(</td> 1402 <td class="paramtype">krb5_context </td> 1403 <td class="paramname"> <em>context</em>, </td> 1404 </tr> 1405 <tr> 1406 <td class="paramkey"></td> 1407 <td></td> 1408 <td class="paramtype">krb5_ccache </td> 1409 <td class="paramname"> <em>id</em>, </td> 1410 </tr> 1411 <tr> 1412 <td class="paramkey"></td> 1413 <td></td> 1414 <td class="paramtype">krb5_flags </td> 1415 <td class="paramname"> <em>which</em>, </td> 1416 </tr> 1417 <tr> 1418 <td class="paramkey"></td> 1419 <td></td> 1420 <td class="paramtype">krb5_creds * </td> 1421 <td class="paramname"> <em>cred</em></td><td> </td> 1422 </tr> 1423 <tr> 1424 <td></td> 1425 <td>)</td> 1426 <td></td><td></td><td></td> 1427 </tr> 1428 </table> 1429</div> 1430<div class="memdoc"> 1431 1432<p> 1433Remove the credential identified by `cred', `which' from `id'. 1434</div> 1435</div><p> 1436<a class="anchor" name="ge8ab9d6f4af5710dab860f2806a7d13b"></a><!-- doxytag: member="cache.c::krb5_cc_resolve" ref="ge8ab9d6f4af5710dab860f2806a7d13b" args="(krb5_context context, const char *name, krb5_ccache *id)" --> 1437<div class="memitem"> 1438<div class="memproto"> 1439 <table class="memname"> 1440 <tr> 1441 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_resolve </td> 1442 <td>(</td> 1443 <td class="paramtype">krb5_context </td> 1444 <td class="paramname"> <em>context</em>, </td> 1445 </tr> 1446 <tr> 1447 <td class="paramkey"></td> 1448 <td></td> 1449 <td class="paramtype">const char * </td> 1450 <td class="paramname"> <em>name</em>, </td> 1451 </tr> 1452 <tr> 1453 <td class="paramkey"></td> 1454 <td></td> 1455 <td class="paramtype">krb5_ccache * </td> 1456 <td class="paramname"> <em>id</em></td><td> </td> 1457 </tr> 1458 <tr> 1459 <td></td> 1460 <td>)</td> 1461 <td></td><td></td><td></td> 1462 </tr> 1463 </table> 1464</div> 1465<div class="memdoc"> 1466 1467<p> 1468Find and allocate a ccache in `id' from the specification in `residual'. If the ccache name doesn't contain any colon, interpret it as a file name.<p> 1469<dl compact><dt><b>Parameters:</b></dt><dd> 1470 <table border="0" cellspacing="2" cellpadding="0"> 1471 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 1472 <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>string name of a credential cache. </td></tr> 1473 <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>return pointer to a found credential cache.</td></tr> 1474 </table> 1475</dl> 1476<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return 0 or an error code. In case of an error, id is set to NULL, see krb5_get_error_message(). </dd></dl> 1477 1478</div> 1479</div><p> 1480<a class="anchor" name="g7ae6118dc052a0b5fbae2e73596b9cf7"></a><!-- doxytag: member="cache.c::krb5_cc_retrieve_cred" ref="g7ae6118dc052a0b5fbae2e73596b9cf7" args="(krb5_context context, krb5_ccache id, krb5_flags whichfields, const krb5_creds *mcreds, krb5_creds *creds)" --> 1481<div class="memitem"> 1482<div class="memproto"> 1483 <table class="memname"> 1484 <tr> 1485 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_retrieve_cred </td> 1486 <td>(</td> 1487 <td class="paramtype">krb5_context </td> 1488 <td class="paramname"> <em>context</em>, </td> 1489 </tr> 1490 <tr> 1491 <td class="paramkey"></td> 1492 <td></td> 1493 <td class="paramtype">krb5_ccache </td> 1494 <td class="paramname"> <em>id</em>, </td> 1495 </tr> 1496 <tr> 1497 <td class="paramkey"></td> 1498 <td></td> 1499 <td class="paramtype">krb5_flags </td> 1500 <td class="paramname"> <em>whichfields</em>, </td> 1501 </tr> 1502 <tr> 1503 <td class="paramkey"></td> 1504 <td></td> 1505 <td class="paramtype">const krb5_creds * </td> 1506 <td class="paramname"> <em>mcreds</em>, </td> 1507 </tr> 1508 <tr> 1509 <td class="paramkey"></td> 1510 <td></td> 1511 <td class="paramtype">krb5_creds * </td> 1512 <td class="paramname"> <em>creds</em></td><td> </td> 1513 </tr> 1514 <tr> 1515 <td></td> 1516 <td>)</td> 1517 <td></td><td></td><td></td> 1518 </tr> 1519 </table> 1520</div> 1521<div class="memdoc"> 1522 1523<p> 1524Retrieve the credential identified by `mcreds' (and `whichfields') from `id' in `creds'. 'creds' must be free by the caller using krb5_free_cred_contents.<p> 1525<dl compact><dt><b>Parameters:</b></dt><dd> 1526 <table border="0" cellspacing="2" cellpadding="0"> 1527 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos 5 context </td></tr> 1528 <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>a Kerberos 5 credential cache </td></tr> 1529 <tr><td valign="top"></td><td valign="top"><em>whichfields</em> </td><td>what fields to use for matching credentials, same flags as whichfields in <a class="el" href="group__krb5.html#g45afc77b07b201272eeeaad9890b63cf">krb5_compare_creds()</a> </td></tr> 1530 <tr><td valign="top"></td><td valign="top"><em>mcreds</em> </td><td>template credential to use for comparing </td></tr> 1531 <tr><td valign="top"></td><td valign="top"><em>creds</em> </td><td>returned credential, free with <a class="el" href="group__krb5.html#gd89c4c7b633646c39e4a34a7230c94e1">krb5_free_cred_contents()</a></td></tr> 1532 </table> 1533</dl> 1534<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 1535 1536</div> 1537</div><p> 1538<a class="anchor" name="g562a222918f31fb27ba2060af2ae315b"></a><!-- doxytag: member="cache.c::krb5_cc_set_config" ref="g562a222918f31fb27ba2060af2ae315b" args="(krb5_context context, krb5_ccache id, krb5_const_principal principal, const char *name, krb5_data *data)" --> 1539<div class="memitem"> 1540<div class="memproto"> 1541 <table class="memname"> 1542 <tr> 1543 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_set_config </td> 1544 <td>(</td> 1545 <td class="paramtype">krb5_context </td> 1546 <td class="paramname"> <em>context</em>, </td> 1547 </tr> 1548 <tr> 1549 <td class="paramkey"></td> 1550 <td></td> 1551 <td class="paramtype">krb5_ccache </td> 1552 <td class="paramname"> <em>id</em>, </td> 1553 </tr> 1554 <tr> 1555 <td class="paramkey"></td> 1556 <td></td> 1557 <td class="paramtype">krb5_const_principal </td> 1558 <td class="paramname"> <em>principal</em>, </td> 1559 </tr> 1560 <tr> 1561 <td class="paramkey"></td> 1562 <td></td> 1563 <td class="paramtype">const char * </td> 1564 <td class="paramname"> <em>name</em>, </td> 1565 </tr> 1566 <tr> 1567 <td class="paramkey"></td> 1568 <td></td> 1569 <td class="paramtype">krb5_data * </td> 1570 <td class="paramname"> <em>data</em></td><td> </td> 1571 </tr> 1572 <tr> 1573 <td></td> 1574 <td>)</td> 1575 <td></td><td></td><td></td> 1576 </tr> 1577 </table> 1578</div> 1579<div class="memdoc"> 1580 1581<p> 1582Store some configuration for the credential cache in the cache. Existing configuration under the same name is over-written.<p> 1583<dl compact><dt><b>Parameters:</b></dt><dd> 1584 <table border="0" cellspacing="2" cellpadding="0"> 1585 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context </td></tr> 1586 <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>the credential cache to store the data for </td></tr> 1587 <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>configuration for a specific principal, if NULL, global for the whole cache. </td></tr> 1588 <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>name under which the configuraion is stored. </td></tr> 1589 <tr><td valign="top"></td><td valign="top"><em>data</em> </td><td>data to store, if NULL, configure is removed. </td></tr> 1590 </table> 1591</dl> 1592 1593</div> 1594</div><p> 1595<a class="anchor" name="g86c6699db4cbdcf18f42add005040941"></a><!-- doxytag: member="cache.c::krb5_cc_set_default_name" ref="g86c6699db4cbdcf18f42add005040941" args="(krb5_context context, const char *name)" --> 1596<div class="memitem"> 1597<div class="memproto"> 1598 <table class="memname"> 1599 <tr> 1600 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_set_default_name </td> 1601 <td>(</td> 1602 <td class="paramtype">krb5_context </td> 1603 <td class="paramname"> <em>context</em>, </td> 1604 </tr> 1605 <tr> 1606 <td class="paramkey"></td> 1607 <td></td> 1608 <td class="paramtype">const char * </td> 1609 <td class="paramname"> <em>name</em></td><td> </td> 1610 </tr> 1611 <tr> 1612 <td></td> 1613 <td>)</td> 1614 <td></td><td></td><td></td> 1615 </tr> 1616 </table> 1617</div> 1618<div class="memdoc"> 1619 1620<p> 1621Set the default cc name for `context' to `name'. 1622</div> 1623</div><p> 1624<a class="anchor" name="g289cc14cd4b24c5f30031f9bd17db857"></a><!-- doxytag: member="cache.c::krb5_cc_set_flags" ref="g289cc14cd4b24c5f30031f9bd17db857" args="(krb5_context context, krb5_ccache id, krb5_flags flags)" --> 1625<div class="memitem"> 1626<div class="memproto"> 1627 <table class="memname"> 1628 <tr> 1629 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_set_flags </td> 1630 <td>(</td> 1631 <td class="paramtype">krb5_context </td> 1632 <td class="paramname"> <em>context</em>, </td> 1633 </tr> 1634 <tr> 1635 <td class="paramkey"></td> 1636 <td></td> 1637 <td class="paramtype">krb5_ccache </td> 1638 <td class="paramname"> <em>id</em>, </td> 1639 </tr> 1640 <tr> 1641 <td class="paramkey"></td> 1642 <td></td> 1643 <td class="paramtype">krb5_flags </td> 1644 <td class="paramname"> <em>flags</em></td><td> </td> 1645 </tr> 1646 <tr> 1647 <td></td> 1648 <td>)</td> 1649 <td></td><td></td><td></td> 1650 </tr> 1651 </table> 1652</div> 1653<div class="memdoc"> 1654 1655<p> 1656Set the flags of `id' to `flags'. 1657</div> 1658</div><p> 1659<a class="anchor" name="gc0765d91e9cc8936dc8fcbd0abddcb78"></a><!-- doxytag: member="cache.c::krb5_cc_set_friendly_name" ref="gc0765d91e9cc8936dc8fcbd0abddcb78" args="(krb5_context context, krb5_ccache id, const char *name)" --> 1660<div class="memitem"> 1661<div class="memproto"> 1662 <table class="memname"> 1663 <tr> 1664 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_set_friendly_name </td> 1665 <td>(</td> 1666 <td class="paramtype">krb5_context </td> 1667 <td class="paramname"> <em>context</em>, </td> 1668 </tr> 1669 <tr> 1670 <td class="paramkey"></td> 1671 <td></td> 1672 <td class="paramtype">krb5_ccache </td> 1673 <td class="paramname"> <em>id</em>, </td> 1674 </tr> 1675 <tr> 1676 <td class="paramkey"></td> 1677 <td></td> 1678 <td class="paramtype">const char * </td> 1679 <td class="paramname"> <em>name</em></td><td> </td> 1680 </tr> 1681 <tr> 1682 <td></td> 1683 <td>)</td> 1684 <td></td><td></td><td></td> 1685 </tr> 1686 </table> 1687</div> 1688<div class="memdoc"> 1689 1690<p> 1691Set the friendly name on credential cache.<p> 1692<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 1693 1694</div> 1695</div><p> 1696<a class="anchor" name="g51ceb3c48f1c1abc73beadb5d6f34621"></a><!-- doxytag: member="cache.c::krb5_cc_set_kdc_offset" ref="g51ceb3c48f1c1abc73beadb5d6f34621" args="(krb5_context context, krb5_ccache id, krb5_deltat offset)" --> 1697<div class="memitem"> 1698<div class="memproto"> 1699 <table class="memname"> 1700 <tr> 1701 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_set_kdc_offset </td> 1702 <td>(</td> 1703 <td class="paramtype">krb5_context </td> 1704 <td class="paramname"> <em>context</em>, </td> 1705 </tr> 1706 <tr> 1707 <td class="paramkey"></td> 1708 <td></td> 1709 <td class="paramtype">krb5_ccache </td> 1710 <td class="paramname"> <em>id</em>, </td> 1711 </tr> 1712 <tr> 1713 <td class="paramkey"></td> 1714 <td></td> 1715 <td class="paramtype">krb5_deltat </td> 1716 <td class="paramname"> <em>offset</em></td><td> </td> 1717 </tr> 1718 <tr> 1719 <td></td> 1720 <td>)</td> 1721 <td></td><td></td><td></td> 1722 </tr> 1723 </table> 1724</div> 1725<div class="memdoc"> 1726 1727<p> 1728Set the time offset betwen the client and the KDC<p> 1729If the backend doesn't support KDC offset, use the context global setting.<p> 1730<dl compact><dt><b>Parameters:</b></dt><dd> 1731 <table border="0" cellspacing="2" cellpadding="0"> 1732 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos 5 context. </td></tr> 1733 <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>a credential cache </td></tr> 1734 <tr><td valign="top"></td><td valign="top"><em>offset</em> </td><td>the offset in seconds</td></tr> 1735 </table> 1736</dl> 1737<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 1738 1739</div> 1740</div><p> 1741<a class="anchor" name="gcbf766cea6b49dd64b76628c7708b979"></a><!-- doxytag: member="cache.c::krb5_cc_start_seq_get" ref="gcbf766cea6b49dd64b76628c7708b979" args="(krb5_context context, const krb5_ccache id, krb5_cc_cursor *cursor)" --> 1742<div class="memitem"> 1743<div class="memproto"> 1744 <table class="memname"> 1745 <tr> 1746 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_start_seq_get </td> 1747 <td>(</td> 1748 <td class="paramtype">krb5_context </td> 1749 <td class="paramname"> <em>context</em>, </td> 1750 </tr> 1751 <tr> 1752 <td class="paramkey"></td> 1753 <td></td> 1754 <td class="paramtype">const krb5_ccache </td> 1755 <td class="paramname"> <em>id</em>, </td> 1756 </tr> 1757 <tr> 1758 <td class="paramkey"></td> 1759 <td></td> 1760 <td class="paramtype">krb5_cc_cursor * </td> 1761 <td class="paramname"> <em>cursor</em></td><td> </td> 1762 </tr> 1763 <tr> 1764 <td></td> 1765 <td>)</td> 1766 <td></td><td></td><td></td> 1767 </tr> 1768 </table> 1769</div> 1770<div class="memdoc"> 1771 1772<p> 1773Start iterating over `id', `cursor' is initialized to the beginning. Caller must free the cursor with <a class="el" href="group__krb5__ccache.html#g024ce036ebf277f918354d4681bd0550">krb5_cc_end_seq_get()</a>.<p> 1774<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 1775 1776</div> 1777</div><p> 1778<a class="anchor" name="g7092b498b9acfab73491d9b15c1bc821"></a><!-- doxytag: member="cache.c::krb5_cc_store_cred" ref="g7092b498b9acfab73491d9b15c1bc821" args="(krb5_context context, krb5_ccache id, krb5_creds *creds)" --> 1779<div class="memitem"> 1780<div class="memproto"> 1781 <table class="memname"> 1782 <tr> 1783 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_store_cred </td> 1784 <td>(</td> 1785 <td class="paramtype">krb5_context </td> 1786 <td class="paramname"> <em>context</em>, </td> 1787 </tr> 1788 <tr> 1789 <td class="paramkey"></td> 1790 <td></td> 1791 <td class="paramtype">krb5_ccache </td> 1792 <td class="paramname"> <em>id</em>, </td> 1793 </tr> 1794 <tr> 1795 <td class="paramkey"></td> 1796 <td></td> 1797 <td class="paramtype">krb5_creds * </td> 1798 <td class="paramname"> <em>creds</em></td><td> </td> 1799 </tr> 1800 <tr> 1801 <td></td> 1802 <td>)</td> 1803 <td></td><td></td><td></td> 1804 </tr> 1805 </table> 1806</div> 1807<div class="memdoc"> 1808 1809<p> 1810Store `creds' in the ccache `id'.<p> 1811<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 1812 1813</div> 1814</div><p> 1815<a class="anchor" name="g52344bb9dee620b5e386a9dd3c996e0f"></a><!-- doxytag: member="cache.c::krb5_cc_support_switch" ref="g52344bb9dee620b5e386a9dd3c996e0f" args="(krb5_context context, const char *type)" --> 1816<div class="memitem"> 1817<div class="memproto"> 1818 <table class="memname"> 1819 <tr> 1820 <td class="memname">KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL krb5_cc_support_switch </td> 1821 <td>(</td> 1822 <td class="paramtype">krb5_context </td> 1823 <td class="paramname"> <em>context</em>, </td> 1824 </tr> 1825 <tr> 1826 <td class="paramkey"></td> 1827 <td></td> 1828 <td class="paramtype">const char * </td> 1829 <td class="paramname"> <em>type</em></td><td> </td> 1830 </tr> 1831 <tr> 1832 <td></td> 1833 <td>)</td> 1834 <td></td><td></td><td></td> 1835 </tr> 1836 </table> 1837</div> 1838<div class="memdoc"> 1839 1840<p> 1841Return true if the default credential cache support switch 1842</div> 1843</div><p> 1844<a class="anchor" name="gc2b41cdf638a1ec3d0fd4e72d7b71f3a"></a><!-- doxytag: member="cache.c::krb5_cc_switch" ref="gc2b41cdf638a1ec3d0fd4e72d7b71f3a" args="(krb5_context context, krb5_ccache id)" --> 1845<div class="memitem"> 1846<div class="memproto"> 1847 <table class="memname"> 1848 <tr> 1849 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cc_switch </td> 1850 <td>(</td> 1851 <td class="paramtype">krb5_context </td> 1852 <td class="paramname"> <em>context</em>, </td> 1853 </tr> 1854 <tr> 1855 <td class="paramkey"></td> 1856 <td></td> 1857 <td class="paramtype">krb5_ccache </td> 1858 <td class="paramname"> <em>id</em></td><td> </td> 1859 </tr> 1860 <tr> 1861 <td></td> 1862 <td>)</td> 1863 <td></td><td></td><td></td> 1864 </tr> 1865 </table> 1866</div> 1867<div class="memdoc"> 1868 1869<p> 1870Switch the default default credential cache for a specific credcache type (and name for some implementations).<p> 1871<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 1872 1873</div> 1874</div><p> 1875<a class="anchor" name="g45efd722e955444f3d6083966446fd54"></a><!-- doxytag: member="cache.c::krb5_cccol_cursor_free" ref="g45efd722e955444f3d6083966446fd54" args="(krb5_context context, krb5_cccol_cursor *cursor)" --> 1876<div class="memitem"> 1877<div class="memproto"> 1878 <table class="memname"> 1879 <tr> 1880 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cccol_cursor_free </td> 1881 <td>(</td> 1882 <td class="paramtype">krb5_context </td> 1883 <td class="paramname"> <em>context</em>, </td> 1884 </tr> 1885 <tr> 1886 <td class="paramkey"></td> 1887 <td></td> 1888 <td class="paramtype">krb5_cccol_cursor * </td> 1889 <td class="paramname"> <em>cursor</em></td><td> </td> 1890 </tr> 1891 <tr> 1892 <td></td> 1893 <td>)</td> 1894 <td></td><td></td><td></td> 1895 </tr> 1896 </table> 1897</div> 1898<div class="memdoc"> 1899 1900<p> 1901End an iteration and free all resources, can be done before end is reached.<p> 1902<dl compact><dt><b>Parameters:</b></dt><dd> 1903 <table border="0" cellspacing="2" cellpadding="0"> 1904 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos 5 context </td></tr> 1905 <tr><td valign="top"></td><td valign="top"><em>cursor</em> </td><td>the iteration cursor to be freed.</td></tr> 1906 </table> 1907</dl> 1908<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return 0 or and error, KRB5_CC_END is returned at the end of iteration. See krb5_get_error_message(). </dd></dl> 1909 1910</div> 1911</div><p> 1912<a class="anchor" name="g06b59cb27291f73994294ac9567c5d9b"></a><!-- doxytag: member="cache.c::krb5_cccol_cursor_new" ref="g06b59cb27291f73994294ac9567c5d9b" args="(krb5_context context, krb5_cccol_cursor *cursor)" --> 1913<div class="memitem"> 1914<div class="memproto"> 1915 <table class="memname"> 1916 <tr> 1917 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cccol_cursor_new </td> 1918 <td>(</td> 1919 <td class="paramtype">krb5_context </td> 1920 <td class="paramname"> <em>context</em>, </td> 1921 </tr> 1922 <tr> 1923 <td class="paramkey"></td> 1924 <td></td> 1925 <td class="paramtype">krb5_cccol_cursor * </td> 1926 <td class="paramname"> <em>cursor</em></td><td> </td> 1927 </tr> 1928 <tr> 1929 <td></td> 1930 <td>)</td> 1931 <td></td><td></td><td></td> 1932 </tr> 1933 </table> 1934</div> 1935<div class="memdoc"> 1936 1937<p> 1938Get a new cache interation cursor that will interate over all credentials caches independent of type.<p> 1939<dl compact><dt><b>Parameters:</b></dt><dd> 1940 <table border="0" cellspacing="2" cellpadding="0"> 1941 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context </td></tr> 1942 <tr><td valign="top"></td><td valign="top"><em>cursor</em> </td><td>passed into <a class="el" href="group__krb5__ccache.html#g3f1e7d611a7e16c9d7f1d2f171b72542">krb5_cccol_cursor_next()</a> and free with <a class="el" href="group__krb5__ccache.html#g45efd722e955444f3d6083966446fd54">krb5_cccol_cursor_free()</a>.</td></tr> 1943 </table> 1944</dl> 1945<dl class="return" compact><dt><b>Returns:</b></dt><dd>Returns 0 or and error code, see krb5_get_error_message(). </dd></dl> 1946 1947</div> 1948</div><p> 1949<a class="anchor" name="g3f1e7d611a7e16c9d7f1d2f171b72542"></a><!-- doxytag: member="cache.c::krb5_cccol_cursor_next" ref="g3f1e7d611a7e16c9d7f1d2f171b72542" args="(krb5_context context, krb5_cccol_cursor cursor, krb5_ccache *cache)" --> 1950<div class="memitem"> 1951<div class="memproto"> 1952 <table class="memname"> 1953 <tr> 1954 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cccol_cursor_next </td> 1955 <td>(</td> 1956 <td class="paramtype">krb5_context </td> 1957 <td class="paramname"> <em>context</em>, </td> 1958 </tr> 1959 <tr> 1960 <td class="paramkey"></td> 1961 <td></td> 1962 <td class="paramtype">krb5_cccol_cursor </td> 1963 <td class="paramname"> <em>cursor</em>, </td> 1964 </tr> 1965 <tr> 1966 <td class="paramkey"></td> 1967 <td></td> 1968 <td class="paramtype">krb5_ccache * </td> 1969 <td class="paramname"> <em>cache</em></td><td> </td> 1970 </tr> 1971 <tr> 1972 <td></td> 1973 <td>)</td> 1974 <td></td><td></td><td></td> 1975 </tr> 1976 </table> 1977</div> 1978<div class="memdoc"> 1979 1980<p> 1981Get next credential cache from the iteration.<p> 1982<dl compact><dt><b>Parameters:</b></dt><dd> 1983 <table border="0" cellspacing="2" cellpadding="0"> 1984 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos 5 context </td></tr> 1985 <tr><td valign="top"></td><td valign="top"><em>cursor</em> </td><td>the iteration cursor </td></tr> 1986 <tr><td valign="top"></td><td valign="top"><em>cache</em> </td><td>the returned cursor, pointer is set to NULL on failure and a cache on success. The returned cache needs to be freed with <a class="el" href="group__krb5__ccache.html#gebc0dd2a77529c05fb49e27235da7017">krb5_cc_close()</a> or destroyed with <a class="el" href="group__krb5__ccache.html#g3115bcccd71594374831caa9a07b1290">krb5_cc_destroy()</a>. MIT Kerberos behavies slightly diffrent and sets cache to NULL when all caches are iterated over and return 0.</td></tr> 1987 </table> 1988</dl> 1989<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return 0 or and error, KRB5_CC_END is returned at the end of iteration. See krb5_get_error_message(). </dd></dl> 1990 1991</div> 1992</div><p> 1993<a class="anchor" name="g058a08546f002063625d22a3ebc94897"></a><!-- doxytag: member="cache.c::krb5_cccol_last_change_time" ref="g058a08546f002063625d22a3ebc94897" args="(krb5_context context, const char *type, krb5_timestamp *mtime)" --> 1994<div class="memitem"> 1995<div class="memproto"> 1996 <table class="memname"> 1997 <tr> 1998 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cccol_last_change_time </td> 1999 <td>(</td> 2000 <td class="paramtype">krb5_context </td> 2001 <td class="paramname"> <em>context</em>, </td> 2002 </tr> 2003 <tr> 2004 <td class="paramkey"></td> 2005 <td></td> 2006 <td class="paramtype">const char * </td> 2007 <td class="paramname"> <em>type</em>, </td> 2008 </tr> 2009 <tr> 2010 <td class="paramkey"></td> 2011 <td></td> 2012 <td class="paramtype">krb5_timestamp * </td> 2013 <td class="paramname"> <em>mtime</em></td><td> </td> 2014 </tr> 2015 <tr> 2016 <td></td> 2017 <td>)</td> 2018 <td></td><td></td><td></td> 2019 </tr> 2020 </table> 2021</div> 2022<div class="memdoc"> 2023 2024<p> 2025Return the last modfication time for a cache collection. The query can be limited to a specific cache type. If the function return 0 and mtime is 0, there was no credentials in the caches.<p> 2026<dl compact><dt><b>Parameters:</b></dt><dd> 2027 <table border="0" cellspacing="2" cellpadding="0"> 2028 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos 5 context </td></tr> 2029 <tr><td valign="top"></td><td valign="top"><em>type</em> </td><td>The credential cache to probe, if NULL, all type are traversed. </td></tr> 2030 <tr><td valign="top"></td><td valign="top"><em>mtime</em> </td><td>the last modification time, set to 0 on error.</td></tr> 2031 </table> 2032</dl> 2033<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return 0 or and error. See krb5_get_error_message(). </dd></dl> 2034 2035</div> 2036</div><p> 2037<a class="anchor" name="g00aae24e7570d1aea954c173287900bc"></a><!-- doxytag: member="verify_init.c::krb5_get_validated_creds" ref="g00aae24e7570d1aea954c173287900bc" args="(krb5_context context, krb5_creds *creds, krb5_principal client, krb5_ccache ccache, char *service)" --> 2038<div class="memitem"> 2039<div class="memproto"> 2040 <table class="memname"> 2041 <tr> 2042 <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_get_validated_creds </td> 2043 <td>(</td> 2044 <td class="paramtype">krb5_context </td> 2045 <td class="paramname"> <em>context</em>, </td> 2046 </tr> 2047 <tr> 2048 <td class="paramkey"></td> 2049 <td></td> 2050 <td class="paramtype">krb5_creds * </td> 2051 <td class="paramname"> <em>creds</em>, </td> 2052 </tr> 2053 <tr> 2054 <td class="paramkey"></td> 2055 <td></td> 2056 <td class="paramtype">krb5_principal </td> 2057 <td class="paramname"> <em>client</em>, </td> 2058 </tr> 2059 <tr> 2060 <td class="paramkey"></td> 2061 <td></td> 2062 <td class="paramtype">krb5_ccache </td> 2063 <td class="paramname"> <em>ccache</em>, </td> 2064 </tr> 2065 <tr> 2066 <td class="paramkey"></td> 2067 <td></td> 2068 <td class="paramtype">char * </td> 2069 <td class="paramname"> <em>service</em></td><td> </td> 2070 </tr> 2071 <tr> 2072 <td></td> 2073 <td>)</td> 2074 <td></td><td></td><td></td> 2075 </tr> 2076 </table> 2077</div> 2078<div class="memdoc"> 2079 2080<p> 2081Validate the newly fetch credential, see also krb5_verify_init_creds().<p> 2082<dl compact><dt><b>Parameters:</b></dt><dd> 2083 <table border="0" cellspacing="2" cellpadding="0"> 2084 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Kerberos 5 context </td></tr> 2085 <tr><td valign="top"></td><td valign="top"><em>creds</em> </td><td>the credentials to verify </td></tr> 2086 <tr><td valign="top"></td><td valign="top"><em>client</em> </td><td>the client name to match up </td></tr> 2087 <tr><td valign="top"></td><td valign="top"><em>ccache</em> </td><td>the credential cache to use </td></tr> 2088 <tr><td valign="top"></td><td valign="top"><em>service</em> </td><td>a service name to use, used with <a class="el" href="group__krb5__principal.html#g8be0f5000da6ee0d4bd5dcaf3cb01d08">krb5_sname_to_principal()</a> to build a hostname to use to verify. </td></tr> 2089 </table> 2090</dl> 2091 2092</div> 2093</div><p> 2094<a class="anchor" name="g7aae400e0b7a263ed7de884ed0a433be"></a><!-- doxytag: member="cache.c::krb5_is_config_principal" ref="g7aae400e0b7a263ed7de884ed0a433be" args="(krb5_context context, krb5_const_principal principal)" --> 2095<div class="memitem"> 2096<div class="memproto"> 2097 <table class="memname"> 2098 <tr> 2099 <td class="memname">KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL krb5_is_config_principal </td> 2100 <td>(</td> 2101 <td class="paramtype">krb5_context </td> 2102 <td class="paramname"> <em>context</em>, </td> 2103 </tr> 2104 <tr> 2105 <td class="paramkey"></td> 2106 <td></td> 2107 <td class="paramtype">krb5_const_principal </td> 2108 <td class="paramname"> <em>principal</em></td><td> </td> 2109 </tr> 2110 <tr> 2111 <td></td> 2112 <td>)</td> 2113 <td></td><td></td><td></td> 2114 </tr> 2115 </table> 2116</div> 2117<div class="memdoc"> 2118 2119<p> 2120Return TRUE (non zero) if the principal is a configuration principal (generated part of <a class="el" href="group__krb5__ccache.html#g562a222918f31fb27ba2060af2ae315b">krb5_cc_set_config()</a>). Returns FALSE (zero) if not a configuration principal.<p> 2121<dl compact><dt><b>Parameters:</b></dt><dd> 2122 <table border="0" cellspacing="2" cellpadding="0"> 2123 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context </td></tr> 2124 <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>principal to check if it a configuration principal </td></tr> 2125 </table> 2126</dl> 2127 2128</div> 2129</div><p> 2130<hr><h2>Variable Documentation</h2> 2131<a class="anchor" name="g6e72d7bbecc876f7265e4b20f087e04f"></a><!-- doxytag: member="acache.c::krb5_acc_ops" ref="g6e72d7bbecc876f7265e4b20f087e04f" args="" --> 2132<div class="memitem"> 2133<div class="memproto"> 2134 <table class="memname"> 2135 <tr> 2136 <td class="memname">KRB5_LIB_VARIABLE const krb5_cc_ops <a class="el" href="group__krb5__ccache.html#g6e72d7bbecc876f7265e4b20f087e04f">krb5_acc_ops</a> </td> 2137 </tr> 2138 </table> 2139</div> 2140<div class="memdoc"> 2141 2142<p> 2143<b>Initial value:</b><div class="fragment"><pre class="fragment"> { 2144 KRB5_CC_OPS_VERSION, 2145 <span class="stringliteral">"API"</span>, 2146 acc_get_name, 2147 acc_resolve, 2148 acc_gen_new, 2149 acc_initialize, 2150 acc_destroy, 2151 acc_close, 2152 acc_store_cred, 2153 NULL, 2154 acc_get_principal, 2155 acc_get_first, 2156 acc_get_next, 2157 acc_end_get, 2158 acc_remove_cred, 2159 acc_set_flags, 2160 acc_get_version, 2161 acc_get_cache_first, 2162 acc_get_cache_next, 2163 acc_end_cache_get, 2164 acc_move, 2165 acc_get_default_name, 2166 acc_set_default, 2167 acc_lastchange, 2168 NULL, 2169 NULL, 2170} 2171</pre></div>Variable containing the API based credential cache implemention. 2172</div> 2173</div><p> 2174<a class="anchor" name="gff6f544b45b0b7662443e70609527702"></a><!-- doxytag: member="fcache.c::krb5_fcc_ops" ref="gff6f544b45b0b7662443e70609527702" args="" --> 2175<div class="memitem"> 2176<div class="memproto"> 2177 <table class="memname"> 2178 <tr> 2179 <td class="memname">KRB5_LIB_VARIABLE const krb5_cc_ops <a class="el" href="group__krb5__ccache.html#gff6f544b45b0b7662443e70609527702">krb5_fcc_ops</a> </td> 2180 </tr> 2181 </table> 2182</div> 2183<div class="memdoc"> 2184 2185<p> 2186<b>Initial value:</b><div class="fragment"><pre class="fragment"> { 2187 KRB5_CC_OPS_VERSION, 2188 <span class="stringliteral">"FILE"</span>, 2189 fcc_get_name, 2190 fcc_resolve, 2191 fcc_gen_new, 2192 fcc_initialize, 2193 fcc_destroy, 2194 fcc_close, 2195 fcc_store_cred, 2196 NULL, 2197 fcc_get_principal, 2198 fcc_get_first, 2199 fcc_get_next, 2200 fcc_end_get, 2201 fcc_remove_cred, 2202 fcc_set_flags, 2203 fcc_get_version, 2204 fcc_get_cache_first, 2205 fcc_get_cache_next, 2206 fcc_end_cache_get, 2207 fcc_move, 2208 fcc_get_default_name, 2209 NULL, 2210 fcc_lastchange, 2211 fcc_set_kdc_offset, 2212 fcc_get_kdc_offset 2213} 2214</pre></div>Variable containing the FILE based credential cache implemention. 2215</div> 2216</div><p> 2217<a class="anchor" name="g4b23b96d2f610d79c642d516eb4d067c"></a><!-- doxytag: member="mcache.c::krb5_mcc_ops" ref="g4b23b96d2f610d79c642d516eb4d067c" args="" --> 2218<div class="memitem"> 2219<div class="memproto"> 2220 <table class="memname"> 2221 <tr> 2222 <td class="memname">KRB5_LIB_VARIABLE const krb5_cc_ops <a class="el" href="group__krb5__ccache.html#g4b23b96d2f610d79c642d516eb4d067c">krb5_mcc_ops</a> </td> 2223 </tr> 2224 </table> 2225</div> 2226<div class="memdoc"> 2227 2228<p> 2229<b>Initial value:</b><div class="fragment"><pre class="fragment"> { 2230 KRB5_CC_OPS_VERSION, 2231 <span class="stringliteral">"MEMORY"</span>, 2232 mcc_get_name, 2233 mcc_resolve, 2234 mcc_gen_new, 2235 mcc_initialize, 2236 mcc_destroy, 2237 mcc_close, 2238 mcc_store_cred, 2239 NULL, 2240 mcc_get_principal, 2241 mcc_get_first, 2242 mcc_get_next, 2243 mcc_end_get, 2244 mcc_remove_cred, 2245 mcc_set_flags, 2246 NULL, 2247 mcc_get_cache_first, 2248 mcc_get_cache_next, 2249 mcc_end_cache_get, 2250 mcc_move, 2251 mcc_default_name, 2252 NULL, 2253 mcc_lastchange, 2254 mcc_set_kdc_offset, 2255 mcc_get_kdc_offset 2256} 2257</pre></div>Variable containing the MEMORY based credential cache implemention. 2258</div> 2259</div><p> 2260</div> 2261<hr size="1"><address style="text-align: right;"><small> 2262Generated on Wed Jan 11 14:07:48 2012 for HeimdalKerberos5library by <a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address> 2263</body> 2264</html> 2265