Removed kim_identity_get_gss_name and updated documentation
authorAlexandra Ellwood <lxs@mit.edu>
Thu, 18 Sep 2008 14:56:49 +0000 (14:56 +0000)
committerAlexandra Ellwood <lxs@mit.edu>
Thu, 18 Sep 2008 14:56:49 +0000 (14:56 +0000)
ticket: 6055

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@20729 dc483132-0cff-0310-8789-dd5450dbe970

24 files changed:
doc/kim/Doxyfile
doc/kim/html/group__kim__ccache__iterator__reference.html
doc/kim/html/group__kim__ccache__reference.html
doc/kim/html/group__kim__credential__iterator__reference.html
doc/kim/html/group__kim__credential__reference.html
doc/kim/html/group__kim__error__reference.html
doc/kim/html/group__kim__identity__reference.html
doc/kim/html/group__kim__options__reference.html
doc/kim/html/group__kim__preferences__reference.html
doc/kim/html/group__kim__selection__hints__reference.html
doc/kim/html/group__kim__string__reference.html
doc/kim/html/group__kim__types__reference.html
doc/kim/html/index.html
doc/kim/html/kim_ccache_overview.html
doc/kim/html/kim_credential_overview.html
doc/kim/html/kim_error_overview.html
doc/kim/html/kim_identity_overview.html
doc/kim/html/kim_options_overview.html
doc/kim/html/kim_preferences_overview.html
doc/kim/html/kim_selection_hints_overview.html
doc/kim/html/kim_string_overview.html
doc/kim/html/modules.html
src/include/kim/kim_identity.h
src/kim/lib/kim_identity.c

index fbaf3726bac858dcfeb192dac8d03ea360571992..0f3151645f9894b339d8f105c8eaa2b3763a7a3d 100644 (file)
@@ -4,16 +4,16 @@
 # Project related configuration options
 #---------------------------------------------------------------------------
 DOXYFILE_ENCODING      = UTF-8
-PROJECT_NAME           = "Kerberos Identity Management  "
+PROJECT_NAME           = "Kerberos Identity Management   "
 PROJECT_NUMBER         = 
 OUTPUT_DIRECTORY       = .
 CREATE_SUBDIRS         = NO
 OUTPUT_LANGUAGE        = English
 BRIEF_MEMBER_DESC      = YES
 REPEAT_BRIEF           = YES
-ABBREVIATE_BRIEF       = "The $name class  " \
-                         "The $name widget  " \
-                         "The $name file  " \
+ABBREVIATE_BRIEF       = "The $name class   " \
+                         "The $name widget   " \
+                         "The $name file   " \
                          is \
                          provides \
                          specifies \
@@ -80,12 +80,13 @@ WARNINGS               = YES
 WARN_IF_UNDOCUMENTED   = YES
 WARN_IF_DOC_ERROR      = YES
 WARN_NO_PARAMDOC       = YES
-WARN_FORMAT            = "$file:$line: $text  "
+WARN_FORMAT            = "$file:$line: $text   "
 WARN_LOGFILE           = 
 #---------------------------------------------------------------------------
 # configuration options related to the input files
 #---------------------------------------------------------------------------
-INPUT                  = ../../src/include/kim
+INPUT                  = ../../src/include/kim \
+                         ../../Sources/include/kim
 INPUT_ENCODING         = UTF-8
 FILE_PATTERNS          = *.c \
                          *.cc \
index 7f7144f76cf4170363a50cd8270e941de8800557..9a4692dfb9d1d25df4ad762d3b2896ea6f7092b0 100644 (file)
@@ -9,19 +9,19 @@
 <p>
 <h2>Functions</h2>
 <ul>
-<li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__iterator__reference.html#g2f116eaf59776453db578c9342b8c3e1">kim_ccache_iterator_create</a> (<a class="el" href="group__kim__types__reference.html#gf19042fb689c87bfbe381654f75af5b9">kim_ccache_iterator_t</a> *out_ccache_iterator)
-<dl class="el"><dd class="mdescRight">Get a ccache iterator to enumerate ccaches in the cache collection.  <a href="#g2f116eaf59776453db578c9342b8c3e1"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__iterator__reference.html#g71dc66abc8b357e318c48debd2cb7916">kim_ccache_iterator_next</a> (<a class="el" href="group__kim__types__reference.html#gf19042fb689c87bfbe381654f75af5b9">kim_ccache_iterator_t</a> in_ccache_iterator, <a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *out_ccache)
-<dl class="el"><dd class="mdescRight">Get the next ccache in the cache collection.  <a href="#g71dc66abc8b357e318c48debd2cb7916"></a><br></dl><li>void <a class="el" href="group__kim__ccache__iterator__reference.html#ged070acdb8996a34c622675369733d12">kim_ccache_iterator_free</a> (<a class="el" href="group__kim__types__reference.html#gf19042fb689c87bfbe381654f75af5b9">kim_ccache_iterator_t</a> *io_ccache_iterator)
-<dl class="el"><dd class="mdescRight">Free memory associated with a ccache iterator.  <a href="#ged070acdb8996a34c622675369733d12"></a><br></dl></ul>
+<li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__iterator__reference.html#g3201595a767a17da00f511bf4bb31632">kim_ccache_iterator_create</a> (<a class="el" href="group__kim__types__reference.html#gdf94e85294f9f42293bfb6a4ec35817c">kim_ccache_iterator</a> *out_ccache_iterator)
+<dl class="el"><dd class="mdescRight">Get a ccache iterator to enumerate ccaches in the cache collection.  <a href="#g3201595a767a17da00f511bf4bb31632"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__iterator__reference.html#gf695d88e8be91330f23aaf765f3d19bc">kim_ccache_iterator_next</a> (<a class="el" href="group__kim__types__reference.html#gdf94e85294f9f42293bfb6a4ec35817c">kim_ccache_iterator</a> in_ccache_iterator, <a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *out_ccache)
+<dl class="el"><dd class="mdescRight">Get the next ccache in the cache collection.  <a href="#gf695d88e8be91330f23aaf765f3d19bc"></a><br></dl><li>void <a class="el" href="group__kim__ccache__iterator__reference.html#g2af38d7f654d6cd513fb4bf7cf35ce21">kim_ccache_iterator_free</a> (<a class="el" href="group__kim__types__reference.html#gdf94e85294f9f42293bfb6a4ec35817c">kim_ccache_iterator</a> *io_ccache_iterator)
+<dl class="el"><dd class="mdescRight">Free memory associated with a ccache iterator.  <a href="#g2af38d7f654d6cd513fb4bf7cf35ce21"></a><br></dl></ul>
 <hr><h2>Function Documentation</h2>
-<a class="anchor" name="g2f116eaf59776453db578c9342b8c3e1"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_iterator_create" ref="g2f116eaf59776453db578c9342b8c3e1" args="(kim_ccache_iterator_t *out_ccache_iterator)" -->
+<a class="anchor" name="g3201595a767a17da00f511bf4bb31632"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_iterator_create" ref="g3201595a767a17da00f511bf4bb31632" args="(kim_ccache_iterator *out_ccache_iterator)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_iterator_create           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_iterator_create           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf19042fb689c87bfbe381654f75af5b9">kim_ccache_iterator_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf94e85294f9f42293bfb6a4ec35817c">kim_ccache_iterator</a> *&nbsp;</td>
           <td class="paramname"> <em>out_ccache_iterator</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td width="100%"></td>
@@ -38,24 +38,24 @@ Get a ccache iterator to enumerate ccaches in the cache collection.
     <tr><td valign="top"></td><td valign="top"><em>out_ccache_iterator</em>&nbsp;</td><td>on exit, a ccache iterator object for the cache collection. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g71dc66abc8b357e318c48debd2cb7916"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_iterator_next" ref="g71dc66abc8b357e318c48debd2cb7916" args="(kim_ccache_iterator_t in_ccache_iterator, kim_ccache_t *out_ccache)" -->
+<a class="anchor" name="gf695d88e8be91330f23aaf765f3d19bc"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_iterator_next" ref="gf695d88e8be91330f23aaf765f3d19bc" args="(kim_ccache_iterator in_ccache_iterator, kim_ccache *out_ccache)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_iterator_next           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_iterator_next           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf19042fb689c87bfbe381654f75af5b9">kim_ccache_iterator_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf94e85294f9f42293bfb6a4ec35817c">kim_ccache_iterator</a>&nbsp;</td>
           <td class="paramname"> <em>in_ccache_iterator</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *&nbsp;</td>
           <td class="paramname"> <em>out_ccache</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -76,18 +76,18 @@ Get the next ccache in the cache collection.
     <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, the next ccache in the cache collection. If there are no more ccaches in the cache collection this argument will be set to NULL. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="ged070acdb8996a34c622675369733d12"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_iterator_free" ref="ged070acdb8996a34c622675369733d12" args="(kim_ccache_iterator_t *io_ccache_iterator)" -->
+<a class="anchor" name="g2af38d7f654d6cd513fb4bf7cf35ce21"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_iterator_free" ref="g2af38d7f654d6cd513fb4bf7cf35ce21" args="(kim_ccache_iterator *io_ccache_iterator)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void kim_ccache_iterator_free           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf19042fb689c87bfbe381654f75af5b9">kim_ccache_iterator_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf94e85294f9f42293bfb6a4ec35817c">kim_ccache_iterator</a> *&nbsp;</td>
           <td class="paramname"> <em>io_ccache_iterator</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td width="100%"></td>
@@ -107,7 +107,7 @@ Free memory associated with a ccache iterator.
 
 </div>
 </div><p>
-<hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:19 2008 for Kerberos Identity Management by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index 85dfa9c4c162f87e8f457a57b05e56e6b70bc0ed..884739c55a8ef33af8f3543087354bb132c0659c 100644 (file)
@@ -9,51 +9,52 @@
 <p>
 <h2>Functions</h2>
 <ul>
-<li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#gda206c3632933a811cb895e5be29bba9">kim_ccache_create_new</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *out_ccache, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_client_identity, <a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options)
-<dl class="el"><dd class="mdescRight">Acquire a new initial credential and store it in a ccache.  <a href="#gda206c3632933a811cb895e5be29bba9"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#gd4242a5d6b2cc7222bcb065deb5fdf17">kim_ccache_create_new_if_needed</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *out_ccache, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_client_identity, <a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options)
-<dl class="el"><dd class="mdescRight">Find a ccache containing a valid initial credential in the cache collection, or if unavailable, acquire and store a new initial credential.  <a href="#gd4242a5d6b2cc7222bcb065deb5fdf17"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#gfc1faee53dbb4b1dab1a5daf8f685f64">kim_ccache_create_from_client_identity</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *out_ccache, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_client_identity)
-<dl class="el"><dd class="mdescRight">Find a ccache for a client identity in the cache collection.  <a href="#gfc1faee53dbb4b1dab1a5daf8f685f64"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#g21a41ecd65dcb9d5b6a2e4d45d3f690b">kim_ccache_create_from_keytab</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *out_ccache, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_identity, <a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_keytab)
-<dl class="el"><dd class="mdescRight">Acquire a new initial credential from a keytab and store it in a ccache.  <a href="#g21a41ecd65dcb9d5b6a2e4d45d3f690b"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#gec7b1b8d8514d76bb0608670106ab31c">kim_ccache_create_from_default</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *out_ccache)
-<dl class="el"><dd class="mdescRight">Get the default ccache.  <a href="#gec7b1b8d8514d76bb0608670106ab31c"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#ge6584e47a08e7da567e8a44a616c476c">kim_ccache_create_from_type_and_name</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *out_ccache, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_type, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_name)
-<dl class="el"><dd class="mdescRight">Get a ccache for a ccache type and name.  <a href="#ge6584e47a08e7da567e8a44a616c476c"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#gec8637b71f0d75603635c5d433bd4fb6">kim_ccache_create_from_krb5_ccache</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *out_ccache, krb5_context in_krb5_context, krb5_ccache in_krb5_ccache)
-<dl class="el"><dd class="mdescRight">Get a ccache for a krb5 ccache.  <a href="#gec8637b71f0d75603635c5d433bd4fb6"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#g76e16a971c011d60af61946a6f3da31d">kim_ccache_copy</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *out_ccache, <a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> in_ccache)
-<dl class="el"><dd class="mdescRight">Copy a ccache.  <a href="#g76e16a971c011d60af61946a6f3da31d"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#gdfa9451814442e3acfd426a1abea8604">kim_ccache_get_krb5_ccache</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> in_ccache, krb5_context in_krb5_context, krb5_ccache *out_krb5_ccache)
-<dl class="el"><dd class="mdescRight">Get a krb5 ccache for a ccache.  <a href="#gdfa9451814442e3acfd426a1abea8604"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#gec1c9af407a6554401a7f32c49cabd6a">kim_ccache_get_name</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> in_ccache, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *out_name)
-<dl class="el"><dd class="mdescRight">Get the name of a ccache.  <a href="#gec1c9af407a6554401a7f32c49cabd6a"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#gbf079f8dff05db6bb9aa152df83029fb">kim_ccache_get_type</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> in_ccache, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *out_type)
-<dl class="el"><dd class="mdescRight">Get the type of a ccache.  <a href="#gbf079f8dff05db6bb9aa152df83029fb"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#g3a0f51defaf127b77b1e44092a352e31">kim_ccache_get_display_name</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> in_ccache, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *out_display_name)
-<dl class="el"><dd class="mdescRight">Get the type and name for a ccache in display format.  <a href="#g3a0f51defaf127b77b1e44092a352e31"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#gd5abbe1c6e1a0d191695bb373f9a7957">kim_ccache_get_client_identity</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> in_ccache, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *out_client_identity)
-<dl class="el"><dd class="mdescRight">Get the client identity for a ccache.  <a href="#gd5abbe1c6e1a0d191695bb373f9a7957"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#g78ff442478e0faa46c63774c49a7b51e">kim_ccache_get_valid_credential</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> in_ccache, <a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> *out_credential)
-<dl class="el"><dd class="mdescRight">Get the first valid credential in a ccache.  <a href="#g78ff442478e0faa46c63774c49a7b51e"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#gb8793586b7c4054f2219b28920bf12bd">kim_ccache_get_start_time</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> in_ccache, <a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a> *out_start_time)
-<dl class="el"><dd class="mdescRight">Get the time when the credentials in the ccache become valid.  <a href="#gb8793586b7c4054f2219b28920bf12bd"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#g2cbb6b78cac2bb2e4359caf8b53d60c5">kim_ccache_get_expiration_time</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> in_ccache, <a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a> *out_expiration_time)
-<dl class="el"><dd class="mdescRight">Get the time when the credentials in the ccache will expire.  <a href="#g2cbb6b78cac2bb2e4359caf8b53d60c5"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#gfaad7545fbdb381faed8d2378009bd6e">kim_ccache_get_renewal_expiration_time</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> in_ccache, <a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a> *out_renewal_expiration_time)
-<dl class="el"><dd class="mdescRight">Get the time when the credentials in the ccache will no longer be renewable.  <a href="#gfaad7545fbdb381faed8d2378009bd6e"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#g5614c04acbdf006e86dd787dce5a2600">kim_ccache_set_default</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> io_ccache)
-<dl class="el"><dd class="mdescRight">Set a ccache to the default ccache.  <a href="#g5614c04acbdf006e86dd787dce5a2600"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#g3d293fc7338ff9b654e167153df33b5c">kim_ccache_verify</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> in_ccache, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_service_identity, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_keytab, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> in_fail_if_no_service_key)
-<dl class="el"><dd class="mdescRight">Verify the TGT in a ccache.  <a href="#g3d293fc7338ff9b654e167153df33b5c"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#gafb44675df9d05af5b899996be14e2b4">kim_ccache_renew</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> in_ccache, <a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options)
-<dl class="el"><dd class="mdescRight">Renew the TGT in a ccache.  <a href="#gafb44675df9d05af5b899996be14e2b4"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#g8bb7d46268621e73629dceefd15ff639">kim_ccache_validate</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> in_ccache, <a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options)
-<dl class="el"><dd class="mdescRight">Validate the TGT in a ccache.  <a href="#g8bb7d46268621e73629dceefd15ff639"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__ccache__reference.html#g6e750b24766c0f3991bcf0d873eb4d3e">kim_ccache_destroy</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *io_ccache)
-<dl class="el"><dd class="mdescRight">Remove a ccache from the cache collection.  <a href="#g6e750b24766c0f3991bcf0d873eb4d3e"></a><br></dl><li>void <a class="el" href="group__kim__ccache__reference.html#g2e9e82cd849c9815857397a9b869c45c">kim_ccache_free</a> (<a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *io_ccache)
-<dl class="el"><dd class="mdescRight">Free memory associated with a ccache.  <a href="#g2e9e82cd849c9815857397a9b869c45c"></a><br></dl></ul>
+<li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#gcdc80c9bfa368eca7cc2d3710b4c0fa9">kim_ccache_create_new</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *out_ccache, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_client_identity, <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options)
+<dl class="el"><dd class="mdescRight">Acquire a new initial credential and store it in a ccache.  <a href="#gcdc80c9bfa368eca7cc2d3710b4c0fa9"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#g52fa72130f4ba6de8cce1224578102ce">kim_ccache_create_new_if_needed</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *out_ccache, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_client_identity, <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options)
+<dl class="el"><dd class="mdescRight">Find a ccache containing a valid initial credential in the cache collection, or if unavailable, acquire and store a new initial credential.  <a href="#g52fa72130f4ba6de8cce1224578102ce"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#g6ecc14b94ffb57ca8008d0a407bb9c7d">kim_ccache_create_from_client_identity</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *out_ccache, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_client_identity)
+<dl class="el"><dd class="mdescRight">Find a ccache for a client identity in the cache collection.  <a href="#g6ecc14b94ffb57ca8008d0a407bb9c7d"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#g15cb7e1b9069a610030211cecc5e6232">kim_ccache_create_from_keytab</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *out_ccache, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_identity, <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_keytab)
+<dl class="el"><dd class="mdescRight">Acquire a new initial credential from a keytab and store it in a ccache.  <a href="#g15cb7e1b9069a610030211cecc5e6232"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#g137761ce872ca756c08e7c31e4101df5">kim_ccache_create_from_default</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *out_ccache)
+<dl class="el"><dd class="mdescRight">Get the default ccache.  <a href="#g137761ce872ca756c08e7c31e4101df5"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#g4c532da378a5bc222eeaa8ecbabecb72">kim_ccache_create_from_type_and_name</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *out_ccache, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_type, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_name)
+<dl class="el"><dd class="mdescRight">Get a ccache for a ccache type and name.  <a href="#g4c532da378a5bc222eeaa8ecbabecb72"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#g1d5c688dd5fae7e722ee7dd3e335fe34">kim_ccache_create_from_krb5_ccache</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *out_ccache, krb5_context in_krb5_context, krb5_ccache in_krb5_ccache)
+<dl class="el"><dd class="mdescRight">Get a ccache for a krb5 ccache.  <a href="#g1d5c688dd5fae7e722ee7dd3e335fe34"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#gc56dbcf51cddbe0e08b695e649c4a4de">kim_ccache_copy</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *out_ccache, <a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> in_ccache)
+<dl class="el"><dd class="mdescRight">Copy a ccache.  <a href="#gc56dbcf51cddbe0e08b695e649c4a4de"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#g2c141d7d829dfcf4b761cd04f71a5443">kim_ccache_get_krb5_ccache</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> in_ccache, krb5_context in_krb5_context, krb5_ccache *out_krb5_ccache)
+<dl class="el"><dd class="mdescRight">Get a krb5 ccache for a ccache.  <a href="#g2c141d7d829dfcf4b761cd04f71a5443"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#g18d612eddf05b4deb11e97071b5ad17b">kim_ccache_get_name</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> in_ccache, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *out_name)
+<dl class="el"><dd class="mdescRight">Get the name of a ccache.  <a href="#g18d612eddf05b4deb11e97071b5ad17b"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#ge49fc64af74ad437de6becdbee876117">kim_ccache_get_type</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> in_ccache, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *out_type)
+<dl class="el"><dd class="mdescRight">Get the type of a ccache.  <a href="#ge49fc64af74ad437de6becdbee876117"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#ga89f6bfa35c436621ff324b805a7c669">kim_ccache_get_display_name</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> in_ccache, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *out_display_name)
+<dl class="el"><dd class="mdescRight">Get the type and name for a ccache in display format.  <a href="#ga89f6bfa35c436621ff324b805a7c669"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#g754252665d1cd87d9ee8f6f51d62f211">kim_ccache_get_client_identity</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> in_ccache, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *out_client_identity)
+<dl class="el"><dd class="mdescRight">Get the client identity for a ccache.  <a href="#g754252665d1cd87d9ee8f6f51d62f211"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#g0fbacc48909c484623329b8131bfb3d0">kim_ccache_get_valid_credential</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> in_ccache, <a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> *out_credential)
+<dl class="el"><dd class="mdescRight">Get the first valid credential in a ccache.  <a href="#g0fbacc48909c484623329b8131bfb3d0"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#gb838921f1d2db46468ea14d9e7572c03">kim_ccache_get_state</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> in_ccache, <a class="el" href="group__kim__types__reference.html#g48e19d7e4aec7dc6662149cab39bbe20">kim_credential_state</a> *out_state)
+<dl class="el"><dd class="mdescRight">Check the state of the credentials in a ccache (valid, expired, postdated, etc).  <a href="#gb838921f1d2db46468ea14d9e7572c03"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#gb2165acd652eddaeb61c8f6b8c3a16f7">kim_ccache_get_start_time</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> in_ccache, <a class="el" href="group__kim__types__reference.html#g3da22452677b45753d40e07f3904dff5">kim_time</a> *out_start_time)
+<dl class="el"><dd class="mdescRight">Get the time when the credentials in the ccache become valid.  <a href="#gb2165acd652eddaeb61c8f6b8c3a16f7"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#g52693fc485cf2e3bd5cf0c0a3d414d8a">kim_ccache_get_expiration_time</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> in_ccache, <a class="el" href="group__kim__types__reference.html#g3da22452677b45753d40e07f3904dff5">kim_time</a> *out_expiration_time)
+<dl class="el"><dd class="mdescRight">Get the time when the credentials in the ccache will expire.  <a href="#g52693fc485cf2e3bd5cf0c0a3d414d8a"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#g01b4cbb88abf6aafd2efdaad91d74f0f">kim_ccache_get_renewal_expiration_time</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> in_ccache, <a class="el" href="group__kim__types__reference.html#g3da22452677b45753d40e07f3904dff5">kim_time</a> *out_renewal_expiration_time)
+<dl class="el"><dd class="mdescRight">Get the time when the credentials in the ccache will no longer be renewable.  <a href="#g01b4cbb88abf6aafd2efdaad91d74f0f"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#ga9f694b7c3dea5cc3422604571419f80">kim_ccache_set_default</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> io_ccache)
+<dl class="el"><dd class="mdescRight">Set a ccache to the default ccache.  <a href="#ga9f694b7c3dea5cc3422604571419f80"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#g8836113dd86a0dc3cf60df0d76280de6">kim_ccache_verify</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> in_ccache, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_service_identity, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_keytab, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> in_fail_if_no_service_key)
+<dl class="el"><dd class="mdescRight">Verify the TGT in a ccache.  <a href="#g8836113dd86a0dc3cf60df0d76280de6"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#g574a0ef674116589dcf57460af81de39">kim_ccache_renew</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> in_ccache, <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options)
+<dl class="el"><dd class="mdescRight">Renew the TGT in a ccache.  <a href="#g574a0ef674116589dcf57460af81de39"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#g73f5b201d24a58936244fc4e43cd3d59">kim_ccache_validate</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> in_ccache, <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options)
+<dl class="el"><dd class="mdescRight">Validate the TGT in a ccache.  <a href="#g73f5b201d24a58936244fc4e43cd3d59"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__ccache__reference.html#g6aa0f2f977b4d966d4d37c387502ec17">kim_ccache_destroy</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *io_ccache)
+<dl class="el"><dd class="mdescRight">Remove a ccache from the cache collection.  <a href="#g6aa0f2f977b4d966d4d37c387502ec17"></a><br></dl><li>void <a class="el" href="group__kim__ccache__reference.html#g6c6be543e0ea2b518612be4255e15b9a">kim_ccache_free</a> (<a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *io_ccache)
+<dl class="el"><dd class="mdescRight">Free memory associated with a ccache.  <a href="#g6c6be543e0ea2b518612be4255e15b9a"></a><br></dl></ul>
 <hr><h2>Function Documentation</h2>
-<a class="anchor" name="gda206c3632933a811cb895e5be29bba9"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_create_new" ref="gda206c3632933a811cb895e5be29bba9" args="(kim_ccache_t *out_ccache, kim_identity_t in_client_identity, kim_options_t in_options)" -->
+<a class="anchor" name="gcdc80c9bfa368eca7cc2d3710b4c0fa9"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_create_new" ref="gcdc80c9bfa368eca7cc2d3710b4c0fa9" args="(kim_ccache *out_ccache, kim_identity in_client_identity, kim_options in_options)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_create_new           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_create_new           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *&nbsp;</td>
           <td class="paramname"> <em>out_ccache</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_client_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -70,36 +71,36 @@ Acquire a new initial credential and store it in a ccache.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, a new cache object for a ccache containing a newly acquired initial credential. Must be freed with <a class="el" href="group__kim__ccache__reference.html#g2e9e82cd849c9815857397a9b869c45c" title="Free memory associated with a ccache.">kim_ccache_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, a new cache object for a ccache containing a newly acquired initial credential. Must be freed with <a class="el" href="group__kim__ccache__reference.html#g6c6be543e0ea2b518612be4255e15b9a" title="Free memory associated with a ccache.">kim_ccache_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_client_identity</em>&nbsp;</td><td>a client identity to obtain a credential for. Specify KIM_IDENTITY_ANY to allow the user to choose. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_options</em>&nbsp;</td><td>options to control credential acquisition. </td></tr>
   </table>
 </dl>
-<dl class="note" compact><dt><b>Note:</b></dt><dd>Depending on the kim_options specified, <a class="el" href="group__kim__ccache__reference.html#gda206c3632933a811cb895e5be29bba9" title="Acquire a new initial credential and store it in a ccache.">kim_ccache_create_new()</a> may present a GUI or command line prompt to obtain information from the user. </dd></dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>Depending on the kim_options specified, <a class="el" href="group__kim__ccache__reference.html#gcdc80c9bfa368eca7cc2d3710b4c0fa9" title="Acquire a new initial credential and store it in a ccache.">kim_ccache_create_new()</a> may present a GUI or command line prompt to obtain information from the user. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gd4242a5d6b2cc7222bcb065deb5fdf17"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_create_new_if_needed" ref="gd4242a5d6b2cc7222bcb065deb5fdf17" args="(kim_ccache_t *out_ccache, kim_identity_t in_client_identity, kim_options_t in_options)" -->
+<a class="anchor" name="g52fa72130f4ba6de8cce1224578102ce"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_create_new_if_needed" ref="g52fa72130f4ba6de8cce1224578102ce" args="(kim_ccache *out_ccache, kim_identity in_client_identity, kim_options in_options)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_create_new_if_needed           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_create_new_if_needed           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *&nbsp;</td>
           <td class="paramname"> <em>out_ccache</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_client_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -116,30 +117,30 @@ Find a ccache containing a valid initial credential in the cache collection, or
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, a ccache object for a ccache containing a newly acquired initial credential. Must be freed with <a class="el" href="group__kim__ccache__reference.html#g2e9e82cd849c9815857397a9b869c45c" title="Free memory associated with a ccache.">kim_ccache_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, a ccache object for a ccache containing a newly acquired initial credential. Must be freed with <a class="el" href="group__kim__ccache__reference.html#g6c6be543e0ea2b518612be4255e15b9a" title="Free memory associated with a ccache.">kim_ccache_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_client_identity</em>&nbsp;</td><td>a client identity to obtain a credential for. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_options</em>&nbsp;</td><td>options to control credential acquisition (if a credential is acquired). </td></tr>
   </table>
 </dl>
-<dl class="note" compact><dt><b>Note:</b></dt><dd>Depending on the kim_options specified, <a class="el" href="group__kim__ccache__reference.html#gd4242a5d6b2cc7222bcb065deb5fdf17" title="Find a ccache containing a valid initial credential in the cache collection, or if...">kim_ccache_create_new_if_needed()</a> may present a GUI or command line prompt to obtain information from the user. </dd></dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>Depending on the kim_options specified, <a class="el" href="group__kim__ccache__reference.html#g52fa72130f4ba6de8cce1224578102ce" title="Find a ccache containing a valid initial credential in the cache collection, or if...">kim_ccache_create_new_if_needed()</a> may present a GUI or command line prompt to obtain information from the user. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gfc1faee53dbb4b1dab1a5daf8f685f64"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_create_from_client_identity" ref="gfc1faee53dbb4b1dab1a5daf8f685f64" args="(kim_ccache_t *out_ccache, kim_identity_t in_client_identity)" -->
+<a class="anchor" name="g6ecc14b94ffb57ca8008d0a407bb9c7d"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_create_from_client_identity" ref="g6ecc14b94ffb57ca8008d0a407bb9c7d" args="(kim_ccache *out_ccache, kim_identity in_client_identity)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_create_from_client_identity           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_create_from_client_identity           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *&nbsp;</td>
           <td class="paramname"> <em>out_ccache</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_client_identity</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -156,40 +157,40 @@ Find a ccache for a client identity in the cache collection.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, a ccache object for a ccache containing a TGT credential. Must be freed with <a class="el" href="group__kim__ccache__reference.html#g2e9e82cd849c9815857397a9b869c45c" title="Free memory associated with a ccache.">kim_ccache_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, a ccache object for a ccache containing a TGT credential. Must be freed with <a class="el" href="group__kim__ccache__reference.html#g6c6be543e0ea2b518612be4255e15b9a" title="Free memory associated with a ccache.">kim_ccache_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_client_identity</em>&nbsp;</td><td>a client identity to obtain a credential for. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g21a41ecd65dcb9d5b6a2e4d45d3f690b"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_create_from_keytab" ref="g21a41ecd65dcb9d5b6a2e4d45d3f690b" args="(kim_ccache_t *out_ccache, kim_identity_t in_identity, kim_options_t in_options, kim_string_t in_keytab)" -->
+<a class="anchor" name="g15cb7e1b9069a610030211cecc5e6232"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_create_from_keytab" ref="g15cb7e1b9069a610030211cecc5e6232" args="(kim_ccache *out_ccache, kim_identity in_identity, kim_options in_options, kim_string in_keytab)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_create_from_keytab           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_create_from_keytab           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *&nbsp;</td>
           <td class="paramname"> <em>out_ccache</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_keytab</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -206,24 +207,24 @@ Acquire a new initial credential from a keytab and store it in a ccache.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, a new ccache object containing an initial credential for the client identity <em>in_identity</em> obtained using in_keytab. Must be freed with <a class="el" href="group__kim__ccache__reference.html#g2e9e82cd849c9815857397a9b869c45c" title="Free memory associated with a ccache.">kim_ccache_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, a new ccache object containing an initial credential for the client identity <em>in_identity</em> obtained using in_keytab. Must be freed with <a class="el" href="group__kim__ccache__reference.html#g6c6be543e0ea2b518612be4255e15b9a" title="Free memory associated with a ccache.">kim_ccache_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_identity</em>&nbsp;</td><td>a client identity to obtain a credential for. Specify NULL for the first client identity in the keytab. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_options</em>&nbsp;</td><td>options to control credential acquisition. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_keytab</em>&nbsp;</td><td>a path to a keytab. Specify NULL for the default keytab location. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gec7b1b8d8514d76bb0608670106ab31c"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_create_from_default" ref="gec7b1b8d8514d76bb0608670106ab31c" args="(kim_ccache_t *out_ccache)" -->
+<a class="anchor" name="g137761ce872ca756c08e7c31e4101df5"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_create_from_default" ref="g137761ce872ca756c08e7c31e4101df5" args="(kim_ccache *out_ccache)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_create_from_default           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_create_from_default           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *&nbsp;</td>
           <td class="paramname"> <em>out_ccache</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td width="100%"></td>
@@ -237,33 +238,33 @@ Get the default ccache.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, a ccache object for the default ccache. Must be freed with <a class="el" href="group__kim__ccache__reference.html#g2e9e82cd849c9815857397a9b869c45c" title="Free memory associated with a ccache.">kim_ccache_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, a ccache object for the default ccache. Must be freed with <a class="el" href="group__kim__ccache__reference.html#g6c6be543e0ea2b518612be4255e15b9a" title="Free memory associated with a ccache.">kim_ccache_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="ge6584e47a08e7da567e8a44a616c476c"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_create_from_type_and_name" ref="ge6584e47a08e7da567e8a44a616c476c" args="(kim_ccache_t *out_ccache, kim_string_t in_type, kim_string_t in_name)" -->
+<a class="anchor" name="g4c532da378a5bc222eeaa8ecbabecb72"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_create_from_type_and_name" ref="g4c532da378a5bc222eeaa8ecbabecb72" args="(kim_ccache *out_ccache, kim_string in_type, kim_string in_name)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_create_from_type_and_name           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_create_from_type_and_name           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *&nbsp;</td>
           <td class="paramname"> <em>out_ccache</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_type</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_name</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -280,24 +281,24 @@ Get a ccache for a ccache type and name.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, a ccache object for the ccache identified by <em>in_type</em> and <em>in_name</em>. Must be freed with <a class="el" href="group__kim__ccache__reference.html#g2e9e82cd849c9815857397a9b869c45c" title="Free memory associated with a ccache.">kim_ccache_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, a ccache object for the ccache identified by <em>in_type</em> and <em>in_name</em>. Must be freed with <a class="el" href="group__kim__ccache__reference.html#g6c6be543e0ea2b518612be4255e15b9a" title="Free memory associated with a ccache.">kim_ccache_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_type</em>&nbsp;</td><td>a ccache type string. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_name</em>&nbsp;</td><td>a ccache name string. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>This API is provided for backwards compatibilty with applications which are not KIM-aware and should be avoided whenever possible. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gec8637b71f0d75603635c5d433bd4fb6"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_create_from_krb5_ccache" ref="gec8637b71f0d75603635c5d433bd4fb6" args="(kim_ccache_t *out_ccache, krb5_context in_krb5_context, krb5_ccache in_krb5_ccache)" -->
+<a class="anchor" name="g1d5c688dd5fae7e722ee7dd3e335fe34"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_create_from_krb5_ccache" ref="g1d5c688dd5fae7e722ee7dd3e335fe34" args="(kim_ccache *out_ccache, krb5_context in_krb5_context, krb5_ccache in_krb5_ccache)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_create_from_krb5_ccache           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_create_from_krb5_ccache           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *&nbsp;</td>
           <td class="paramname"> <em>out_ccache</em>, </td>
         </tr>
         <tr>
@@ -326,29 +327,29 @@ Get a ccache for a krb5 ccache.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, a new ccache object which is a copy of in_krb5_ccache. Must be freed with <a class="el" href="group__kim__ccache__reference.html#g2e9e82cd849c9815857397a9b869c45c" title="Free memory associated with a ccache.">kim_ccache_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, a new ccache object which is a copy of in_krb5_ccache. Must be freed with <a class="el" href="group__kim__ccache__reference.html#g6c6be543e0ea2b518612be4255e15b9a" title="Free memory associated with a ccache.">kim_ccache_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_krb5_context</em>&nbsp;</td><td>the krb5 context used to create <em>in_krb5_ccache</em>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_krb5_ccache</em>&nbsp;</td><td>a krb5 ccache object. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g76e16a971c011d60af61946a6f3da31d"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_copy" ref="g76e16a971c011d60af61946a6f3da31d" args="(kim_ccache_t *out_ccache, kim_ccache_t in_ccache)" -->
+<a class="anchor" name="gc56dbcf51cddbe0e08b695e649c4a4de"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_copy" ref="gc56dbcf51cddbe0e08b695e649c4a4de" args="(kim_ccache *out_ccache, kim_ccache in_ccache)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_copy           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_copy           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *&nbsp;</td>
           <td class="paramname"> <em>out_ccache</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a>&nbsp;</td>
           <td class="paramname"> <em>in_ccache</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -365,22 +366,22 @@ Copy a ccache.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, the new ccache object which is a copy of in_ccache. Must be freed with <a class="el" href="group__kim__ccache__reference.html#g2e9e82cd849c9815857397a9b869c45c" title="Free memory associated with a ccache.">kim_ccache_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, the new ccache object which is a copy of in_ccache. Must be freed with <a class="el" href="group__kim__ccache__reference.html#g6c6be543e0ea2b518612be4255e15b9a" title="Free memory associated with a ccache.">kim_ccache_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_ccache</em>&nbsp;</td><td>a ccache object. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gdfa9451814442e3acfd426a1abea8604"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_krb5_ccache" ref="gdfa9451814442e3acfd426a1abea8604" args="(kim_ccache_t in_ccache, krb5_context in_krb5_context, krb5_ccache *out_krb5_ccache)" -->
+<a class="anchor" name="g2c141d7d829dfcf4b761cd04f71a5443"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_krb5_ccache" ref="g2c141d7d829dfcf4b761cd04f71a5443" args="(kim_ccache in_ccache, krb5_context in_krb5_context, krb5_ccache *out_krb5_ccache)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_get_krb5_ccache           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_get_krb5_ccache           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a>&nbsp;</td>
           <td class="paramname"> <em>in_ccache</em>, </td>
         </tr>
         <tr>
@@ -414,24 +415,24 @@ Get a krb5 ccache for a ccache.
     <tr><td valign="top"></td><td valign="top"><em>out_krb5_ccache</em>&nbsp;</td><td>on exit, a new krb5 ccache object which is a copy of in_ccache. Must be freed with krb5_cc_close() or krb5_cc_destroy(). </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gec1c9af407a6554401a7f32c49cabd6a"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_name" ref="gec1c9af407a6554401a7f32c49cabd6a" args="(kim_ccache_t in_ccache, kim_string_t *out_name)" -->
+<a class="anchor" name="g18d612eddf05b4deb11e97071b5ad17b"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_name" ref="g18d612eddf05b4deb11e97071b5ad17b" args="(kim_ccache in_ccache, kim_string *out_name)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_get_name           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_get_name           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a>&nbsp;</td>
           <td class="paramname"> <em>in_ccache</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *&nbsp;</td>
           <td class="paramname"> <em>out_name</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -452,24 +453,24 @@ Get the name of a ccache.
     <tr><td valign="top"></td><td valign="top"><em>out_name</em>&nbsp;</td><td>on exit, the name string of <em>in_ccache</em>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gbf079f8dff05db6bb9aa152df83029fb"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_type" ref="gbf079f8dff05db6bb9aa152df83029fb" args="(kim_ccache_t in_ccache, kim_string_t *out_type)" -->
+<a class="anchor" name="ge49fc64af74ad437de6becdbee876117"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_type" ref="ge49fc64af74ad437de6becdbee876117" args="(kim_ccache in_ccache, kim_string *out_type)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_get_type           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_get_type           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a>&nbsp;</td>
           <td class="paramname"> <em>in_ccache</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *&nbsp;</td>
           <td class="paramname"> <em>out_type</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -490,24 +491,24 @@ Get the type of a ccache.
     <tr><td valign="top"></td><td valign="top"><em>out_type</em>&nbsp;</td><td>on exit, the type string of <em>in_ccache</em>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g3a0f51defaf127b77b1e44092a352e31"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_display_name" ref="g3a0f51defaf127b77b1e44092a352e31" args="(kim_ccache_t in_ccache, kim_string_t *out_display_name)" -->
+<a class="anchor" name="ga89f6bfa35c436621ff324b805a7c669"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_display_name" ref="ga89f6bfa35c436621ff324b805a7c669" args="(kim_ccache in_ccache, kim_string *out_display_name)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_get_display_name           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_get_display_name           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a>&nbsp;</td>
           <td class="paramname"> <em>in_ccache</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *&nbsp;</td>
           <td class="paramname"> <em>out_display_name</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -525,27 +526,27 @@ Get the type and name for a ccache in display format.
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_ccache</em>&nbsp;</td><td>a ccache object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_display_name</em>&nbsp;</td><td>on exit, the type and name of <em>in_ccache</em> in a format appropriate for display to the user in command line programs. (ie: "&lt;type&gt;:&lt;name&gt;") Must be freed with <a class="el" href="group__kim__string__reference.html#ga3e9ac5bcab38b089adfeebd8ba56ded" title="Free memory associated with a string.">kim_string_free()</a>. Note: this string can also be passed to krb5_cc_resolve(). </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_display_name</em>&nbsp;</td><td>on exit, the type and name of <em>in_ccache</em> in a format appropriate for display to the user in command line programs. (ie: "&lt;type&gt;:&lt;name&gt;") Must be freed with <a class="el" href="group__kim__string__reference.html#g7e7207329022e97473ec71574e52a1fc" title="Free memory associated with a string.">kim_string_free()</a>. Note: this string can also be passed to krb5_cc_resolve(). </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gd5abbe1c6e1a0d191695bb373f9a7957"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_client_identity" ref="gd5abbe1c6e1a0d191695bb373f9a7957" args="(kim_ccache_t in_ccache, kim_identity_t *out_client_identity)" -->
+<a class="anchor" name="g754252665d1cd87d9ee8f6f51d62f211"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_client_identity" ref="g754252665d1cd87d9ee8f6f51d62f211" args="(kim_ccache in_ccache, kim_identity *out_client_identity)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_get_client_identity           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_get_client_identity           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a>&nbsp;</td>
           <td class="paramname"> <em>in_ccache</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *&nbsp;</td>
           <td class="paramname"> <em>out_client_identity</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -563,27 +564,27 @@ Get the client identity for a ccache.
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_ccache</em>&nbsp;</td><td>a ccache object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_client_identity</em>&nbsp;</td><td>on exit, an identity object containing the client identity of <em>in_ccache</em>. Must be freed with <a class="el" href="group__kim__identity__reference.html#gd384198163f30b97a6a583ad871a0e23" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_client_identity</em>&nbsp;</td><td>on exit, an identity object containing the client identity of <em>in_ccache</em>. Must be freed with <a class="el" href="group__kim__identity__reference.html#g3ae8057f3eb0040330b598645d470411" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g78ff442478e0faa46c63774c49a7b51e"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_valid_credential" ref="g78ff442478e0faa46c63774c49a7b51e" args="(kim_ccache_t in_ccache, kim_credential_t *out_credential)" -->
+<a class="anchor" name="g0fbacc48909c484623329b8131bfb3d0"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_valid_credential" ref="g0fbacc48909c484623329b8131bfb3d0" args="(kim_ccache in_ccache, kim_credential *out_credential)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_get_valid_credential           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_get_valid_credential           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a>&nbsp;</td>
           <td class="paramname"> <em>in_ccache</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> *&nbsp;</td>
           <td class="paramname"> <em>out_credential</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -601,28 +602,67 @@ Get the first valid credential in a ccache.
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_ccache</em>&nbsp;</td><td>a ccache object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_credential</em>&nbsp;</td><td>on exit, the first valid credential in <em>in_ccache</em>. Must be freed with <a class="el" href="group__kim__credential__reference.html#gb92567dd6b60e525f343cc401e1949aa" title="Free memory associated with a credential object.">kim_credential_free()</a>. Set to NULL if you only want return value, not the actual credential. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_credential</em>&nbsp;</td><td>on exit, the first valid credential in <em>in_ccache</em>. Must be freed with <a class="el" href="group__kim__credential__reference.html#g5609d3883f82eb3938a2d80e06bd0845" title="Free memory associated with a credential object.">kim_credential_free()</a>. Set to NULL if you only want return value, not the actual credential. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="note" compact><dt><b>Note:</b></dt><dd>This function prefers TGT credentials. If there are any non-valid TGTs in the ccache, it will always return an error. However, if there are no TGTs at all, it will return the first valid non-TGT credential. If you only want TGTs, use <a class="el" href="group__kim__credential__reference.html#gdf4e9b444c5050199476721a5cec67f7" title="Check if a credential is a ticket granting ticket.">kim_credential_is_tgt()</a> to verify that <em>out_credential</em> is a tgt. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>This function prefers valid TGT credentials. If there are only non-valid TGTs in the ccache, it will always return an error. However, if there are no TGTs at all, it will return the first valid non-TGT credential. If you only want TGTs, use <a class="el" href="group__kim__credential__reference.html#gcf207597546b2397e8534c5bb354001a" title="Check if a credential is a ticket granting ticket.">kim_credential_is_tgt()</a> to verify that <em>out_credential</em> is a tgt. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gb8793586b7c4054f2219b28920bf12bd"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_start_time" ref="gb8793586b7c4054f2219b28920bf12bd" args="(kim_ccache_t in_ccache, kim_time_t *out_start_time)" -->
+<a class="anchor" name="gb838921f1d2db46468ea14d9e7572c03"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_state" ref="gb838921f1d2db46468ea14d9e7572c03" args="(kim_ccache in_ccache, kim_credential_state *out_state)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_get_start_time           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_get_state           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a>&nbsp;</td>
           <td class="paramname"> <em>in_ccache</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g48e19d7e4aec7dc6662149cab39bbe20">kim_credential_state</a> *&nbsp;</td>
+          <td class="paramname"> <em>out_state</em></td><td>&nbsp;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td><td width="100%"></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+Check the state of the credentials in a ccache (valid, expired, postdated, etc). 
+<p>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>in_ccache</em>&nbsp;</td><td>a ccache object. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_state</em>&nbsp;</td><td>on exit, the state of the credentials in <em>in_ccache</em>. See <a class="el" href="group__kim__types__reference.html#g6e5c2c986359589562c83f1da2cf0ca0">kim_credential_state_enum</a> for the possible values of <em>out_state</em>. </td></tr>
+  </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>This function prefers TGT credentials. If there are any TGTs in the ccache, it will always return their state. However, if there are no TGTs at all, it will return the state of the first non-TGT credential. </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="gb2165acd652eddaeb61c8f6b8c3a16f7"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_start_time" ref="gb2165acd652eddaeb61c8f6b8c3a16f7" args="(kim_ccache in_ccache, kim_time *out_start_time)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_get_start_time           </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a>&nbsp;</td>
+          <td class="paramname"> <em>in_ccache</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g3da22452677b45753d40e07f3904dff5">kim_time</a> *&nbsp;</td>
           <td class="paramname"> <em>out_start_time</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -643,24 +683,24 @@ Get the time when the credentials in the ccache become valid.
     <tr><td valign="top"></td><td valign="top"><em>out_start_time</em>&nbsp;</td><td>on exit, the time when the credentials in <em>in_ccache</em> become valid. May be in the past or future. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g2cbb6b78cac2bb2e4359caf8b53d60c5"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_expiration_time" ref="g2cbb6b78cac2bb2e4359caf8b53d60c5" args="(kim_ccache_t in_ccache, kim_time_t *out_expiration_time)" -->
+<a class="anchor" name="g52693fc485cf2e3bd5cf0c0a3d414d8a"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_expiration_time" ref="g52693fc485cf2e3bd5cf0c0a3d414d8a" args="(kim_ccache in_ccache, kim_time *out_expiration_time)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_get_expiration_time           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_get_expiration_time           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a>&nbsp;</td>
           <td class="paramname"> <em>in_ccache</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g3da22452677b45753d40e07f3904dff5">kim_time</a> *&nbsp;</td>
           <td class="paramname"> <em>out_expiration_time</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -681,24 +721,24 @@ Get the time when the credentials in the ccache will expire.
     <tr><td valign="top"></td><td valign="top"><em>out_expiration_time</em>&nbsp;</td><td>on exit, the time when the credentials in <em>in_ccache</em> will expire. May be in the past or future. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gfaad7545fbdb381faed8d2378009bd6e"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_renewal_expiration_time" ref="gfaad7545fbdb381faed8d2378009bd6e" args="(kim_ccache_t in_ccache, kim_time_t *out_renewal_expiration_time)" -->
+<a class="anchor" name="g01b4cbb88abf6aafd2efdaad91d74f0f"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_get_renewal_expiration_time" ref="g01b4cbb88abf6aafd2efdaad91d74f0f" args="(kim_ccache in_ccache, kim_time *out_renewal_expiration_time)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_get_renewal_expiration_time           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_get_renewal_expiration_time           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a>&nbsp;</td>
           <td class="paramname"> <em>in_ccache</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g3da22452677b45753d40e07f3904dff5">kim_time</a> *&nbsp;</td>
           <td class="paramname"> <em>out_renewal_expiration_time</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -719,18 +759,18 @@ Get the time when the credentials in the ccache will no longer be renewable.
     <tr><td valign="top"></td><td valign="top"><em>out_renewal_expiration_time</em>&nbsp;</td><td>on exit, the time when the credentials in <em>in_ccache</em> will no longer be renewable. May be in the past or future. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g5614c04acbdf006e86dd787dce5a2600"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_set_default" ref="g5614c04acbdf006e86dd787dce5a2600" args="(kim_ccache_t io_ccache)" -->
+<a class="anchor" name="ga9f694b7c3dea5cc3422604571419f80"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_set_default" ref="ga9f694b7c3dea5cc3422604571419f80" args="(kim_ccache io_ccache)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_set_default           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_set_default           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a>&nbsp;</td>
           <td class="paramname"> <em>io_ccache</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td width="100%"></td>
@@ -747,37 +787,37 @@ Set a ccache to the default ccache.
     <tr><td valign="top"></td><td valign="top"><em>io_ccache</em>&nbsp;</td><td>a ccache object which will be set to the default ccache. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>This API is provided for backwards compatibilty with applications which are not KIM-aware and should be avoided whenever possible. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g3d293fc7338ff9b654e167153df33b5c"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_verify" ref="g3d293fc7338ff9b654e167153df33b5c" args="(kim_ccache_t in_ccache, kim_identity_t in_service_identity, kim_string_t in_keytab, kim_boolean_t in_fail_if_no_service_key)" -->
+<a class="anchor" name="g8836113dd86a0dc3cf60df0d76280de6"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_verify" ref="g8836113dd86a0dc3cf60df0d76280de6" args="(kim_ccache in_ccache, kim_identity in_service_identity, kim_string in_keytab, kim_boolean in_fail_if_no_service_key)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_verify           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_verify           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a>&nbsp;</td>
           <td class="paramname"> <em>in_ccache</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_service_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_keytab</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a>&nbsp;</td>
           <td class="paramname"> <em>in_fail_if_no_service_key</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -801,24 +841,24 @@ Verify the TGT in a ccache.
   </table>
 </dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>specifying FALSE for <em>in_fail_if_no_service_key</em> may expose the calling program to the Zanarotti attack if the host has no keytab installed. </dd></dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gafb44675df9d05af5b899996be14e2b4"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_renew" ref="gafb44675df9d05af5b899996be14e2b4" args="(kim_ccache_t in_ccache, kim_options_t in_options)" -->
+<a class="anchor" name="g574a0ef674116589dcf57460af81de39"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_renew" ref="g574a0ef674116589dcf57460af81de39" args="(kim_ccache in_ccache, kim_options in_options)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_renew           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_renew           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a>&nbsp;</td>
           <td class="paramname"> <em>in_ccache</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -839,24 +879,24 @@ Renew the TGT in a ccache.
     <tr><td valign="top"></td><td valign="top"><em>in_options</em>&nbsp;</td><td>initial credential options to be used if a new credential is obtained. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g8bb7d46268621e73629dceefd15ff639"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_validate" ref="g8bb7d46268621e73629dceefd15ff639" args="(kim_ccache_t in_ccache, kim_options_t in_options)" -->
+<a class="anchor" name="g73f5b201d24a58936244fc4e43cd3d59"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_validate" ref="g73f5b201d24a58936244fc4e43cd3d59" args="(kim_ccache in_ccache, kim_options in_options)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_validate           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_validate           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a>&nbsp;</td>
           <td class="paramname"> <em>in_ccache</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -877,18 +917,18 @@ Validate the TGT in a ccache.
     <tr><td valign="top"></td><td valign="top"><em>in_options</em>&nbsp;</td><td>initial credential options. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g6e750b24766c0f3991bcf0d873eb4d3e"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_destroy" ref="g6e750b24766c0f3991bcf0d873eb4d3e" args="(kim_ccache_t *io_ccache)" -->
+<a class="anchor" name="g6aa0f2f977b4d966d4d37c387502ec17"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_destroy" ref="g6aa0f2f977b4d966d4d37c387502ec17" args="(kim_ccache *io_ccache)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_ccache_destroy           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_ccache_destroy           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *&nbsp;</td>
           <td class="paramname"> <em>io_ccache</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td width="100%"></td>
@@ -905,19 +945,19 @@ Remove a ccache from the cache collection.
     <tr><td valign="top"></td><td valign="top"><em>io_ccache</em>&nbsp;</td><td>a ccache object to be destroyed. Set to NULL on exit. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="note" compact><dt><b>Note:</b></dt><dd>Frees memory associated with the ccache. Do not call <a class="el" href="group__kim__ccache__reference.html#g2e9e82cd849c9815857397a9b869c45c" title="Free memory associated with a ccache.">kim_ccache_free()</a> after calling this function. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>Frees memory associated with the ccache. Do not call <a class="el" href="group__kim__ccache__reference.html#g6c6be543e0ea2b518612be4255e15b9a" title="Free memory associated with a ccache.">kim_ccache_free()</a> after calling this function. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g2e9e82cd849c9815857397a9b869c45c"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_free" ref="g2e9e82cd849c9815857397a9b869c45c" args="(kim_ccache_t *io_ccache)" -->
+<a class="anchor" name="g6c6be543e0ea2b518612be4255e15b9a"></a><!-- doxytag: member="kim_ccache.h::kim_ccache_free" ref="g6c6be543e0ea2b518612be4255e15b9a" args="(kim_ccache *io_ccache)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void kim_ccache_free           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *&nbsp;</td>
           <td class="paramname"> <em>io_ccache</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td width="100%"></td>
@@ -937,7 +977,7 @@ Free memory associated with a ccache.
 
 </div>
 </div><p>
-<hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:19 2008 for Kerberos Identity Management by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index f1ffa68bd85b5963be3308943519b81f1db04361..81c8ab15721f93974058ce999486b1ab46640efe 100644 (file)
@@ -9,25 +9,25 @@
 <p>
 <h2>Functions</h2>
 <ul>
-<li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__credential__iterator__reference.html#g4a1f55aa90053b8d59281a0f7d12590c">kim_credential_iterator_create</a> (<a class="el" href="group__kim__types__reference.html#gaf149c8bd856b9067a9f42ccd2afdd37">kim_credential_iterator_t</a> *out_credential_iterator, <a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> in_ccache)
-<dl class="el"><dd class="mdescRight">Get a credential iterator to enumerate credentials in a ccache.  <a href="#g4a1f55aa90053b8d59281a0f7d12590c"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__credential__iterator__reference.html#ge7f5bc2cf2cc42c3e39fd4f945b474cd">kim_credential_iterator_next</a> (<a class="el" href="group__kim__types__reference.html#gaf149c8bd856b9067a9f42ccd2afdd37">kim_credential_iterator_t</a> in_credential_iterator, <a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> *out_credential)
-<dl class="el"><dd class="mdescRight">Get the next credential in a ccache.  <a href="#ge7f5bc2cf2cc42c3e39fd4f945b474cd"></a><br></dl><li>void <a class="el" href="group__kim__credential__iterator__reference.html#gb32e376af0b819cb3c9ca30f3db1c86b">kim_credential_iterator_free</a> (<a class="el" href="group__kim__types__reference.html#gaf149c8bd856b9067a9f42ccd2afdd37">kim_credential_iterator_t</a> *io_credential_iterator)
-<dl class="el"><dd class="mdescRight">Free memory associated with a credential iterator.  <a href="#gb32e376af0b819cb3c9ca30f3db1c86b"></a><br></dl></ul>
+<li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__credential__iterator__reference.html#g5211e3c0c8881cd869eb20c03881304a">kim_credential_iterator_create</a> (<a class="el" href="group__kim__types__reference.html#gdd760f1db624009792f1b5100cd6c4e3">kim_credential_iterator</a> *out_credential_iterator, <a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> in_ccache)
+<dl class="el"><dd class="mdescRight">Get a credential iterator to enumerate credentials in a ccache.  <a href="#g5211e3c0c8881cd869eb20c03881304a"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__credential__iterator__reference.html#g68e99dbf9a54dff3f47a0852b17efd1f">kim_credential_iterator_next</a> (<a class="el" href="group__kim__types__reference.html#gdd760f1db624009792f1b5100cd6c4e3">kim_credential_iterator</a> in_credential_iterator, <a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> *out_credential)
+<dl class="el"><dd class="mdescRight">Get the next credential in a ccache.  <a href="#g68e99dbf9a54dff3f47a0852b17efd1f"></a><br></dl><li>void <a class="el" href="group__kim__credential__iterator__reference.html#gd6c2fc4ec6698769434ad6ed28828933">kim_credential_iterator_free</a> (<a class="el" href="group__kim__types__reference.html#gdd760f1db624009792f1b5100cd6c4e3">kim_credential_iterator</a> *io_credential_iterator)
+<dl class="el"><dd class="mdescRight">Free memory associated with a credential iterator.  <a href="#gd6c2fc4ec6698769434ad6ed28828933"></a><br></dl></ul>
 <hr><h2>Function Documentation</h2>
-<a class="anchor" name="g4a1f55aa90053b8d59281a0f7d12590c"></a><!-- doxytag: member="kim_credential.h::kim_credential_iterator_create" ref="g4a1f55aa90053b8d59281a0f7d12590c" args="(kim_credential_iterator_t *out_credential_iterator, kim_ccache_t in_ccache)" -->
+<a class="anchor" name="g5211e3c0c8881cd869eb20c03881304a"></a><!-- doxytag: member="kim_credential.h::kim_credential_iterator_create" ref="g5211e3c0c8881cd869eb20c03881304a" args="(kim_credential_iterator *out_credential_iterator, kim_ccache in_ccache)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_credential_iterator_create           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_credential_iterator_create           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaf149c8bd856b9067a9f42ccd2afdd37">kim_credential_iterator_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdd760f1db624009792f1b5100cd6c4e3">kim_credential_iterator</a> *&nbsp;</td>
           <td class="paramname"> <em>out_credential_iterator</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a>&nbsp;</td>
           <td class="paramname"> <em>in_ccache</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -44,28 +44,28 @@ Get a credential iterator to enumerate credentials in a ccache.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_credential_iterator</em>&nbsp;</td><td>on exit, a credential iterator object for <em>in_ccache</em>. Must be freed with <a class="el" href="group__kim__credential__iterator__reference.html#gb32e376af0b819cb3c9ca30f3db1c86b" title="Free memory associated with a credential iterator.">kim_credential_iterator_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_credential_iterator</em>&nbsp;</td><td>on exit, a credential iterator object for <em>in_ccache</em>. Must be freed with <a class="el" href="group__kim__credential__iterator__reference.html#gd6c2fc4ec6698769434ad6ed28828933" title="Free memory associated with a credential iterator.">kim_credential_iterator_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_ccache</em>&nbsp;</td><td>a ccache object. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="ge7f5bc2cf2cc42c3e39fd4f945b474cd"></a><!-- doxytag: member="kim_credential.h::kim_credential_iterator_next" ref="ge7f5bc2cf2cc42c3e39fd4f945b474cd" args="(kim_credential_iterator_t in_credential_iterator, kim_credential_t *out_credential)" -->
+<a class="anchor" name="g68e99dbf9a54dff3f47a0852b17efd1f"></a><!-- doxytag: member="kim_credential.h::kim_credential_iterator_next" ref="g68e99dbf9a54dff3f47a0852b17efd1f" args="(kim_credential_iterator in_credential_iterator, kim_credential *out_credential)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_credential_iterator_next           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_credential_iterator_next           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaf149c8bd856b9067a9f42ccd2afdd37">kim_credential_iterator_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdd760f1db624009792f1b5100cd6c4e3">kim_credential_iterator</a>&nbsp;</td>
           <td class="paramname"> <em>in_credential_iterator</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> *&nbsp;</td>
           <td class="paramname"> <em>out_credential</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -83,21 +83,21 @@ Get the next credential in a ccache.
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_credential_iterator</em>&nbsp;</td><td>a credential iterator object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_credential</em>&nbsp;</td><td>on exit, the next credential in the ccache iterated by <em>in_credential_iterator</em>. Must be freed with <a class="el" href="group__kim__credential__reference.html#gb92567dd6b60e525f343cc401e1949aa" title="Free memory associated with a credential object.">kim_credential_free()</a>. If there are no more credentials this argument will be set to NULL. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_credential</em>&nbsp;</td><td>on exit, the next credential in the ccache iterated by <em>in_credential_iterator</em>. Must be freed with <a class="el" href="group__kim__credential__reference.html#g5609d3883f82eb3938a2d80e06bd0845" title="Free memory associated with a credential object.">kim_credential_free()</a>. If there are no more credentials this argument will be set to NULL. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gb32e376af0b819cb3c9ca30f3db1c86b"></a><!-- doxytag: member="kim_credential.h::kim_credential_iterator_free" ref="gb32e376af0b819cb3c9ca30f3db1c86b" args="(kim_credential_iterator_t *io_credential_iterator)" -->
+<a class="anchor" name="gd6c2fc4ec6698769434ad6ed28828933"></a><!-- doxytag: member="kim_credential.h::kim_credential_iterator_free" ref="gd6c2fc4ec6698769434ad6ed28828933" args="(kim_credential_iterator *io_credential_iterator)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void kim_credential_iterator_free           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaf149c8bd856b9067a9f42ccd2afdd37">kim_credential_iterator_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdd760f1db624009792f1b5100cd6c4e3">kim_credential_iterator</a> *&nbsp;</td>
           <td class="paramname"> <em>io_credential_iterator</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td width="100%"></td>
@@ -117,7 +117,7 @@ Free memory associated with a credential iterator.
 
 </div>
 </div><p>
-<hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:19 2008 for Kerberos Identity Management by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index 290e1a4042f516b7cd98a05b9f003043a2b82ebe..df5250239acc160d61a18da9c0fe5841adf0aa9c 100644 (file)
@@ -9,45 +9,45 @@
 <p>
 <h2>Functions</h2>
 <ul>
-<li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__credential__reference.html#g318fdf6ea1e937a35e947dab6efa695d">kim_credential_create_new</a> (<a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> *out_credential, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_client_identity, <a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options)
-<dl class="el"><dd class="mdescRight">Acquire a new initial credential.  <a href="#g318fdf6ea1e937a35e947dab6efa695d"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__credential__reference.html#g465dab295b62d786d7e83e95409fae94">kim_credential_create_from_keytab</a> (<a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> *out_credential, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_identity, <a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_keytab)
-<dl class="el"><dd class="mdescRight">Acquire a new initial credential from a keytab.  <a href="#g465dab295b62d786d7e83e95409fae94"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__credential__reference.html#ge08f4082cca6e0d4779d6ab7c105bcfe">kim_credential_create_from_krb5_creds</a> (<a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> *out_credential, krb5_context in_krb5_context, krb5_creds *in_krb5_creds)
-<dl class="el"><dd class="mdescRight">Copy a credential from a krb5 credential object.  <a href="#ge08f4082cca6e0d4779d6ab7c105bcfe"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__credential__reference.html#g1a6218c74a07a9b9c262c35404475fd7">kim_credential_copy</a> (<a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> *out_credential, <a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> in_credential)
-<dl class="el"><dd class="mdescRight">Copy a credential object.  <a href="#g1a6218c74a07a9b9c262c35404475fd7"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__credential__reference.html#g35ac6a79b91ac1ec215c281fd0b94170">kim_credential_get_krb5_creds</a> (<a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> in_credential, krb5_context in_krb5_context, krb5_creds **out_krb5_creds)
-<dl class="el"><dd class="mdescRight">Get a krb5 credentials object for a credential object.  <a href="#g35ac6a79b91ac1ec215c281fd0b94170"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__credential__reference.html#gfab660faba5a6b2dc0f067dfe3e6235f">kim_credential_get_client_identity</a> (<a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> in_credential, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *out_client_identity)
-<dl class="el"><dd class="mdescRight">Get the client identity of a credential object.  <a href="#gfab660faba5a6b2dc0f067dfe3e6235f"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__credential__reference.html#g3bf00a133fbfe8fd3f9b6cba55ac6045">kim_credential_get_service_identity</a> (<a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> in_credential, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *out_service_identity)
-<dl class="el"><dd class="mdescRight">Get the service identity of a credential object.  <a href="#g3bf00a133fbfe8fd3f9b6cba55ac6045"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__credential__reference.html#gdf4e9b444c5050199476721a5cec67f7">kim_credential_is_tgt</a> (<a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> in_credential, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> *out_is_tgt)
-<dl class="el"><dd class="mdescRight">Check if a credential is a ticket granting ticket.  <a href="#gdf4e9b444c5050199476721a5cec67f7"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__credential__reference.html#g0796aac464740c6a046290c08661bda5">kim_credential_get_state</a> (<a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> in_credential, <a class="el" href="group__kim__types__reference.html#gc26053c4715f113e3580214d554781ad">kim_credential_state_t</a> *out_state)
-<dl class="el"><dd class="mdescRight">Check the state of a credential (valid, expired, postdated, etc).  <a href="#g0796aac464740c6a046290c08661bda5"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__credential__reference.html#g48b41bc28845e209c41b087d28250e2a">kim_credential_get_start_time</a> (<a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> in_credential, <a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a> *out_start_time)
-<dl class="el"><dd class="mdescRight">Get the time when the credentials become valid.  <a href="#g48b41bc28845e209c41b087d28250e2a"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__credential__reference.html#g07fc4d11e42bf7d32be67fcac531c372">kim_credential_get_expiration_time</a> (<a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> in_credential, <a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a> *out_expiration_time)
-<dl class="el"><dd class="mdescRight">Get the time when the credentials will expire.  <a href="#g07fc4d11e42bf7d32be67fcac531c372"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__credential__reference.html#g1723a7c06e32ee954be214767bc55194">kim_credential_get_renewal_expiration_time</a> (<a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> in_credential, <a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a> *out_renewal_expiration_time)
-<dl class="el"><dd class="mdescRight">Get the time when the credentials will no longer be renewable.  <a href="#g1723a7c06e32ee954be214767bc55194"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__credential__reference.html#g894c7144185b1112f6872fdf27fb016d">kim_credential_store</a> (<a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> in_credential, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_client_identity, <a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *out_ccache)
-<dl class="el"><dd class="mdescRight">Store a credential in a ccache in the cache collection.  <a href="#g894c7144185b1112f6872fdf27fb016d"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__credential__reference.html#g390a74d4d834fd1b5c2e7aebcd783e32">kim_credential_verify</a> (<a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> in_credential, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_service_identity, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_keytab, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> in_fail_if_no_service_key)
-<dl class="el"><dd class="mdescRight">Verify a TGT credential.  <a href="#g390a74d4d834fd1b5c2e7aebcd783e32"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__credential__reference.html#g99ac2c178bec484311cd7fc2cbb7e05e">kim_credential_renew</a> (<a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> *io_credential, <a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options)
-<dl class="el"><dd class="mdescRight">Renew a TGT credential.  <a href="#g99ac2c178bec484311cd7fc2cbb7e05e"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__credential__reference.html#g9cd6ba59236babb4e79a680fa54b5037">kim_credential_validate</a> (<a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> *io_credential, <a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options)
-<dl class="el"><dd class="mdescRight">Validate a TGT credential.  <a href="#g9cd6ba59236babb4e79a680fa54b5037"></a><br></dl><li>void <a class="el" href="group__kim__credential__reference.html#gb92567dd6b60e525f343cc401e1949aa">kim_credential_free</a> (<a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> *io_credential)
-<dl class="el"><dd class="mdescRight">Free memory associated with a credential object.  <a href="#gb92567dd6b60e525f343cc401e1949aa"></a><br></dl></ul>
+<li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__credential__reference.html#ga02a96b9ad6fbc64007f741fa21c8814">kim_credential_create_new</a> (<a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> *out_credential, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_client_identity, <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options)
+<dl class="el"><dd class="mdescRight">Acquire a new initial credential.  <a href="#ga02a96b9ad6fbc64007f741fa21c8814"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__credential__reference.html#g42c9498e4e928fce495867a1d1835dc3">kim_credential_create_from_keytab</a> (<a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> *out_credential, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_identity, <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_keytab)
+<dl class="el"><dd class="mdescRight">Acquire a new initial credential from a keytab.  <a href="#g42c9498e4e928fce495867a1d1835dc3"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__credential__reference.html#g5a65ab2a4209ee727d2a08ba8481dd8f">kim_credential_create_from_krb5_creds</a> (<a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> *out_credential, krb5_context in_krb5_context, krb5_creds *in_krb5_creds)
+<dl class="el"><dd class="mdescRight">Copy a credential from a krb5 credential object.  <a href="#g5a65ab2a4209ee727d2a08ba8481dd8f"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__credential__reference.html#gecf207628b94739322344678486b45d2">kim_credential_copy</a> (<a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> *out_credential, <a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> in_credential)
+<dl class="el"><dd class="mdescRight">Copy a credential object.  <a href="#gecf207628b94739322344678486b45d2"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__credential__reference.html#g5ccc2fc794ea3bf3dc947c8a3ccd1077">kim_credential_get_krb5_creds</a> (<a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> in_credential, krb5_context in_krb5_context, krb5_creds **out_krb5_creds)
+<dl class="el"><dd class="mdescRight">Get a krb5 credentials object for a credential object.  <a href="#g5ccc2fc794ea3bf3dc947c8a3ccd1077"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__credential__reference.html#g823f10b2a4db687fb555920808113392">kim_credential_get_client_identity</a> (<a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> in_credential, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *out_client_identity)
+<dl class="el"><dd class="mdescRight">Get the client identity of a credential object.  <a href="#g823f10b2a4db687fb555920808113392"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__credential__reference.html#g05208e303966c4c89371c18135de9cd7">kim_credential_get_service_identity</a> (<a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> in_credential, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *out_service_identity)
+<dl class="el"><dd class="mdescRight">Get the service identity of a credential object.  <a href="#g05208e303966c4c89371c18135de9cd7"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__credential__reference.html#gcf207597546b2397e8534c5bb354001a">kim_credential_is_tgt</a> (<a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> in_credential, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> *out_is_tgt)
+<dl class="el"><dd class="mdescRight">Check if a credential is a ticket granting ticket.  <a href="#gcf207597546b2397e8534c5bb354001a"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__credential__reference.html#g214a9d5e947d7947132a2849826a93f4">kim_credential_get_state</a> (<a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> in_credential, <a class="el" href="group__kim__types__reference.html#g48e19d7e4aec7dc6662149cab39bbe20">kim_credential_state</a> *out_state)
+<dl class="el"><dd class="mdescRight">Check the state of a credential (valid, expired, postdated, etc).  <a href="#g214a9d5e947d7947132a2849826a93f4"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__credential__reference.html#gcae9e3e2b129e68215eedf588da60bea">kim_credential_get_start_time</a> (<a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> in_credential, <a class="el" href="group__kim__types__reference.html#g3da22452677b45753d40e07f3904dff5">kim_time</a> *out_start_time)
+<dl class="el"><dd class="mdescRight">Get the time when the credentials become valid.  <a href="#gcae9e3e2b129e68215eedf588da60bea"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__credential__reference.html#gba6367f04f832e086a8b0c01ebd3f77e">kim_credential_get_expiration_time</a> (<a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> in_credential, <a class="el" href="group__kim__types__reference.html#g3da22452677b45753d40e07f3904dff5">kim_time</a> *out_expiration_time)
+<dl class="el"><dd class="mdescRight">Get the time when the credentials will expire.  <a href="#gba6367f04f832e086a8b0c01ebd3f77e"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__credential__reference.html#g4e50b4abf3efc36ed10c3049c9ff9a48">kim_credential_get_renewal_expiration_time</a> (<a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> in_credential, <a class="el" href="group__kim__types__reference.html#g3da22452677b45753d40e07f3904dff5">kim_time</a> *out_renewal_expiration_time)
+<dl class="el"><dd class="mdescRight">Get the time when the credentials will no longer be renewable.  <a href="#g4e50b4abf3efc36ed10c3049c9ff9a48"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__credential__reference.html#g52db69b8f2289a4b60a3eddb5cb6b671">kim_credential_store</a> (<a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> in_credential, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_client_identity, <a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *out_ccache)
+<dl class="el"><dd class="mdescRight">Store a credential in a ccache in the cache collection.  <a href="#g52db69b8f2289a4b60a3eddb5cb6b671"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__credential__reference.html#gf10b622ed5ea209bf06ba708732b6c07">kim_credential_verify</a> (<a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> in_credential, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_service_identity, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_keytab, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> in_fail_if_no_service_key)
+<dl class="el"><dd class="mdescRight">Verify a TGT credential.  <a href="#gf10b622ed5ea209bf06ba708732b6c07"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__credential__reference.html#g18f43112f7ae046b2a5918b061a2072d">kim_credential_renew</a> (<a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> *io_credential, <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options)
+<dl class="el"><dd class="mdescRight">Renew a TGT credential.  <a href="#g18f43112f7ae046b2a5918b061a2072d"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__credential__reference.html#g63a591ef509219ae83d11b635065984d">kim_credential_validate</a> (<a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> *io_credential, <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options)
+<dl class="el"><dd class="mdescRight">Validate a TGT credential.  <a href="#g63a591ef509219ae83d11b635065984d"></a><br></dl><li>void <a class="el" href="group__kim__credential__reference.html#g5609d3883f82eb3938a2d80e06bd0845">kim_credential_free</a> (<a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> *io_credential)
+<dl class="el"><dd class="mdescRight">Free memory associated with a credential object.  <a href="#g5609d3883f82eb3938a2d80e06bd0845"></a><br></dl></ul>
 <hr><h2>Function Documentation</h2>
-<a class="anchor" name="g318fdf6ea1e937a35e947dab6efa695d"></a><!-- doxytag: member="kim_credential.h::kim_credential_create_new" ref="g318fdf6ea1e937a35e947dab6efa695d" args="(kim_credential_t *out_credential, kim_identity_t in_client_identity, kim_options_t in_options)" -->
+<a class="anchor" name="ga02a96b9ad6fbc64007f741fa21c8814"></a><!-- doxytag: member="kim_credential.h::kim_credential_create_new" ref="ga02a96b9ad6fbc64007f741fa21c8814" args="(kim_credential *out_credential, kim_identity in_client_identity, kim_options in_options)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_credential_create_new           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_credential_create_new           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> *&nbsp;</td>
           <td class="paramname"> <em>out_credential</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_client_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -64,43 +64,43 @@ Acquire a new initial credential.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_credential</em>&nbsp;</td><td>on exit, a new credential object containing a newly acquired initial credential. Must be freed with <a class="el" href="group__kim__credential__reference.html#gb92567dd6b60e525f343cc401e1949aa" title="Free memory associated with a credential object.">kim_credential_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_credential</em>&nbsp;</td><td>on exit, a new credential object containing a newly acquired initial credential. Must be freed with <a class="el" href="group__kim__credential__reference.html#g5609d3883f82eb3938a2d80e06bd0845" title="Free memory associated with a credential object.">kim_credential_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_client_identity</em>&nbsp;</td><td>a client identity to obtain a credential for. Specify NULL to allow the user to choose the identity </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_options</em>&nbsp;</td><td>options to control credential acquisition. </td></tr>
   </table>
 </dl>
-<dl class="note" compact><dt><b>Note:</b></dt><dd>Depending on the kim_options specified, <a class="el" href="group__kim__credential__reference.html#g318fdf6ea1e937a35e947dab6efa695d" title="Acquire a new initial credential.">kim_credential_create_new()</a> may present a GUI or command line prompt to obtain information from the user. </dd></dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__ccache__reference.html#gda206c3632933a811cb895e5be29bba9" title="Acquire a new initial credential and store it in a ccache.">kim_ccache_create_new</a> </dd></dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>Depending on the kim_options specified, <a class="el" href="group__kim__credential__reference.html#ga02a96b9ad6fbc64007f741fa21c8814" title="Acquire a new initial credential.">kim_credential_create_new()</a> may present a GUI or command line prompt to obtain information from the user. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__ccache__reference.html#gcdc80c9bfa368eca7cc2d3710b4c0fa9" title="Acquire a new initial credential and store it in a ccache.">kim_ccache_create_new</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g465dab295b62d786d7e83e95409fae94"></a><!-- doxytag: member="kim_credential.h::kim_credential_create_from_keytab" ref="g465dab295b62d786d7e83e95409fae94" args="(kim_credential_t *out_credential, kim_identity_t in_identity, kim_options_t in_options, kim_string_t in_keytab)" -->
+<a class="anchor" name="g42c9498e4e928fce495867a1d1835dc3"></a><!-- doxytag: member="kim_credential.h::kim_credential_create_from_keytab" ref="g42c9498e4e928fce495867a1d1835dc3" args="(kim_credential *out_credential, kim_identity in_identity, kim_options in_options, kim_string in_keytab)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_credential_create_from_keytab           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_credential_create_from_keytab           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> *&nbsp;</td>
           <td class="paramname"> <em>out_credential</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_keytab</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -117,25 +117,25 @@ Acquire a new initial credential from a keytab.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_credential</em>&nbsp;</td><td>on exit, a new credential object containing an initial credential for <em>in_identity</em> obtained using <em>in_keytab</em>. Must be freed with <a class="el" href="group__kim__credential__reference.html#gb92567dd6b60e525f343cc401e1949aa" title="Free memory associated with a credential object.">kim_credential_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_credential</em>&nbsp;</td><td>on exit, a new credential object containing an initial credential for <em>in_identity</em> obtained using <em>in_keytab</em>. Must be freed with <a class="el" href="group__kim__credential__reference.html#g5609d3883f82eb3938a2d80e06bd0845" title="Free memory associated with a credential object.">kim_credential_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_identity</em>&nbsp;</td><td>a client identity to obtain a credential for. Specify NULL for the first identity in the keytab. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_options</em>&nbsp;</td><td>options to control credential acquisition. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_keytab</em>&nbsp;</td><td>a path to a keytab. Specify NULL for the default keytab location. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__ccache__reference.html#g21a41ecd65dcb9d5b6a2e4d45d3f690b" title="Acquire a new initial credential from a keytab and store it in a ccache.">kim_ccache_create_from_keytab</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__ccache__reference.html#g15cb7e1b9069a610030211cecc5e6232" title="Acquire a new initial credential from a keytab and store it in a ccache.">kim_ccache_create_from_keytab</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="ge08f4082cca6e0d4779d6ab7c105bcfe"></a><!-- doxytag: member="kim_credential.h::kim_credential_create_from_krb5_creds" ref="ge08f4082cca6e0d4779d6ab7c105bcfe" args="(kim_credential_t *out_credential, krb5_context in_krb5_context, krb5_creds *in_krb5_creds)" -->
+<a class="anchor" name="g5a65ab2a4209ee727d2a08ba8481dd8f"></a><!-- doxytag: member="kim_credential.h::kim_credential_create_from_krb5_creds" ref="g5a65ab2a4209ee727d2a08ba8481dd8f" args="(kim_credential *out_credential, krb5_context in_krb5_context, krb5_creds *in_krb5_creds)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_credential_create_from_krb5_creds           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_credential_create_from_krb5_creds           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> *&nbsp;</td>
           <td class="paramname"> <em>out_credential</em>, </td>
         </tr>
         <tr>
@@ -164,29 +164,29 @@ Copy a credential from a krb5 credential object.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_credential</em>&nbsp;</td><td>on exit, a new credential object which is a copy of <em>in_krb5_creds</em>. Must be freed with <a class="el" href="group__kim__credential__reference.html#gb92567dd6b60e525f343cc401e1949aa" title="Free memory associated with a credential object.">kim_credential_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_credential</em>&nbsp;</td><td>on exit, a new credential object which is a copy of <em>in_krb5_creds</em>. Must be freed with <a class="el" href="group__kim__credential__reference.html#g5609d3883f82eb3938a2d80e06bd0845" title="Free memory associated with a credential object.">kim_credential_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_krb5_context</em>&nbsp;</td><td>the krb5 context used to create <em>in_krb5_creds</em>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_krb5_creds</em>&nbsp;</td><td>a krb5 credential object. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g1a6218c74a07a9b9c262c35404475fd7"></a><!-- doxytag: member="kim_credential.h::kim_credential_copy" ref="g1a6218c74a07a9b9c262c35404475fd7" args="(kim_credential_t *out_credential, kim_credential_t in_credential)" -->
+<a class="anchor" name="gecf207628b94739322344678486b45d2"></a><!-- doxytag: member="kim_credential.h::kim_credential_copy" ref="gecf207628b94739322344678486b45d2" args="(kim_credential *out_credential, kim_credential in_credential)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_credential_copy           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_credential_copy           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> *&nbsp;</td>
           <td class="paramname"> <em>out_credential</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a>&nbsp;</td>
           <td class="paramname"> <em>in_credential</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -203,22 +203,22 @@ Copy a credential object.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_credential</em>&nbsp;</td><td>on exit, a new credential object which is a copy of <em>in_credential</em>. Must be freed with <a class="el" href="group__kim__credential__reference.html#gb92567dd6b60e525f343cc401e1949aa" title="Free memory associated with a credential object.">kim_credential_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_credential</em>&nbsp;</td><td>on exit, a new credential object which is a copy of <em>in_credential</em>. Must be freed with <a class="el" href="group__kim__credential__reference.html#g5609d3883f82eb3938a2d80e06bd0845" title="Free memory associated with a credential object.">kim_credential_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_credential</em>&nbsp;</td><td>a credential object. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g35ac6a79b91ac1ec215c281fd0b94170"></a><!-- doxytag: member="kim_credential.h::kim_credential_get_krb5_creds" ref="g35ac6a79b91ac1ec215c281fd0b94170" args="(kim_credential_t in_credential, krb5_context in_krb5_context, krb5_creds **out_krb5_creds)" -->
+<a class="anchor" name="g5ccc2fc794ea3bf3dc947c8a3ccd1077"></a><!-- doxytag: member="kim_credential.h::kim_credential_get_krb5_creds" ref="g5ccc2fc794ea3bf3dc947c8a3ccd1077" args="(kim_credential in_credential, krb5_context in_krb5_context, krb5_creds **out_krb5_creds)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_credential_get_krb5_creds           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_credential_get_krb5_creds           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a>&nbsp;</td>
           <td class="paramname"> <em>in_credential</em>, </td>
         </tr>
         <tr>
@@ -252,24 +252,24 @@ Get a krb5 credentials object for a credential object.
     <tr><td valign="top"></td><td valign="top"><em>out_krb5_creds</em>&nbsp;</td><td>on exit, a new krb5 creds object which is a copy of <em>in_credential</em>. Must be freed with krb5_free_creds(). </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gfab660faba5a6b2dc0f067dfe3e6235f"></a><!-- doxytag: member="kim_credential.h::kim_credential_get_client_identity" ref="gfab660faba5a6b2dc0f067dfe3e6235f" args="(kim_credential_t in_credential, kim_identity_t *out_client_identity)" -->
+<a class="anchor" name="g823f10b2a4db687fb555920808113392"></a><!-- doxytag: member="kim_credential.h::kim_credential_get_client_identity" ref="g823f10b2a4db687fb555920808113392" args="(kim_credential in_credential, kim_identity *out_client_identity)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_credential_get_client_identity           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_credential_get_client_identity           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a>&nbsp;</td>
           <td class="paramname"> <em>in_credential</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *&nbsp;</td>
           <td class="paramname"> <em>out_client_identity</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -287,27 +287,27 @@ Get the client identity of a credential object.
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_credential</em>&nbsp;</td><td>a credential object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_client_identity</em>&nbsp;</td><td>on exit, an identity object containing the client identity of <em>in_credential</em>. Must be freed with <a class="el" href="group__kim__identity__reference.html#gd384198163f30b97a6a583ad871a0e23" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_client_identity</em>&nbsp;</td><td>on exit, an identity object containing the client identity of <em>in_credential</em>. Must be freed with <a class="el" href="group__kim__identity__reference.html#g3ae8057f3eb0040330b598645d470411" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g3bf00a133fbfe8fd3f9b6cba55ac6045"></a><!-- doxytag: member="kim_credential.h::kim_credential_get_service_identity" ref="g3bf00a133fbfe8fd3f9b6cba55ac6045" args="(kim_credential_t in_credential, kim_identity_t *out_service_identity)" -->
+<a class="anchor" name="g05208e303966c4c89371c18135de9cd7"></a><!-- doxytag: member="kim_credential.h::kim_credential_get_service_identity" ref="g05208e303966c4c89371c18135de9cd7" args="(kim_credential in_credential, kim_identity *out_service_identity)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_credential_get_service_identity           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_credential_get_service_identity           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a>&nbsp;</td>
           <td class="paramname"> <em>in_credential</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *&nbsp;</td>
           <td class="paramname"> <em>out_service_identity</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -325,27 +325,27 @@ Get the service identity of a credential object.
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_credential</em>&nbsp;</td><td>a credential object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_service_identity</em>&nbsp;</td><td>on exit, an identity object containing the service identity of <em>in_credential</em>. Must be freed with <a class="el" href="group__kim__identity__reference.html#gd384198163f30b97a6a583ad871a0e23" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_service_identity</em>&nbsp;</td><td>on exit, an identity object containing the service identity of <em>in_credential</em>. Must be freed with <a class="el" href="group__kim__identity__reference.html#g3ae8057f3eb0040330b598645d470411" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gdf4e9b444c5050199476721a5cec67f7"></a><!-- doxytag: member="kim_credential.h::kim_credential_is_tgt" ref="gdf4e9b444c5050199476721a5cec67f7" args="(kim_credential_t in_credential, kim_boolean_t *out_is_tgt)" -->
+<a class="anchor" name="gcf207597546b2397e8534c5bb354001a"></a><!-- doxytag: member="kim_credential.h::kim_credential_is_tgt" ref="gcf207597546b2397e8534c5bb354001a" args="(kim_credential in_credential, kim_boolean *out_is_tgt)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_credential_is_tgt           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_credential_is_tgt           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a>&nbsp;</td>
           <td class="paramname"> <em>in_credential</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> *&nbsp;</td>
           <td class="paramname"> <em>out_is_tgt</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -366,24 +366,24 @@ Check if a credential is a ticket granting ticket.
     <tr><td valign="top"></td><td valign="top"><em>out_is_tgt</em>&nbsp;</td><td>on exit, whether or not the credential is a TGT. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g0796aac464740c6a046290c08661bda5"></a><!-- doxytag: member="kim_credential.h::kim_credential_get_state" ref="g0796aac464740c6a046290c08661bda5" args="(kim_credential_t in_credential, kim_credential_state_t *out_state)" -->
+<a class="anchor" name="g214a9d5e947d7947132a2849826a93f4"></a><!-- doxytag: member="kim_credential.h::kim_credential_get_state" ref="g214a9d5e947d7947132a2849826a93f4" args="(kim_credential in_credential, kim_credential_state *out_state)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_credential_get_state           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_credential_get_state           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a>&nbsp;</td>
           <td class="paramname"> <em>in_credential</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc26053c4715f113e3580214d554781ad">kim_credential_state_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g48e19d7e4aec7dc6662149cab39bbe20">kim_credential_state</a> *&nbsp;</td>
           <td class="paramname"> <em>out_state</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -404,24 +404,24 @@ Check the state of a credential (valid, expired, postdated, etc).
     <tr><td valign="top"></td><td valign="top"><em>out_state</em>&nbsp;</td><td>on exit, the state of the credential. See <a class="el" href="group__kim__types__reference.html#g6e5c2c986359589562c83f1da2cf0ca0">kim_credential_state_enum</a> for the possible values of <em>out_state</em>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g48b41bc28845e209c41b087d28250e2a"></a><!-- doxytag: member="kim_credential.h::kim_credential_get_start_time" ref="g48b41bc28845e209c41b087d28250e2a" args="(kim_credential_t in_credential, kim_time_t *out_start_time)" -->
+<a class="anchor" name="gcae9e3e2b129e68215eedf588da60bea"></a><!-- doxytag: member="kim_credential.h::kim_credential_get_start_time" ref="gcae9e3e2b129e68215eedf588da60bea" args="(kim_credential in_credential, kim_time *out_start_time)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_credential_get_start_time           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_credential_get_start_time           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a>&nbsp;</td>
           <td class="paramname"> <em>in_credential</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g3da22452677b45753d40e07f3904dff5">kim_time</a> *&nbsp;</td>
           <td class="paramname"> <em>out_start_time</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -442,25 +442,25 @@ Get the time when the credentials become valid.
     <tr><td valign="top"></td><td valign="top"><em>out_start_time</em>&nbsp;</td><td>on exit, the time when <em>in_credential</em> becomes valid. May be in the past or future. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__ccache__reference.html#gb8793586b7c4054f2219b28920bf12bd" title="Get the time when the credentials in the ccache become valid.">kim_ccache_get_start_time</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__ccache__reference.html#gb2165acd652eddaeb61c8f6b8c3a16f7" title="Get the time when the credentials in the ccache become valid.">kim_ccache_get_start_time</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g07fc4d11e42bf7d32be67fcac531c372"></a><!-- doxytag: member="kim_credential.h::kim_credential_get_expiration_time" ref="g07fc4d11e42bf7d32be67fcac531c372" args="(kim_credential_t in_credential, kim_time_t *out_expiration_time)" -->
+<a class="anchor" name="gba6367f04f832e086a8b0c01ebd3f77e"></a><!-- doxytag: member="kim_credential.h::kim_credential_get_expiration_time" ref="gba6367f04f832e086a8b0c01ebd3f77e" args="(kim_credential in_credential, kim_time *out_expiration_time)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_credential_get_expiration_time           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_credential_get_expiration_time           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a>&nbsp;</td>
           <td class="paramname"> <em>in_credential</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g3da22452677b45753d40e07f3904dff5">kim_time</a> *&nbsp;</td>
           <td class="paramname"> <em>out_expiration_time</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -481,25 +481,25 @@ Get the time when the credentials will expire.
     <tr><td valign="top"></td><td valign="top"><em>out_expiration_time</em>&nbsp;</td><td>on exit, the time when <em>in_credential</em> will expire. May be in the past or future. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__ccache__reference.html#g2cbb6b78cac2bb2e4359caf8b53d60c5" title="Get the time when the credentials in the ccache will expire.">kim_ccache_get_expiration_time</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__ccache__reference.html#g52693fc485cf2e3bd5cf0c0a3d414d8a" title="Get the time when the credentials in the ccache will expire.">kim_ccache_get_expiration_time</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g1723a7c06e32ee954be214767bc55194"></a><!-- doxytag: member="kim_credential.h::kim_credential_get_renewal_expiration_time" ref="g1723a7c06e32ee954be214767bc55194" args="(kim_credential_t in_credential, kim_time_t *out_renewal_expiration_time)" -->
+<a class="anchor" name="g4e50b4abf3efc36ed10c3049c9ff9a48"></a><!-- doxytag: member="kim_credential.h::kim_credential_get_renewal_expiration_time" ref="g4e50b4abf3efc36ed10c3049c9ff9a48" args="(kim_credential in_credential, kim_time *out_renewal_expiration_time)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_credential_get_renewal_expiration_time           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_credential_get_renewal_expiration_time           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a>&nbsp;</td>
           <td class="paramname"> <em>in_credential</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g3da22452677b45753d40e07f3904dff5">kim_time</a> *&nbsp;</td>
           <td class="paramname"> <em>out_renewal_expiration_time</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -520,31 +520,31 @@ Get the time when the credentials will no longer be renewable.
     <tr><td valign="top"></td><td valign="top"><em>out_renewal_expiration_time</em>&nbsp;</td><td>on exit, the time when <em>in_credential</em> will no longer be renewable. May be in the past or future. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__ccache__reference.html#gfaad7545fbdb381faed8d2378009bd6e" title="Get the time when the credentials in the ccache will no longer be renewable.">kim_ccache_get_renewal_expiration_time</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__ccache__reference.html#g01b4cbb88abf6aafd2efdaad91d74f0f" title="Get the time when the credentials in the ccache will no longer be renewable.">kim_ccache_get_renewal_expiration_time</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g894c7144185b1112f6872fdf27fb016d"></a><!-- doxytag: member="kim_credential.h::kim_credential_store" ref="g894c7144185b1112f6872fdf27fb016d" args="(kim_credential_t in_credential, kim_identity_t in_client_identity, kim_ccache_t *out_ccache)" -->
+<a class="anchor" name="g52db69b8f2289a4b60a3eddb5cb6b671"></a><!-- doxytag: member="kim_credential.h::kim_credential_store" ref="g52db69b8f2289a4b60a3eddb5cb6b671" args="(kim_credential in_credential, kim_identity in_client_identity, kim_ccache *out_ccache)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_credential_store           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_credential_store           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a>&nbsp;</td>
           <td class="paramname"> <em>in_credential</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_client_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a> *&nbsp;</td>
           <td class="paramname"> <em>out_ccache</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -563,39 +563,39 @@ Store a credential in a ccache in the cache collection.
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_credential</em>&nbsp;</td><td>a credential object. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_client_identity</em>&nbsp;</td><td>a client identity. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, a ccache object containing <em>in_credential</em> with the client identity <em>in_client_identity</em>. Must be freed with <a class="el" href="group__kim__ccache__reference.html#g2e9e82cd849c9815857397a9b869c45c" title="Free memory associated with a ccache.">kim_ccache_free()</a>. Specify NULL if you don't want this return value. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_ccache</em>&nbsp;</td><td>on exit, a ccache object containing <em>in_credential</em> with the client identity <em>in_client_identity</em>. Must be freed with <a class="el" href="group__kim__ccache__reference.html#g6c6be543e0ea2b518612be4255e15b9a" title="Free memory associated with a ccache.">kim_ccache_free()</a>. Specify NULL if you don't want this return value. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g390a74d4d834fd1b5c2e7aebcd783e32"></a><!-- doxytag: member="kim_credential.h::kim_credential_verify" ref="g390a74d4d834fd1b5c2e7aebcd783e32" args="(kim_credential_t in_credential, kim_identity_t in_service_identity, kim_string_t in_keytab, kim_boolean_t in_fail_if_no_service_key)" -->
+<a class="anchor" name="gf10b622ed5ea209bf06ba708732b6c07"></a><!-- doxytag: member="kim_credential.h::kim_credential_verify" ref="gf10b622ed5ea209bf06ba708732b6c07" args="(kim_credential in_credential, kim_identity in_service_identity, kim_string in_keytab, kim_boolean in_fail_if_no_service_key)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_credential_verify           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_credential_verify           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a>&nbsp;</td>
           <td class="paramname"> <em>in_credential</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_service_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_keytab</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a>&nbsp;</td>
           <td class="paramname"> <em>in_fail_if_no_service_key</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -619,25 +619,25 @@ Verify a TGT credential.
   </table>
 </dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>specifying FALSE for <em>in_fail_if_no_service_key</em> may expose the calling program to the Zanarotti attack if the host has no keytab installed. </dd></dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__ccache__reference.html#g3d293fc7338ff9b654e167153df33b5c" title="Verify the TGT in a ccache.">kim_ccache_verify</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__ccache__reference.html#g8836113dd86a0dc3cf60df0d76280de6" title="Verify the TGT in a ccache.">kim_ccache_verify</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g99ac2c178bec484311cd7fc2cbb7e05e"></a><!-- doxytag: member="kim_credential.h::kim_credential_renew" ref="g99ac2c178bec484311cd7fc2cbb7e05e" args="(kim_credential_t *io_credential, kim_options_t in_options)" -->
+<a class="anchor" name="g18f43112f7ae046b2a5918b061a2072d"></a><!-- doxytag: member="kim_credential.h::kim_credential_renew" ref="g18f43112f7ae046b2a5918b061a2072d" args="(kim_credential *io_credential, kim_options in_options)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_credential_renew           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_credential_renew           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> *&nbsp;</td>
           <td class="paramname"> <em>io_credential</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -654,29 +654,29 @@ Renew a TGT credential.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>io_credential</em>&nbsp;</td><td>a TGT credential to be renewed. On exit, the old credential object will be freed and <em>io_credential</em> will be replaced with a new renewed credential. The new credential must be freed with <a class="el" href="group__kim__credential__reference.html#gb92567dd6b60e525f343cc401e1949aa" title="Free memory associated with a credential object.">kim_credential_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>io_credential</em>&nbsp;</td><td>a TGT credential to be renewed. On exit, the old credential object will be freed and <em>io_credential</em> will be replaced with a new renewed credential. The new credential must be freed with <a class="el" href="group__kim__credential__reference.html#g5609d3883f82eb3938a2d80e06bd0845" title="Free memory associated with a credential object.">kim_credential_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_options</em>&nbsp;</td><td>initial credential options. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__ccache__reference.html#gafb44675df9d05af5b899996be14e2b4" title="Renew the TGT in a ccache.">kim_ccache_renew</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__ccache__reference.html#g574a0ef674116589dcf57460af81de39" title="Renew the TGT in a ccache.">kim_ccache_renew</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g9cd6ba59236babb4e79a680fa54b5037"></a><!-- doxytag: member="kim_credential.h::kim_credential_validate" ref="g9cd6ba59236babb4e79a680fa54b5037" args="(kim_credential_t *io_credential, kim_options_t in_options)" -->
+<a class="anchor" name="g63a591ef509219ae83d11b635065984d"></a><!-- doxytag: member="kim_credential.h::kim_credential_validate" ref="g63a591ef509219ae83d11b635065984d" args="(kim_credential *io_credential, kim_options in_options)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_credential_validate           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_credential_validate           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> *&nbsp;</td>
           <td class="paramname"> <em>io_credential</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -693,23 +693,23 @@ Validate a TGT credential.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>io_credential</em>&nbsp;</td><td>a credential object to be validated. On exit, the old credential object will be freed and <em>io_credential</em> will be replaced with a new validated credential. The new credential must be freed with <a class="el" href="group__kim__credential__reference.html#gb92567dd6b60e525f343cc401e1949aa" title="Free memory associated with a credential object.">kim_credential_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>io_credential</em>&nbsp;</td><td>a credential object to be validated. On exit, the old credential object will be freed and <em>io_credential</em> will be replaced with a new validated credential. The new credential must be freed with <a class="el" href="group__kim__credential__reference.html#g5609d3883f82eb3938a2d80e06bd0845" title="Free memory associated with a credential object.">kim_credential_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_options</em>&nbsp;</td><td>initial credential options. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__ccache__reference.html#g8bb7d46268621e73629dceefd15ff639" title="Validate the TGT in a ccache.">kim_ccache_validate</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__ccache__reference.html#g73f5b201d24a58936244fc4e43cd3d59" title="Validate the TGT in a ccache.">kim_ccache_validate</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gb92567dd6b60e525f343cc401e1949aa"></a><!-- doxytag: member="kim_credential.h::kim_credential_free" ref="gb92567dd6b60e525f343cc401e1949aa" args="(kim_credential_t *io_credential)" -->
+<a class="anchor" name="g5609d3883f82eb3938a2d80e06bd0845"></a><!-- doxytag: member="kim_credential.h::kim_credential_free" ref="g5609d3883f82eb3938a2d80e06bd0845" args="(kim_credential *io_credential)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void kim_credential_free           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a> *&nbsp;</td>
           <td class="paramname"> <em>io_credential</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td width="100%"></td>
@@ -729,7 +729,7 @@ Free memory associated with a credential object.
 
 </div>
 </div><p>
-<hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:19 2008 for Kerberos Identity Management by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index 0eca34a03b177388ed5d38a8728e1d7773965639..df2723664203e60419af7d70fe48e00e87fe9546 100644 (file)
@@ -9,26 +9,23 @@
 <p>
 <h2>Functions</h2>
 <ul>
-<li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__error__reference.html#gf83a5c0d1b92a533274812dd99e619a1">kim_error_copy</a> (<a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> *out_error, <a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> in_error)
-<dl class="el"><dd class="mdescRight">Copy an error.  <a href="#gf83a5c0d1b92a533274812dd99e619a1"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g8db8bb7876c17d07e1e002b89e5a69eb">kim_error_code_t</a> <a class="el" href="group__kim__error__reference.html#g3b97d1e3010d58ac9ba99af405cd0157">kim_error_get_code</a> (<a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> in_error)
-<dl class="el"><dd class="mdescRight">Get a numerical error code for an error.  <a href="#g3b97d1e3010d58ac9ba99af405cd0157"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> <a class="el" href="group__kim__error__reference.html#gdd233fd0d10a3d1772fc72d1278c694f">kim_error_get_display_string</a> (<a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> in_error)
-<dl class="el"><dd class="mdescRight">Get a text description of an error.  <a href="#gdd233fd0d10a3d1772fc72d1278c694f"></a><br></dl><li>void <a class="el" href="group__kim__error__reference.html#gc523758c093a0bb7af18af781e9d182c">kim_error_free</a> (<a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> *io_error)
-<dl class="el"><dd class="mdescRight">Free memory associated with an error.  <a href="#gc523758c093a0bb7af18af781e9d182c"></a><br></dl></ul>
+<li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__error__reference.html#g7105c4527c2a247cdacd86624d7dc5fb">kim_string_get_last_error_message</a> (<a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *out_string, <a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> in_error)
+<dl class="el"><dd class="mdescRight">Get a text description of an error suitable for display to the user.  <a href="#g7105c4527c2a247cdacd86624d7dc5fb"></a><br></dl></ul>
 <hr><h2>Function Documentation</h2>
-<a class="anchor" name="gf83a5c0d1b92a533274812dd99e619a1"></a><!-- doxytag: member="kim_error.h::kim_error_copy" ref="gf83a5c0d1b92a533274812dd99e619a1" args="(kim_error_t *out_error, kim_error_t in_error)" -->
+<a class="anchor" name="g7105c4527c2a247cdacd86624d7dc5fb"></a><!-- doxytag: member="kim_error.h::kim_string_get_last_error_message" ref="g7105c4527c2a247cdacd86624d7dc5fb" args="(kim_string *out_string, kim_error in_error)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_error_copy           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_string_get_last_error_message           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> *&nbsp;</td>
-          <td class="paramname"> <em>out_error</em>, </td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *&nbsp;</td>
+          <td class="paramname"> <em>out_string</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a>&nbsp;</td>
           <td class="paramname"> <em>in_error</em></td><td>&nbsp;</td>
         </tr>
         <tr>
 <div class="memdoc">
 
 <p>
-Copy an error. 
+Get a text description of an error suitable for display to the user. 
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_error</em>&nbsp;</td><td>on exit, a new error object which is a copy of <em>in_error</em>. Must be freed with <a class="el" href="group__kim__error__reference.html#gc523758c093a0bb7af18af781e9d182c" title="Free memory associated with an error.">kim_error_free()</a>. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>in_error</em>&nbsp;</td><td>the error to copy. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_string</em>&nbsp;</td><td>On success, a human-readable UTF-8 string describing the error representedby <em>in_error</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#g7e7207329022e97473ec71574e52a1fc" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>in_error</em>&nbsp;</td><td>an error code. Used to verify that the correct error string will be returned (see note below). </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, KIM_NO_ERROR. </dd></dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>This API is implemented using thread local storage. It should be called immediately after a KIM API returns an error code so that the correct string is returned. The returned copy may then be held by the caller until needed. If <em>in_error</em> does not match the last saved error KIM may return a less descriptive string. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g3b97d1e3010d58ac9ba99af405cd0157"></a><!-- doxytag: member="kim_error.h::kim_error_get_code" ref="g3b97d1e3010d58ac9ba99af405cd0157" args="(kim_error_t in_error)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g8db8bb7876c17d07e1e002b89e5a69eb">kim_error_code_t</a> kim_error_get_code           </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a>&nbsp;</td>
-          <td class="paramname"> <em>in_error</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Get a numerical error code for an error. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>in_error</em>&nbsp;</td><td>an error object. </td></tr>
-  </table>
-</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, a machine-readable error code describing the error represented by <em>in_error</em>. On failure, KIM_PARAMETER_ECODE. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="gdd233fd0d10a3d1772fc72d1278c694f"></a><!-- doxytag: member="kim_error.h::kim_error_get_display_string" ref="gdd233fd0d10a3d1772fc72d1278c694f" args="(kim_error_t in_error)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> kim_error_get_display_string           </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a>&nbsp;</td>
-          <td class="paramname"> <em>in_error</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Get a text description of an error. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>in_error</em>&nbsp;</td><td>an error object. </td></tr>
-  </table>
-</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, a human-readable error string describing the error represented by <em>in_error</em>. On failure, NULL, indicating that the kim_error_t object was invalid. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="gc523758c093a0bb7af18af781e9d182c"></a><!-- doxytag: member="kim_error.h::kim_error_free" ref="gc523758c093a0bb7af18af781e9d182c" args="(kim_error_t *io_error)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">void kim_error_free           </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> *&nbsp;</td>
-          <td class="paramname"> <em>io_error</em>          </td>
-          <td>&nbsp;)&nbsp;</td>
-          <td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Free memory associated with an error. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>io_error</em>&nbsp;</td><td>the error object to be freed. Set to NULL on exit. </td></tr>
-  </table>
-</dl>
-
-</div>
-</div><p>
-<hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:19 2008 for Kerberos Identity Management by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index 86d6df71f22cf00a6f1649a8813abacbabd9b785..f20544fd3024ee109b53ae4a51654e917d531c60 100644 (file)
@@ -9,37 +9,36 @@
 <p>
 <h2>Functions</h2>
 <ul>
-<li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__identity__reference.html#ga69ec4892b8a0dc7aa183803d0cb15fd">kim_identity_create_from_string</a> (<a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *out_identity, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_string)
-<dl class="el"><dd class="mdescRight">Create a identity from a string.  <a href="#ga69ec4892b8a0dc7aa183803d0cb15fd"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__identity__reference.html#gd98419d88372078ff849426c9a9f177e">kim_identity_create_from_components</a> (<a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *out_identity, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_realm, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_1st_component,...)
-<dl class="el"><dd class="mdescRight">Create a identity from a realm and component strings.  <a href="#gd98419d88372078ff849426c9a9f177e"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__identity__reference.html#g1d5a5aba3dfdc1ff95ddd691b3f18c0a">kim_identity_create_from_krb5_principal</a> (<a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *out_identity, krb5_context in_krb5_context, krb5_principal in_krb5_principal)
-<dl class="el"><dd class="mdescRight">Create an identity object from a krb5_principal.  <a href="#g1d5a5aba3dfdc1ff95ddd691b3f18c0a"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__identity__reference.html#gf83f0fdb2af6cd730727238766e0e5b0">kim_identity_copy</a> (<a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *out_identity, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_identity)
-<dl class="el"><dd class="mdescRight">Copy an identity object.  <a href="#gf83f0fdb2af6cd730727238766e0e5b0"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__identity__reference.html#g8f166b041a651c4f7e2c0229f581a5d2">kim_identity_compare</a> (<a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_identity, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_compare_to_identity, <a class="el" href="group__kim__types__reference.html#g304e619e3936990905c7998f07a8800b">kim_comparison_t</a> *out_comparison)
-<dl class="el"><dd class="mdescRight">Compare identity objects for equivalency.  <a href="#g8f166b041a651c4f7e2c0229f581a5d2"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__identity__reference.html#gf335ac09504999d0ad61390ede02c113">kim_identity_get_string</a> (<a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_identity, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *out_string)
-<dl class="el"><dd class="mdescRight">Get the string representation of a identity.  <a href="#gf335ac09504999d0ad61390ede02c113"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__identity__reference.html#g3421872c143cc80b1bf220c34e26cc21">kim_identity_get_display_string</a> (<a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_identity, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *out_display_string)
-<dl class="el"><dd class="mdescRight">Get a human-readable string representation of an identity.  <a href="#g3421872c143cc80b1bf220c34e26cc21"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__identity__reference.html#gb5c93208197c70e202209adf61b49a3b">kim_identity_get_realm</a> (<a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_identity, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *out_realm_string)
-<dl class="el"><dd class="mdescRight">Get the realm string of an identity.  <a href="#gb5c93208197c70e202209adf61b49a3b"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__identity__reference.html#g6077350272922bf196e9a900e5989c41">kim_identity_get_number_of_components</a> (<a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_identity, <a class="el" href="group__kim__types__reference.html#g709d3d4d2733bc8dc29dcab2e806dd38">kim_count_t</a> *out_number_of_components)
-<dl class="el"><dd class="mdescRight">Get the number of components of an identity.  <a href="#g6077350272922bf196e9a900e5989c41"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__identity__reference.html#g1e58b572e65b9771bbf6dee51883d71b">kim_identity_get_component_at_index</a> (<a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_identity, <a class="el" href="group__kim__types__reference.html#g709d3d4d2733bc8dc29dcab2e806dd38">kim_count_t</a> in_index, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *out_component_string)
-<dl class="el"><dd class="mdescRight">Get the Nth component of an identity.  <a href="#g1e58b572e65b9771bbf6dee51883d71b"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__identity__reference.html#g63b40561de2bfe2315990d1579d5db75">kim_identity_get_krb5_principal</a> (<a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_identity, krb5_context in_krb5_context, krb5_principal *out_krb5_principal)
-<dl class="el"><dd class="mdescRight">Get the krb5_principal representation of an identity.  <a href="#g63b40561de2bfe2315990d1579d5db75"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__identity__reference.html#g445ddb044181a68fdbad8a63e614add5">kim_identity_get_gss_name</a> (<a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_identity, gss_name_t *out_gss_name)
-<dl class="el"><dd class="mdescRight">Get the gss_name_t representation of an identity.  <a href="#g445ddb044181a68fdbad8a63e614add5"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__identity__reference.html#g493fd86d79650af831d52b8a14b2774c">kim_identity_change_password</a> (<a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_identity, <a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options)
-<dl class="el"><dd class="mdescRight">Change the password for an identity.  <a href="#g493fd86d79650af831d52b8a14b2774c"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__identity__reference.html#g7f1513586561a6bb724e20a8ca4a6977">kim_identity_change_password_to_password</a> (<a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_identity, <a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_new_password)
-<dl class="el"><dd class="mdescRight">Change the password for an identity to a caller-provided new password.  <a href="#g7f1513586561a6bb724e20a8ca4a6977"></a><br></dl><li>void <a class="el" href="group__kim__identity__reference.html#gd384198163f30b97a6a583ad871a0e23">kim_identity_free</a> (<a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *io_identity)
-<dl class="el"><dd class="mdescRight">Free memory associated with an identity.  <a href="#gd384198163f30b97a6a583ad871a0e23"></a><br></dl></ul>
+<li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__identity__reference.html#g23804ae9643100ad5e1fef11f6e5362c">kim_identity_create_from_string</a> (<a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *out_identity, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_string)
+<dl class="el"><dd class="mdescRight">Create a identity from a string.  <a href="#g23804ae9643100ad5e1fef11f6e5362c"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__identity__reference.html#ga7ee7771443a129ab5e28923ccb3f602">kim_identity_create_from_components</a> (<a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *out_identity, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_realm, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_1st_component,...)
+<dl class="el"><dd class="mdescRight">Create a identity from a realm and component strings.  <a href="#ga7ee7771443a129ab5e28923ccb3f602"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__identity__reference.html#g3a1f84217c02c9b1023e791ae206cf94">kim_identity_create_from_krb5_principal</a> (<a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *out_identity, krb5_context in_krb5_context, krb5_principal in_krb5_principal)
+<dl class="el"><dd class="mdescRight">Create an identity object from a krb5_principal.  <a href="#g3a1f84217c02c9b1023e791ae206cf94"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__identity__reference.html#g0cb410ee206566e244439c0137b4f117">kim_identity_copy</a> (<a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *out_identity, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_identity)
+<dl class="el"><dd class="mdescRight">Copy an identity object.  <a href="#g0cb410ee206566e244439c0137b4f117"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__identity__reference.html#gd47b876ed3dfa0fd8a419412b46c4867">kim_identity_compare</a> (<a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_identity, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_compare_to_identity, <a class="el" href="group__kim__types__reference.html#gae48569e847ff6af9d10add42a4338e7">kim_comparison</a> *out_comparison)
+<dl class="el"><dd class="mdescRight">Compare identity objects for equivalency.  <a href="#gd47b876ed3dfa0fd8a419412b46c4867"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__identity__reference.html#g094e916a4d31556c3ead03f85aafa603">kim_identity_get_string</a> (<a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_identity, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *out_string)
+<dl class="el"><dd class="mdescRight">Get the string representation of a identity.  <a href="#g094e916a4d31556c3ead03f85aafa603"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__identity__reference.html#g59afb84675651930afebeb6fff788eba">kim_identity_get_display_string</a> (<a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_identity, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *out_display_string)
+<dl class="el"><dd class="mdescRight">Get a human-readable string representation of an identity.  <a href="#g59afb84675651930afebeb6fff788eba"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__identity__reference.html#gf102dfe4b89f6e87ac3059f01f174066">kim_identity_get_realm</a> (<a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_identity, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *out_realm_string)
+<dl class="el"><dd class="mdescRight">Get the realm string of an identity.  <a href="#gf102dfe4b89f6e87ac3059f01f174066"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__identity__reference.html#g96591cf92e03e823efcd4fc54085ca4d">kim_identity_get_number_of_components</a> (<a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_identity, <a class="el" href="group__kim__types__reference.html#g098e3611b2bc3af38b5f06838153165d">kim_count</a> *out_number_of_components)
+<dl class="el"><dd class="mdescRight">Get the number of components of an identity.  <a href="#g96591cf92e03e823efcd4fc54085ca4d"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__identity__reference.html#gec46c138cd20035a12586dba59680728">kim_identity_get_component_at_index</a> (<a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_identity, <a class="el" href="group__kim__types__reference.html#g098e3611b2bc3af38b5f06838153165d">kim_count</a> in_index, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *out_component_string)
+<dl class="el"><dd class="mdescRight">Get the Nth component of an identity.  <a href="#gec46c138cd20035a12586dba59680728"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__identity__reference.html#gd293289334f024dedae5fa59856049d6">kim_identity_get_krb5_principal</a> (<a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_identity, krb5_context in_krb5_context, krb5_principal *out_krb5_principal)
+<dl class="el"><dd class="mdescRight">Get the krb5_principal representation of an identity.  <a href="#gd293289334f024dedae5fa59856049d6"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__identity__reference.html#gd198c678fa37a551391bc52307306394">kim_identity_change_password</a> (<a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_identity, <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options)
+<dl class="el"><dd class="mdescRight">Change the password for an identity.  <a href="#gd198c678fa37a551391bc52307306394"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__identity__reference.html#g6eb2decbecaaab598d66f809187f8223">kim_identity_change_password_to_password</a> (<a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_identity, <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_new_password)
+<dl class="el"><dd class="mdescRight">Change the password for an identity to a caller-provided new password.  <a href="#g6eb2decbecaaab598d66f809187f8223"></a><br></dl><li>void <a class="el" href="group__kim__identity__reference.html#g3ae8057f3eb0040330b598645d470411">kim_identity_free</a> (<a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *io_identity)
+<dl class="el"><dd class="mdescRight">Free memory associated with an identity.  <a href="#g3ae8057f3eb0040330b598645d470411"></a><br></dl></ul>
 <hr><h2>Function Documentation</h2>
-<a class="anchor" name="ga69ec4892b8a0dc7aa183803d0cb15fd"></a><!-- doxytag: member="kim_identity.h::kim_identity_create_from_string" ref="ga69ec4892b8a0dc7aa183803d0cb15fd" args="(kim_identity_t *out_identity, kim_string_t in_string)" -->
+<a class="anchor" name="g23804ae9643100ad5e1fef11f6e5362c"></a><!-- doxytag: member="kim_identity.h::kim_identity_create_from_string" ref="g23804ae9643100ad5e1fef11f6e5362c" args="(kim_identity *out_identity, kim_string in_string)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_identity_create_from_string           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_identity_create_from_string           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *&nbsp;</td>
           <td class="paramname"> <em>out_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_string</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -56,34 +55,34 @@ Create a identity from a string.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_identity</em>&nbsp;</td><td>on exit, a new identity object. Must be freed with <a class="el" href="group__kim__identity__reference.html#gd384198163f30b97a6a583ad871a0e23" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_identity</em>&nbsp;</td><td>on exit, a new identity object. Must be freed with <a class="el" href="group__kim__identity__reference.html#g3ae8057f3eb0040330b598645d470411" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_string</em>&nbsp;</td><td>a string representation of a Kerberos identity. Special characters such as '/' and '@' must be escaped with '\'. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gd98419d88372078ff849426c9a9f177e"></a><!-- doxytag: member="kim_identity.h::kim_identity_create_from_components" ref="gd98419d88372078ff849426c9a9f177e" args="(kim_identity_t *out_identity, kim_string_t in_realm, kim_string_t in_1st_component,...)" -->
+<a class="anchor" name="ga7ee7771443a129ab5e28923ccb3f602"></a><!-- doxytag: member="kim_identity.h::kim_identity_create_from_components" ref="ga7ee7771443a129ab5e28923ccb3f602" args="(kim_identity *out_identity, kim_string in_realm, kim_string in_1st_component,...)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_identity_create_from_components           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_identity_create_from_components           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *&nbsp;</td>
           <td class="paramname"> <em>out_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_realm</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_1st_component</em>, </td>
         </tr>
         <tr>
@@ -106,25 +105,25 @@ Create a identity from a realm and component strings.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_identity</em>&nbsp;</td><td>on exit, a new identity object. Must be freed with <a class="el" href="group__kim__identity__reference.html#gd384198163f30b97a6a583ad871a0e23" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_identity</em>&nbsp;</td><td>on exit, a new identity object. Must be freed with <a class="el" href="group__kim__identity__reference.html#g3ae8057f3eb0040330b598645d470411" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_realm</em>&nbsp;</td><td>a string representation of a Kerberos realm. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_1st_component</em>&nbsp;</td><td>a string representing the first component of the identity. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>...</em>&nbsp;</td><td>zero or more strings of type kim_string_t representing additional components of the identity followed by a terminating NULL. Components will be assembled in order (ie: the 4th argument to <a class="el" href="group__kim__identity__reference.html#gd98419d88372078ff849426c9a9f177e" title="Create a identity from a realm and component strings.">kim_identity_create_from_components()</a> will be the 2nd component of the identity). </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>...</em>&nbsp;</td><td>zero or more strings of type kim_string_t representing additional components of the identity followed by a terminating NULL. Components will be assembled in order (ie: the 4th argument to <a class="el" href="group__kim__identity__reference.html#ga7ee7771443a129ab5e28923ccb3f602" title="Create a identity from a realm and component strings.">kim_identity_create_from_components()</a> will be the 2nd component of the identity). </td></tr>
   </table>
 </dl>
-<dl class="note" compact><dt><b>Note:</b></dt><dd>The last argument must be a NULL or <a class="el" href="group__kim__identity__reference.html#gd98419d88372078ff849426c9a9f177e" title="Create a identity from a realm and component strings.">kim_identity_create_from_components()</a> may crash. </dd></dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>The last argument must be a NULL or <a class="el" href="group__kim__identity__reference.html#ga7ee7771443a129ab5e28923ccb3f602" title="Create a identity from a realm and component strings.">kim_identity_create_from_components()</a> may crash. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g1d5a5aba3dfdc1ff95ddd691b3f18c0a"></a><!-- doxytag: member="kim_identity.h::kim_identity_create_from_krb5_principal" ref="g1d5a5aba3dfdc1ff95ddd691b3f18c0a" args="(kim_identity_t *out_identity, krb5_context in_krb5_context, krb5_principal in_krb5_principal)" -->
+<a class="anchor" name="g3a1f84217c02c9b1023e791ae206cf94"></a><!-- doxytag: member="kim_identity.h::kim_identity_create_from_krb5_principal" ref="g3a1f84217c02c9b1023e791ae206cf94" args="(kim_identity *out_identity, krb5_context in_krb5_context, krb5_principal in_krb5_principal)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_identity_create_from_krb5_principal           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_identity_create_from_krb5_principal           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *&nbsp;</td>
           <td class="paramname"> <em>out_identity</em>, </td>
         </tr>
         <tr>
@@ -153,29 +152,29 @@ Create an identity object from a krb5_principal.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_identity</em>&nbsp;</td><td>on exit, a new identity object which is a copy of <em>in_krb5_principal</em>. Must be freed with <a class="el" href="group__kim__identity__reference.html#gd384198163f30b97a6a583ad871a0e23" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_identity</em>&nbsp;</td><td>on exit, a new identity object which is a copy of <em>in_krb5_principal</em>. Must be freed with <a class="el" href="group__kim__identity__reference.html#g3ae8057f3eb0040330b598645d470411" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_krb5_context</em>&nbsp;</td><td>the krb5 context used to create <em>in_krb5_principal</em>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_krb5_principal</em>&nbsp;</td><td>a krb5 principal object. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gf83f0fdb2af6cd730727238766e0e5b0"></a><!-- doxytag: member="kim_identity.h::kim_identity_copy" ref="gf83f0fdb2af6cd730727238766e0e5b0" args="(kim_identity_t *out_identity, kim_identity_t in_identity)" -->
+<a class="anchor" name="g0cb410ee206566e244439c0137b4f117"></a><!-- doxytag: member="kim_identity.h::kim_identity_copy" ref="g0cb410ee206566e244439c0137b4f117" args="(kim_identity *out_identity, kim_identity in_identity)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_identity_copy           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_identity_copy           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *&nbsp;</td>
           <td class="paramname"> <em>out_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_identity</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -192,34 +191,34 @@ Copy an identity object.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_identity</em>&nbsp;</td><td>on exit, a new identity object which is a copy of <em>in_identity</em>. Must be freed with <a class="el" href="group__kim__identity__reference.html#gd384198163f30b97a6a583ad871a0e23" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_identity</em>&nbsp;</td><td>on exit, a new identity object which is a copy of <em>in_identity</em>. Must be freed with <a class="el" href="group__kim__identity__reference.html#g3ae8057f3eb0040330b598645d470411" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_identity</em>&nbsp;</td><td>an identity object. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g8f166b041a651c4f7e2c0229f581a5d2"></a><!-- doxytag: member="kim_identity.h::kim_identity_compare" ref="g8f166b041a651c4f7e2c0229f581a5d2" args="(kim_identity_t in_identity, kim_identity_t in_compare_to_identity, kim_comparison_t *out_comparison)" -->
+<a class="anchor" name="gd47b876ed3dfa0fd8a419412b46c4867"></a><!-- doxytag: member="kim_identity.h::kim_identity_compare" ref="gd47b876ed3dfa0fd8a419412b46c4867" args="(kim_identity in_identity, kim_identity in_compare_to_identity, kim_comparison *out_comparison)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_identity_compare           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_identity_compare           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_compare_to_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g304e619e3936990905c7998f07a8800b">kim_comparison_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae48569e847ff6af9d10add42a4338e7">kim_comparison</a> *&nbsp;</td>
           <td class="paramname"> <em>out_comparison</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -241,24 +240,24 @@ Compare identity objects for equivalency.
     <tr><td valign="top"></td><td valign="top"><em>out_comparison</em>&nbsp;</td><td>on exit, a comparison of <em>in_identity</em> and <em>in_compare_to_identity</em> which determines whether or not the two identities are equivalent and their sort order (for display to the user) if they are not. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gf335ac09504999d0ad61390ede02c113"></a><!-- doxytag: member="kim_identity.h::kim_identity_get_string" ref="gf335ac09504999d0ad61390ede02c113" args="(kim_identity_t in_identity, kim_string_t *out_string)" -->
+<a class="anchor" name="g094e916a4d31556c3ead03f85aafa603"></a><!-- doxytag: member="kim_identity.h::kim_identity_get_string" ref="g094e916a4d31556c3ead03f85aafa603" args="(kim_identity in_identity, kim_string *out_string)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_identity_get_string           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_identity_get_string           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *&nbsp;</td>
           <td class="paramname"> <em>out_string</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -276,28 +275,28 @@ Get the string representation of a identity.
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_identity</em>&nbsp;</td><td>an identity object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_string</em>&nbsp;</td><td>on exit, a string representation of <em>in_identity</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#ga3e9ac5bcab38b089adfeebd8ba56ded" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_string</em>&nbsp;</td><td>on exit, a string representation of <em>in_identity</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#g7e7207329022e97473ec71574e52a1fc" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>Special characters such as '@' and '/' will be escaped with '\'. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g3421872c143cc80b1bf220c34e26cc21"></a><!-- doxytag: member="kim_identity.h::kim_identity_get_display_string" ref="g3421872c143cc80b1bf220c34e26cc21" args="(kim_identity_t in_identity, kim_string_t *out_display_string)" -->
+<a class="anchor" name="g59afb84675651930afebeb6fff788eba"></a><!-- doxytag: member="kim_identity.h::kim_identity_get_display_string" ref="g59afb84675651930afebeb6fff788eba" args="(kim_identity in_identity, kim_string *out_display_string)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_identity_get_display_string           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_identity_get_display_string           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *&nbsp;</td>
           <td class="paramname"> <em>out_display_string</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -315,28 +314,28 @@ Get a human-readable string representation of an identity.
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_identity</em>&nbsp;</td><td>an identity object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_display_string</em>&nbsp;</td><td>on exit, a string representation of <em>in_identity</em> appropriate for display to the user. Must be freed with <a class="el" href="group__kim__string__reference.html#ga3e9ac5bcab38b089adfeebd8ba56ded" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_display_string</em>&nbsp;</td><td>on exit, a string representation of <em>in_identity</em> appropriate for display to the user. Must be freed with <a class="el" href="group__kim__string__reference.html#g7e7207329022e97473ec71574e52a1fc" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="note" compact><dt><b>Note:</b></dt><dd>Special characters such as '/' and '@' are <em>not</em> escaped with '\'. As a result the string returned from this function cannot be used with <a class="el" href="group__kim__identity__reference.html#ga69ec4892b8a0dc7aa183803d0cb15fd" title="Create a identity from a string.">kim_identity_create_from_string()</a> because it does not uniquely specify a principal. The result of this function should <em>only</em> be used to display to the user. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>Special characters such as '/' and '@' are <em>not</em> escaped with '\'. As a result the string returned from this function cannot be used with <a class="el" href="group__kim__identity__reference.html#g23804ae9643100ad5e1fef11f6e5362c" title="Create a identity from a string.">kim_identity_create_from_string()</a> because it does not uniquely specify a principal. The result of this function should <em>only</em> be used to display to the user. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gb5c93208197c70e202209adf61b49a3b"></a><!-- doxytag: member="kim_identity.h::kim_identity_get_realm" ref="gb5c93208197c70e202209adf61b49a3b" args="(kim_identity_t in_identity, kim_string_t *out_realm_string)" -->
+<a class="anchor" name="gf102dfe4b89f6e87ac3059f01f174066"></a><!-- doxytag: member="kim_identity.h::kim_identity_get_realm" ref="gf102dfe4b89f6e87ac3059f01f174066" args="(kim_identity in_identity, kim_string *out_realm_string)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_identity_get_realm           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_identity_get_realm           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *&nbsp;</td>
           <td class="paramname"> <em>out_realm_string</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -354,27 +353,27 @@ Get the realm string of an identity.
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_identity</em>&nbsp;</td><td>an identity object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_realm_string</em>&nbsp;</td><td>on exit, a string representation of <em>in_identity's</em> realm. Must be freed with <a class="el" href="group__kim__string__reference.html#ga3e9ac5bcab38b089adfeebd8ba56ded" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_realm_string</em>&nbsp;</td><td>on exit, a string representation of <em>in_identity's</em> realm. Must be freed with <a class="el" href="group__kim__string__reference.html#g7e7207329022e97473ec71574e52a1fc" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g6077350272922bf196e9a900e5989c41"></a><!-- doxytag: member="kim_identity.h::kim_identity_get_number_of_components" ref="g6077350272922bf196e9a900e5989c41" args="(kim_identity_t in_identity, kim_count_t *out_number_of_components)" -->
+<a class="anchor" name="g96591cf92e03e823efcd4fc54085ca4d"></a><!-- doxytag: member="kim_identity.h::kim_identity_get_number_of_components" ref="g96591cf92e03e823efcd4fc54085ca4d" args="(kim_identity in_identity, kim_count *out_number_of_components)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_identity_get_number_of_components           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_identity_get_number_of_components           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g709d3d4d2733bc8dc29dcab2e806dd38">kim_count_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g098e3611b2bc3af38b5f06838153165d">kim_count</a> *&nbsp;</td>
           <td class="paramname"> <em>out_number_of_components</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -395,30 +394,30 @@ Get the number of components of an identity.
     <tr><td valign="top"></td><td valign="top"><em>out_number_of_components</em>&nbsp;</td><td>on exit the number of components in <em>in_identity</em>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g1e58b572e65b9771bbf6dee51883d71b"></a><!-- doxytag: member="kim_identity.h::kim_identity_get_component_at_index" ref="g1e58b572e65b9771bbf6dee51883d71b" args="(kim_identity_t in_identity, kim_count_t in_index, kim_string_t *out_component_string)" -->
+<a class="anchor" name="gec46c138cd20035a12586dba59680728"></a><!-- doxytag: member="kim_identity.h::kim_identity_get_component_at_index" ref="gec46c138cd20035a12586dba59680728" args="(kim_identity in_identity, kim_count in_index, kim_string *out_component_string)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_identity_get_component_at_index           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_identity_get_component_at_index           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g709d3d4d2733bc8dc29dcab2e806dd38">kim_count_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g098e3611b2bc3af38b5f06838153165d">kim_count</a>&nbsp;</td>
           <td class="paramname"> <em>in_index</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *&nbsp;</td>
           <td class="paramname"> <em>out_component_string</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -437,21 +436,21 @@ Get the Nth component of an identity.
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_identity</em>&nbsp;</td><td>an identity object. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_index</em>&nbsp;</td><td>the index of the desired component. Component indexes start at 0. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_component_string</em>&nbsp;</td><td>on exit, a string representation of the component in <em>in_identity</em> specified by <em>in_index</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#ga3e9ac5bcab38b089adfeebd8ba56ded" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_component_string</em>&nbsp;</td><td>on exit, a string representation of the component in <em>in_identity</em> specified by <em>in_index</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#g7e7207329022e97473ec71574e52a1fc" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g63b40561de2bfe2315990d1579d5db75"></a><!-- doxytag: member="kim_identity.h::kim_identity_get_krb5_principal" ref="g63b40561de2bfe2315990d1579d5db75" args="(kim_identity_t in_identity, krb5_context in_krb5_context, krb5_principal *out_krb5_principal)" -->
+<a class="anchor" name="gd293289334f024dedae5fa59856049d6"></a><!-- doxytag: member="kim_identity.h::kim_identity_get_krb5_principal" ref="gd293289334f024dedae5fa59856049d6" args="(kim_identity in_identity, krb5_context in_krb5_context, krb5_principal *out_krb5_principal)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_identity_get_krb5_principal           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_identity_get_krb5_principal           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_identity</em>, </td>
         </tr>
         <tr>
@@ -485,62 +484,24 @@ Get the krb5_principal representation of an identity.
     <tr><td valign="top"></td><td valign="top"><em>out_krb5_principal</em>&nbsp;</td><td>on exit, a krb5_principal representation of <em>in_identity</em> allocated with <em>in_krb5_context</em>. Must be freed with krb5_free_principal() using <em>in_krb5_context</em>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g445ddb044181a68fdbad8a63e614add5"></a><!-- doxytag: member="kim_identity.h::kim_identity_get_gss_name" ref="g445ddb044181a68fdbad8a63e614add5" args="(kim_identity_t in_identity, gss_name_t *out_gss_name)" -->
+<a class="anchor" name="gd198c678fa37a551391bc52307306394"></a><!-- doxytag: member="kim_identity.h::kim_identity_change_password" ref="gd198c678fa37a551391bc52307306394" args="(kim_identity in_identity, kim_options in_options)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_identity_get_gss_name           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_identity_change_password           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">gss_name_t *&nbsp;</td>
-          <td class="paramname"> <em>out_gss_name</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Get the gss_name_t representation of an identity. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>in_identity</em>&nbsp;</td><td>an identity object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_gss_name</em>&nbsp;</td><td>on exit, a gss_name_t representation of <em>in_identity</em>. Must be freed with gss_release_name(). </td></tr>
-  </table>
-</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="g493fd86d79650af831d52b8a14b2774c"></a><!-- doxytag: member="kim_identity.h::kim_identity_change_password" ref="g493fd86d79650af831d52b8a14b2774c" args="(kim_identity_t in_identity, kim_options_t in_options)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_identity_change_password           </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
-          <td class="paramname"> <em>in_identity</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -561,31 +522,31 @@ Change the password for an identity.
     <tr><td valign="top"></td><td valign="top"><em>in_options</em>&nbsp;</td><td>initial credential options to be used if a new credential is obtained. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="note" compact><dt><b>Note:</b></dt><dd><a class="el" href="group__kim__identity__reference.html#g493fd86d79650af831d52b8a14b2774c" title="Change the password for an identity.">kim_identity_change_password()</a> will acquire a temporary credential to change the password. It uses the <em>in_options</em> structure to obtain information about the desired prompter and current password. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd><a class="el" href="group__kim__identity__reference.html#gd198c678fa37a551391bc52307306394" title="Change the password for an identity.">kim_identity_change_password()</a> will acquire a temporary credential to change the password. It uses the <em>in_options</em> structure to obtain information about the desired prompter and current password. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g7f1513586561a6bb724e20a8ca4a6977"></a><!-- doxytag: member="kim_identity.h::kim_identity_change_password_to_password" ref="g7f1513586561a6bb724e20a8ca4a6977" args="(kim_identity_t in_identity, kim_options_t in_options, kim_string_t in_new_password)" -->
+<a class="anchor" name="g6eb2decbecaaab598d66f809187f8223"></a><!-- doxytag: member="kim_identity.h::kim_identity_change_password_to_password" ref="g6eb2decbecaaab598d66f809187f8223" args="(kim_identity in_identity, kim_options in_options, kim_string in_new_password)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_identity_change_password_to_password           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_identity_change_password_to_password           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_identity</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_new_password</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -607,19 +568,19 @@ Change the password for an identity to a caller-provided new password.
     <tr><td valign="top"></td><td valign="top"><em>in_new_password</em>&nbsp;</td><td>a string representation of the identity's new password. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>kim_identity_change_password_with_passwords() will acquire a temporary credential to change the password. It uses the <em>in_options</em> structure to obtain information about the desired prompter and current password. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gd384198163f30b97a6a583ad871a0e23"></a><!-- doxytag: member="kim_identity.h::kim_identity_free" ref="gd384198163f30b97a6a583ad871a0e23" args="(kim_identity_t *io_identity)" -->
+<a class="anchor" name="g3ae8057f3eb0040330b598645d470411"></a><!-- doxytag: member="kim_identity.h::kim_identity_free" ref="g3ae8057f3eb0040330b598645d470411" args="(kim_identity *io_identity)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void kim_identity_free           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *&nbsp;</td>
           <td class="paramname"> <em>io_identity</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td width="100%"></td>
@@ -639,7 +600,7 @@ Free memory associated with an identity.
 
 </div>
 </div><p>
-<hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:19 2008 for Kerberos Identity Management by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index 0ab05b8329ffbe20c834ed92d557d068b32e3ade..0d7536473c15a3bfeb2bb45235c2af244d97005a 100644 (file)
@@ -9,41 +9,39 @@
 <p>
 <h2>Functions</h2>
 <ul>
-<li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#g4d00f4d070409ea90aa69a8ac5cb47cf">kim_options_create</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *out_options)
-<dl class="el"><dd class="mdescRight">Create new options with default values.  <a href="#g4d00f4d070409ea90aa69a8ac5cb47cf"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#g9581098fcec4c67e4504d90c98dd8d06">kim_options_copy</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *out_options, <a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options)
-<dl class="el"><dd class="mdescRight">Copy options.  <a href="#g9581098fcec4c67e4504d90c98dd8d06"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#gb3342e60ebb03f901307fd605af5a684">kim_options_set_prompt_callback</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> io_options, <a class="el" href="group__kim__types__reference.html#g3dc87ed0aa0847e5af0e4f410ba6d7dd">kim_prompt_callback_t</a> in_prompt_callback)
-<dl class="el"><dd class="mdescRight">Set the prompt callback for obtaining information from the user.  <a href="#gb3342e60ebb03f901307fd605af5a684"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#g33ef5b43db39436f16f0c7d80d1860d1">kim_options_get_prompt_callback</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options, <a class="el" href="group__kim__types__reference.html#g3dc87ed0aa0847e5af0e4f410ba6d7dd">kim_prompt_callback_t</a> *out_prompt_callback)
-<dl class="el"><dd class="mdescRight">Get the prompt callback for obtaining information from the user.  <a href="#g33ef5b43db39436f16f0c7d80d1860d1"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#gf8836b9f6f8a8d4350a781b85f4017e5">kim_options_set_data</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> io_options, const void *in_data)
-<dl class="el"><dd class="mdescRight">Set caller-specific data for use in library callbacks.  <a href="#gf8836b9f6f8a8d4350a781b85f4017e5"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#g4adbc1e7656c45991f07533798132e4b">kim_options_get_data</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options, const void **out_data)
-<dl class="el"><dd class="mdescRight">Get caller-specific data for use in library callbacks.  <a href="#g4adbc1e7656c45991f07533798132e4b"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#g55acd6378c0bdf5c534b9535a534c9bd">kim_options_set_prompt_response</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> io_options, <a class="el" href="group__kim__types__reference.html#g8d58b8d10d34b30675b1402a12d9fdd1">kim_prompt_type_t</a> in_prompt_type, void *in_response)
-<dl class="el"><dd class="mdescRight">Set a response for a prompt for use when acquiring credentials.  <a href="#g55acd6378c0bdf5c534b9535a534c9bd"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#g7e45337c11734b040c74038f8c2ab21c">kim_options_get_prompt_response</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options, <a class="el" href="group__kim__types__reference.html#g8d58b8d10d34b30675b1402a12d9fdd1">kim_prompt_type_t</a> in_prompt_type, void **out_response)
-<dl class="el"><dd class="mdescRight">Get the response for a prompt for use when acquiring credentials.  <a href="#g7e45337c11734b040c74038f8c2ab21c"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#g2193de68adcec22df88069d86e2a145c">kim_options_set_start_time</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> io_options, <a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a> in_start_time)
-<dl class="el"><dd class="mdescRight">Set the date when a credential should become valid.  <a href="#g2193de68adcec22df88069d86e2a145c"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#g587539ca61a06b5730ed688f914e9fa6">kim_options_get_start_time</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options, <a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a> *out_start_time)
-<dl class="el"><dd class="mdescRight">Get the date when a credential should become valid.  <a href="#g587539ca61a06b5730ed688f914e9fa6"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#ga6058acd016b6387be19e0127606fcb1">kim_options_set_lifetime</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> io_options, <a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a> in_lifetime)
-<dl class="el"><dd class="mdescRight">Set the duration during which a credential should be valid.  <a href="#ga6058acd016b6387be19e0127606fcb1"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#gc179cfff2a29eb0bbe4ac0b6dab8afad">kim_options_get_lifetime</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options, <a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a> *out_lifetime)
-<dl class="el"><dd class="mdescRight">Get the duration during which an acquired credential should be valid.  <a href="#gc179cfff2a29eb0bbe4ac0b6dab8afad"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#g47a49dca419a7d7f1d79c5acd1f16b7a">kim_options_set_renewable</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> io_options, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> in_renewable)
-<dl class="el"><dd class="mdescRight">Set whether or not to request a renewable credential.  <a href="#g47a49dca419a7d7f1d79c5acd1f16b7a"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#gefc2785f119f04379b20d381a79a45af">kim_options_get_renewable</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> *out_renewable)
-<dl class="el"><dd class="mdescRight">Get whether or not to request a renewable credential.  <a href="#gefc2785f119f04379b20d381a79a45af"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#g035bd3841ff3581922cba91b043cd945">kim_options_set_renewal_lifetime</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> io_options, <a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a> in_renewal_lifetime)
-<dl class="el"><dd class="mdescRight">Set the duration during which a valid credential should be renewable.  <a href="#g035bd3841ff3581922cba91b043cd945"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#g2a49d92912b6270357788436d2c6fd8f">kim_options_get_renewal_lifetime</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options, <a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a> *out_renewal_lifetime)
-<dl class="el"><dd class="mdescRight">Get the duration during which a valid credential should be renewable.  <a href="#g2a49d92912b6270357788436d2c6fd8f"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#gc055fb95bb39e93b276dc2380632cd6d">kim_options_set_forwardable</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> io_options, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> in_forwardable)
-<dl class="el"><dd class="mdescRight">Set whether or not to request a forwardable credential.  <a href="#gc055fb95bb39e93b276dc2380632cd6d"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#g6dc2e2ec0448d28ce847fc8880ce8561">kim_options_get_forwardable</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> *out_forwardable)
-<dl class="el"><dd class="mdescRight">Get whether or not to request a forwardable credential.  <a href="#g6dc2e2ec0448d28ce847fc8880ce8561"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#g4ab6093bff1c28196e2886e146d5e0d0">kim_options_set_proxiable</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> io_options, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> in_proxiable)
-<dl class="el"><dd class="mdescRight">Set whether or not to request a proxiable credential.  <a href="#g4ab6093bff1c28196e2886e146d5e0d0"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#ga36c948940f89e1cca4477b3d1869c84">kim_options_get_proxiable</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> *out_proxiable)
-<dl class="el"><dd class="mdescRight">Get whether or not to request a proxiable credential.  <a href="#ga36c948940f89e1cca4477b3d1869c84"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#g673640ffd337c815cbc71cbef32b4156">kim_options_set_addressless</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> io_options, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> in_addressless)
-<dl class="el"><dd class="mdescRight">Set whether or not to request an addressless credential.  <a href="#g673640ffd337c815cbc71cbef32b4156"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#g8308f996ae22cad938ec4a4782a01322">kim_options_get_addressless</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> *out_addressless)
-<dl class="el"><dd class="mdescRight">Get whether or not to request an addressless credential.  <a href="#g8308f996ae22cad938ec4a4782a01322"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#g5914bd9caf4ba781c723d152bf5ddc05">kim_options_set_service_name</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> io_options, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_service_name)
-<dl class="el"><dd class="mdescRight">Set the service name to request a credential for.  <a href="#g5914bd9caf4ba781c723d152bf5ddc05"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__options__reference.html#ge74278a56626df2ad5a60ed61d8a1836">kim_options_get_service_name</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *out_service_name)
-<dl class="el"><dd class="mdescRight">Get the service name to request a credential for.  <a href="#ge74278a56626df2ad5a60ed61d8a1836"></a><br></dl><li>void <a class="el" href="group__kim__options__reference.html#g06130689189d5ba4f9e518c8ed68eb7d">kim_options_free</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *io_options)
-<dl class="el"><dd class="mdescRight">Free memory associated with an options object.  <a href="#g06130689189d5ba4f9e518c8ed68eb7d"></a><br></dl></ul>
+<li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#ge36eb288b38f18491e4c903f008b1379">kim_options_create</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> *out_options)
+<dl class="el"><dd class="mdescRight">Create new options with default values.  <a href="#ge36eb288b38f18491e4c903f008b1379"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#g17fc17a04097c42afab7a6b1a3f8d7fb">kim_options_copy</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> *out_options, <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options)
+<dl class="el"><dd class="mdescRight">Copy options.  <a href="#g17fc17a04097c42afab7a6b1a3f8d7fb"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#g645bfc7ee5e4d17e53d34964dee2a7d7">kim_options_set_prompt_callback</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> io_options, <a class="el" href="group__kim__types__reference.html#gded2c3c2de01d94299b65fb8df64bdcc">kim_prompt_callback</a> in_prompt_callback)
+<dl class="el"><dd class="mdescRight">Set the prompt callback for obtaining information from the user.  <a href="#g645bfc7ee5e4d17e53d34964dee2a7d7"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#g5bde52591259c4598530553ea2719181">kim_options_get_prompt_callback</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options, <a class="el" href="group__kim__types__reference.html#gded2c3c2de01d94299b65fb8df64bdcc">kim_prompt_callback</a> *out_prompt_callback)
+<dl class="el"><dd class="mdescRight">Get the prompt callback for obtaining information from the user.  <a href="#g5bde52591259c4598530553ea2719181"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#g4b061cf6dc57624b91560b5d511a7c43">kim_options_set_data</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> io_options, const void *in_data)
+<dl class="el"><dd class="mdescRight">Set caller-specific data for use in library callbacks.  <a href="#g4b061cf6dc57624b91560b5d511a7c43"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#gf81e50923e7b4604950a5aec8a3676d7">kim_options_get_data</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options, const void **out_data)
+<dl class="el"><dd class="mdescRight">Get caller-specific data for use in library callbacks.  <a href="#gf81e50923e7b4604950a5aec8a3676d7"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#gf7f6a8a82fedc547c8502ce09a419f91">kim_options_set_start_time</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> io_options, <a class="el" href="group__kim__types__reference.html#g3da22452677b45753d40e07f3904dff5">kim_time</a> in_start_time)
+<dl class="el"><dd class="mdescRight">Set the date when a credential should become valid.  <a href="#gf7f6a8a82fedc547c8502ce09a419f91"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#gca63b972b41530c52bbe83bd974e6f9b">kim_options_get_start_time</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options, <a class="el" href="group__kim__types__reference.html#g3da22452677b45753d40e07f3904dff5">kim_time</a> *out_start_time)
+<dl class="el"><dd class="mdescRight">Get the date when a credential should become valid.  <a href="#gca63b972b41530c52bbe83bd974e6f9b"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#g392369e80bea0ea9c920d6de55e080ed">kim_options_set_lifetime</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> io_options, <a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a> in_lifetime)
+<dl class="el"><dd class="mdescRight">Set the duration during which a credential should be valid.  <a href="#g392369e80bea0ea9c920d6de55e080ed"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#gd7a886d6c0a33d0d872bf40420023ee2">kim_options_get_lifetime</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options, <a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a> *out_lifetime)
+<dl class="el"><dd class="mdescRight">Get the duration during which an acquired credential should be valid.  <a href="#gd7a886d6c0a33d0d872bf40420023ee2"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#gcfa20d97d1643714a62b81077c1722ba">kim_options_set_renewable</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> io_options, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> in_renewable)
+<dl class="el"><dd class="mdescRight">Set whether or not to request a renewable credential.  <a href="#gcfa20d97d1643714a62b81077c1722ba"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#g073245936d6086da6f1d3572872ecfe6">kim_options_get_renewable</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> *out_renewable)
+<dl class="el"><dd class="mdescRight">Get whether or not to request a renewable credential.  <a href="#g073245936d6086da6f1d3572872ecfe6"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#g604ed101fa538a6f042fe612d74b5ed2">kim_options_set_renewal_lifetime</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> io_options, <a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a> in_renewal_lifetime)
+<dl class="el"><dd class="mdescRight">Set the duration during which a valid credential should be renewable.  <a href="#g604ed101fa538a6f042fe612d74b5ed2"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#g34bcb26ba38f691c6f5d48ec97a49392">kim_options_get_renewal_lifetime</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options, <a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a> *out_renewal_lifetime)
+<dl class="el"><dd class="mdescRight">Get the duration during which a valid credential should be renewable.  <a href="#g34bcb26ba38f691c6f5d48ec97a49392"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#gc787d6b18febc22c86299d2668818513">kim_options_set_forwardable</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> io_options, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> in_forwardable)
+<dl class="el"><dd class="mdescRight">Set whether or not to request a forwardable credential.  <a href="#gc787d6b18febc22c86299d2668818513"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#g649b9ded186ec13915196a6f8ded7565">kim_options_get_forwardable</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> *out_forwardable)
+<dl class="el"><dd class="mdescRight">Get whether or not to request a forwardable credential.  <a href="#g649b9ded186ec13915196a6f8ded7565"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#g15ffe61f06334f4071e5b1ea6be62117">kim_options_set_proxiable</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> io_options, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> in_proxiable)
+<dl class="el"><dd class="mdescRight">Set whether or not to request a proxiable credential.  <a href="#g15ffe61f06334f4071e5b1ea6be62117"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#g0193dda96349a6e8d98d6154540a364e">kim_options_get_proxiable</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> *out_proxiable)
+<dl class="el"><dd class="mdescRight">Get whether or not to request a proxiable credential.  <a href="#g0193dda96349a6e8d98d6154540a364e"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#g4706fb2cc57109b8593f0b030218261a">kim_options_set_addressless</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> io_options, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> in_addressless)
+<dl class="el"><dd class="mdescRight">Set whether or not to request an addressless credential.  <a href="#g4706fb2cc57109b8593f0b030218261a"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#g50495f13e53c49a11729904038e7cdf9">kim_options_get_addressless</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> *out_addressless)
+<dl class="el"><dd class="mdescRight">Get whether or not to request an addressless credential.  <a href="#g50495f13e53c49a11729904038e7cdf9"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#g6e31c69a65efe32a5860125083d0b803">kim_options_set_service_name</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> io_options, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_service_name)
+<dl class="el"><dd class="mdescRight">Set the service name to request a credential for.  <a href="#g6e31c69a65efe32a5860125083d0b803"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__options__reference.html#gdf70addbc8221c252b1223b5e99dfa94">kim_options_get_service_name</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *out_service_name)
+<dl class="el"><dd class="mdescRight">Get the service name to request a credential for.  <a href="#gdf70addbc8221c252b1223b5e99dfa94"></a><br></dl><li>void <a class="el" href="group__kim__options__reference.html#gd8de9ea0a4eb9e0ffb8e3056a3899f55">kim_options_free</a> (<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> *io_options)
+<dl class="el"><dd class="mdescRight">Free memory associated with an options object.  <a href="#gd8de9ea0a4eb9e0ffb8e3056a3899f55"></a><br></dl></ul>
 <hr><h2>Function Documentation</h2>
-<a class="anchor" name="g4d00f4d070409ea90aa69a8ac5cb47cf"></a><!-- doxytag: member="kim_options.h::kim_options_create" ref="g4d00f4d070409ea90aa69a8ac5cb47cf" args="(kim_options_t *out_options)" -->
+<a class="anchor" name="ge36eb288b38f18491e4c903f008b1379"></a><!-- doxytag: member="kim_options.h::kim_options_create" ref="ge36eb288b38f18491e4c903f008b1379" args="(kim_options *out_options)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_create           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_create           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> *&nbsp;</td>
           <td class="paramname"> <em>out_options</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td width="100%"></td>
@@ -57,27 +55,27 @@ Create new options with default values.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_options</em>&nbsp;</td><td>on exit, a new options object. Must be freed with <a class="el" href="group__kim__options__reference.html#g06130689189d5ba4f9e518c8ed68eb7d" title="Free memory associated with an options object.">kim_options_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_options</em>&nbsp;</td><td>on exit, a new options object. Must be freed with <a class="el" href="group__kim__options__reference.html#gd8de9ea0a4eb9e0ffb8e3056a3899f55" title="Free memory associated with an options object.">kim_options_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g9581098fcec4c67e4504d90c98dd8d06"></a><!-- doxytag: member="kim_options.h::kim_options_copy" ref="g9581098fcec4c67e4504d90c98dd8d06" args="(kim_options_t *out_options, kim_options_t in_options)" -->
+<a class="anchor" name="g17fc17a04097c42afab7a6b1a3f8d7fb"></a><!-- doxytag: member="kim_options.h::kim_options_copy" ref="g17fc17a04097c42afab7a6b1a3f8d7fb" args="(kim_options *out_options, kim_options in_options)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_copy           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_copy           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> *&nbsp;</td>
           <td class="paramname"> <em>out_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -94,28 +92,28 @@ Copy options.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_options</em>&nbsp;</td><td>on exit, a new options object which is a copy of <em>in_options</em>. Must be freed with <a class="el" href="group__kim__options__reference.html#g06130689189d5ba4f9e518c8ed68eb7d" title="Free memory associated with an options object.">kim_options_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_options</em>&nbsp;</td><td>on exit, a new options object which is a copy of <em>in_options</em>. Must be freed with <a class="el" href="group__kim__options__reference.html#gd8de9ea0a4eb9e0ffb8e3056a3899f55" title="Free memory associated with an options object.">kim_options_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_options</em>&nbsp;</td><td>a options object. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gb3342e60ebb03f901307fd605af5a684"></a><!-- doxytag: member="kim_options.h::kim_options_set_prompt_callback" ref="gb3342e60ebb03f901307fd605af5a684" args="(kim_options_t io_options, kim_prompt_callback_t in_prompt_callback)" -->
+<a class="anchor" name="g645bfc7ee5e4d17e53d34964dee2a7d7"></a><!-- doxytag: member="kim_options.h::kim_options_set_prompt_callback" ref="g645bfc7ee5e4d17e53d34964dee2a7d7" args="(kim_options io_options, kim_prompt_callback in_prompt_callback)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_set_prompt_callback           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_set_prompt_callback           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>io_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g3dc87ed0aa0847e5af0e4f410ba6d7dd">kim_prompt_callback_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gded2c3c2de01d94299b65fb8df64bdcc">kim_prompt_callback</a>&nbsp;</td>
           <td class="paramname"> <em>in_prompt_callback</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -136,26 +134,26 @@ Set the prompt callback for obtaining information from the user.
     <tr><td valign="top"></td><td valign="top"><em>in_prompt_callback</em>&nbsp;</td><td>a prompt callback function. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="user" compact><dt><b>Default value</b></dt><dd><a class="el" href="group__kim__types__reference.html#gd9cfd6a66e9bdcde30a285dc350eb370">kim_prompt_callback_default</a> </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g33ef5b43db39436f16f0c7d80d1860d1" title="Get the prompt callback for obtaining information from the user.">kim_options_get_prompt_callback()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="user" compact><dt><b>Default value</b></dt><dd><a class="el" href="group__kim__types__reference.html#gbacd03bffb1ba46e4d8e36d19d91a170">kim_prompt_callback_default</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g5bde52591259c4598530553ea2719181" title="Get the prompt callback for obtaining information from the user.">kim_options_get_prompt_callback()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g33ef5b43db39436f16f0c7d80d1860d1"></a><!-- doxytag: member="kim_options.h::kim_options_get_prompt_callback" ref="g33ef5b43db39436f16f0c7d80d1860d1" args="(kim_options_t in_options, kim_prompt_callback_t *out_prompt_callback)" -->
+<a class="anchor" name="g5bde52591259c4598530553ea2719181"></a><!-- doxytag: member="kim_options.h::kim_options_get_prompt_callback" ref="g5bde52591259c4598530553ea2719181" args="(kim_options in_options, kim_prompt_callback *out_prompt_callback)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_get_prompt_callback           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_get_prompt_callback           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g3dc87ed0aa0847e5af0e4f410ba6d7dd">kim_prompt_callback_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gded2c3c2de01d94299b65fb8df64bdcc">kim_prompt_callback</a> *&nbsp;</td>
           <td class="paramname"> <em>out_prompt_callback</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -176,20 +174,20 @@ Get the prompt callback for obtaining information from the user.
     <tr><td valign="top"></td><td valign="top"><em>out_prompt_callback</em>&nbsp;</td><td>on exit, the prompt callback specified by in_options. Does not need to be freed but may become invalid when <em>in_options</em> is freed. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="user" compact><dt><b>Default value</b></dt><dd><a class="el" href="group__kim__types__reference.html#gd9cfd6a66e9bdcde30a285dc350eb370">kim_prompt_callback_default</a> </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#gb3342e60ebb03f901307fd605af5a684" title="Set the prompt callback for obtaining information from the user.">kim_options_set_prompt_callback()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="user" compact><dt><b>Default value</b></dt><dd><a class="el" href="group__kim__types__reference.html#gbacd03bffb1ba46e4d8e36d19d91a170">kim_prompt_callback_default</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g645bfc7ee5e4d17e53d34964dee2a7d7" title="Set the prompt callback for obtaining information from the user.">kim_options_set_prompt_callback()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gf8836b9f6f8a8d4350a781b85f4017e5"></a><!-- doxytag: member="kim_options.h::kim_options_set_data" ref="gf8836b9f6f8a8d4350a781b85f4017e5" args="(kim_options_t io_options, const void *in_data)" -->
+<a class="anchor" name="g4b061cf6dc57624b91560b5d511a7c43"></a><!-- doxytag: member="kim_options.h::kim_options_set_data" ref="g4b061cf6dc57624b91560b5d511a7c43" args="(kim_options io_options, const void *in_data)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_set_data           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_set_data           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>io_options</em>, </td>
         </tr>
         <tr>
@@ -216,21 +214,21 @@ Set caller-specific data for use in library callbacks.
     <tr><td valign="top"></td><td valign="top"><em>in_data</em>&nbsp;</td><td>a pointer to caller-specific data. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>This option can be used by the caller to store a pointer to data needed when handling a callback. The KIM library does not use this options data in any way. </dd></dl>
 <dl class="user" compact><dt><b>Default value</b></dt><dd>NULL (no data is set by default) </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g4adbc1e7656c45991f07533798132e4b" title="Get caller-specific data for use in library callbacks.">kim_options_get_data()</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#gf81e50923e7b4604950a5aec8a3676d7" title="Get caller-specific data for use in library callbacks.">kim_options_get_data()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g4adbc1e7656c45991f07533798132e4b"></a><!-- doxytag: member="kim_options.h::kim_options_get_data" ref="g4adbc1e7656c45991f07533798132e4b" args="(kim_options_t in_options, const void **out_data)" -->
+<a class="anchor" name="gf81e50923e7b4604950a5aec8a3676d7"></a><!-- doxytag: member="kim_options.h::kim_options_get_data" ref="gf81e50923e7b4604950a5aec8a3676d7" args="(kim_options in_options, const void **out_data)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_get_data           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_get_data           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em>, </td>
         </tr>
         <tr>
@@ -257,123 +255,27 @@ Get caller-specific data for use in library callbacks.
     <tr><td valign="top"></td><td valign="top"><em>out_data</em>&nbsp;</td><td>on exit, the pointer to caller specific data specified by in_options. Does not need to be freed but may become invalid when <em>in_options</em> is freed. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>This option can be used by the caller to store a pointer to data needed when handling a callback. The KIM library does not use this options data in any way. </dd></dl>
 <dl class="user" compact><dt><b>Default value</b></dt><dd>NULL (no data is set by default) </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#gf8836b9f6f8a8d4350a781b85f4017e5" title="Set caller-specific data for use in library callbacks.">kim_options_set_data()</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g4b061cf6dc57624b91560b5d511a7c43" title="Set caller-specific data for use in library callbacks.">kim_options_set_data()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g55acd6378c0bdf5c534b9535a534c9bd"></a><!-- doxytag: member="kim_options.h::kim_options_set_prompt_response" ref="g55acd6378c0bdf5c534b9535a534c9bd" args="(kim_options_t io_options, kim_prompt_type_t in_prompt_type, void *in_response)" -->
+<a class="anchor" name="gf7f6a8a82fedc547c8502ce09a419f91"></a><!-- doxytag: member="kim_options.h::kim_options_set_start_time" ref="gf7f6a8a82fedc547c8502ce09a419f91" args="(kim_options io_options, kim_time in_start_time)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_set_prompt_response           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_set_start_time           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>io_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g8d58b8d10d34b30675b1402a12d9fdd1">kim_prompt_type_t</a>&nbsp;</td>
-          <td class="paramname"> <em>in_prompt_type</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">void *&nbsp;</td>
-          <td class="paramname"> <em>in_response</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set a response for a prompt for use when acquiring credentials. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>io_options</em>&nbsp;</td><td>an options object to modify. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>in_prompt_type</em>&nbsp;</td><td>a type of prompt. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>in_response</em>&nbsp;</td><td>a response to prompts of <em>in_prompt_type</em>. </td></tr>
-  </table>
-</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="note" compact><dt><b>Note:</b></dt><dd>Each response only overrides the first prompt of a given prompt type. If multiple prompts of the same type are required, or if a prompt of a different type is requested, the prompt callback will be called to obtain user input. If you want to turn off prompting entirely, call <a class="el" href="group__kim__options__reference.html#gb3342e60ebb03f901307fd605af5a684" title="Set the prompt callback for obtaining information from the user.">kim_options_set_prompt_callback()</a> with <a class="el" href="group__kim__types__reference.html#g9699effd6079690c8b744ff96dff1914">kim_prompt_callback_none</a>. </dd></dl>
-<dl class="user" compact><dt><b>Default value</b></dt><dd>NULL (no response is set by default) </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g7e45337c11734b040c74038f8c2ab21c" title="Get the response for a prompt for use when acquiring credentials.">kim_options_get_prompt_response()</a> </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="g7e45337c11734b040c74038f8c2ab21c"></a><!-- doxytag: member="kim_options.h::kim_options_get_prompt_response" ref="g7e45337c11734b040c74038f8c2ab21c" args="(kim_options_t in_options, kim_prompt_type_t in_prompt_type, void **out_response)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_get_prompt_response           </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
-          <td class="paramname"> <em>in_options</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g8d58b8d10d34b30675b1402a12d9fdd1">kim_prompt_type_t</a>&nbsp;</td>
-          <td class="paramname"> <em>in_prompt_type</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">void **&nbsp;</td>
-          <td class="paramname"> <em>out_response</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Get the response for a prompt for use when acquiring credentials. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>in_options</em>&nbsp;</td><td>an options object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>in_prompt_type</em>&nbsp;</td><td>a type of prompt. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_response</em>&nbsp;</td><td>on exit, the response to prompts of type <em>in_prompt_type</em> specified by <em>in_options</em>. Does not need to be freed but may become invalid when <em>in_options</em> is freed. </td></tr>
-  </table>
-</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="note" compact><dt><b>Note:</b></dt><dd>Each response only overrides the first prompt of a given prompt type. If multiple prompts of the same type are required, or if a prompt of a different type is requested, the prompt callback will be called to obtain user input. If you want to turn off prompting entirely, call <a class="el" href="group__kim__options__reference.html#gb3342e60ebb03f901307fd605af5a684" title="Set the prompt callback for obtaining information from the user.">kim_options_set_prompt_callback()</a> with <a class="el" href="group__kim__types__reference.html#g9699effd6079690c8b744ff96dff1914">kim_prompt_callback_none</a>. </dd></dl>
-<dl class="user" compact><dt><b>Default value</b></dt><dd>NULL (no response is set by default) </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g55acd6378c0bdf5c534b9535a534c9bd" title="Set a response for a prompt for use when acquiring credentials.">kim_options_set_prompt_response()</a> </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="g2193de68adcec22df88069d86e2a145c"></a><!-- doxytag: member="kim_options.h::kim_options_set_start_time" ref="g2193de68adcec22df88069d86e2a145c" args="(kim_options_t io_options, kim_time_t in_start_time)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_set_start_time           </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
-          <td class="paramname"> <em>io_options</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g3da22452677b45753d40e07f3904dff5">kim_time</a>&nbsp;</td>
           <td class="paramname"> <em>in_start_time</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -394,27 +296,27 @@ Set the date when a credential should become valid.
     <tr><td valign="top"></td><td valign="top"><em>in_start_time</em>&nbsp;</td><td>a start date (in seconds since January 1, 1970). Set to <a class="el" href="group__kim__types__reference.html#g88d98fa3bd4ca00913bff414d65c3590">KIM_OPTIONS_START_IMMEDIATELY</a> for the acquired credential to be valid immediately. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>When using a start time in the future, once the start time has been reached the credential must be validated before it can be used. </dd></dl>
 <dl class="user" compact><dt><b>Default value</b></dt><dd>0, indicating "now". The credential will be valid immediately. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g587539ca61a06b5730ed688f914e9fa6" title="Get the date when a credential should become valid.">kim_options_get_start_time()</a>, <a class="el" href="group__kim__credential__reference.html#g9cd6ba59236babb4e79a680fa54b5037" title="Validate a TGT credential.">kim_credential_validate()</a>, <a class="el" href="group__kim__ccache__reference.html#g8bb7d46268621e73629dceefd15ff639" title="Validate the TGT in a ccache.">kim_ccache_validate()</a>, kim_identity_validate() </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#gca63b972b41530c52bbe83bd974e6f9b" title="Get the date when a credential should become valid.">kim_options_get_start_time()</a>, <a class="el" href="group__kim__credential__reference.html#g63a591ef509219ae83d11b635065984d" title="Validate a TGT credential.">kim_credential_validate()</a>, <a class="el" href="group__kim__ccache__reference.html#g73f5b201d24a58936244fc4e43cd3d59" title="Validate the TGT in a ccache.">kim_ccache_validate()</a>, kim_identity_validate() </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g587539ca61a06b5730ed688f914e9fa6"></a><!-- doxytag: member="kim_options.h::kim_options_get_start_time" ref="g587539ca61a06b5730ed688f914e9fa6" args="(kim_options_t in_options, kim_time_t *out_start_time)" -->
+<a class="anchor" name="gca63b972b41530c52bbe83bd974e6f9b"></a><!-- doxytag: member="kim_options.h::kim_options_get_start_time" ref="gca63b972b41530c52bbe83bd974e6f9b" args="(kim_options in_options, kim_time *out_start_time)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_get_start_time           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_get_start_time           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g3da22452677b45753d40e07f3904dff5">kim_time</a> *&nbsp;</td>
           <td class="paramname"> <em>out_start_time</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -435,27 +337,27 @@ Get the date when a credential should become valid.
     <tr><td valign="top"></td><td valign="top"><em>out_start_time</em>&nbsp;</td><td>on exit, the start date (in seconds since January 1, 1970) specified by <em>in_options</em>. <a class="el" href="group__kim__types__reference.html#g88d98fa3bd4ca00913bff414d65c3590">KIM_OPTIONS_START_IMMEDIATELY</a> indicates the credential will be valid immediately. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>When using a start time in the future, once the start time has been reached the credential must be validated before it can be used. </dd></dl>
 <dl class="user" compact><dt><b>Default value</b></dt><dd>0, indicating "now". The credential will be valid immediately. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g2193de68adcec22df88069d86e2a145c" title="Set the date when a credential should become valid.">kim_options_set_start_time()</a>, <a class="el" href="group__kim__credential__reference.html#g9cd6ba59236babb4e79a680fa54b5037" title="Validate a TGT credential.">kim_credential_validate()</a>, <a class="el" href="group__kim__ccache__reference.html#g8bb7d46268621e73629dceefd15ff639" title="Validate the TGT in a ccache.">kim_ccache_validate()</a>, kim_identity_validate() </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#gf7f6a8a82fedc547c8502ce09a419f91" title="Set the date when a credential should become valid.">kim_options_set_start_time()</a>, <a class="el" href="group__kim__credential__reference.html#g63a591ef509219ae83d11b635065984d" title="Validate a TGT credential.">kim_credential_validate()</a>, <a class="el" href="group__kim__ccache__reference.html#g73f5b201d24a58936244fc4e43cd3d59" title="Validate the TGT in a ccache.">kim_ccache_validate()</a>, kim_identity_validate() </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="ga6058acd016b6387be19e0127606fcb1"></a><!-- doxytag: member="kim_options.h::kim_options_set_lifetime" ref="ga6058acd016b6387be19e0127606fcb1" args="(kim_options_t io_options, kim_lifetime_t in_lifetime)" -->
+<a class="anchor" name="g392369e80bea0ea9c920d6de55e080ed"></a><!-- doxytag: member="kim_options.h::kim_options_set_lifetime" ref="g392369e80bea0ea9c920d6de55e080ed" args="(kim_options io_options, kim_lifetime in_lifetime)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_set_lifetime           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_set_lifetime           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>io_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a>&nbsp;</td>
           <td class="paramname"> <em>in_lifetime</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -476,27 +378,27 @@ Set the duration during which a credential should be valid.
     <tr><td valign="top"></td><td valign="top"><em>in_lifetime</em>&nbsp;</td><td>a lifetime duration (in seconds). </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>KDCs have a maximum allowed lifetime per identity (usually 10 to 21 hours). As a result the credential will actually have a lifetime which is the minimum of <em>in_lifetime</em> and the KDC's maximum allowed lifetime. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#gc179cfff2a29eb0bbe4ac0b6dab8afad" title="Get the duration during which an acquired credential should be valid.">kim_options_get_lifetime()</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#gd7a886d6c0a33d0d872bf40420023ee2" title="Get the duration during which an acquired credential should be valid.">kim_options_get_lifetime()</a> </dd></dl>
 <dl class="user" compact><dt><b>Default value</b></dt><dd>Read from the user's preferences and the Kerberos configuration. 10 hours if unspecified. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gc179cfff2a29eb0bbe4ac0b6dab8afad"></a><!-- doxytag: member="kim_options.h::kim_options_get_lifetime" ref="gc179cfff2a29eb0bbe4ac0b6dab8afad" args="(kim_options_t in_options, kim_lifetime_t *out_lifetime)" -->
+<a class="anchor" name="gd7a886d6c0a33d0d872bf40420023ee2"></a><!-- doxytag: member="kim_options.h::kim_options_get_lifetime" ref="gd7a886d6c0a33d0d872bf40420023ee2" args="(kim_options in_options, kim_lifetime *out_lifetime)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_get_lifetime           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_get_lifetime           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a> *&nbsp;</td>
           <td class="paramname"> <em>out_lifetime</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -517,27 +419,27 @@ Get the duration during which an acquired credential should be valid.
     <tr><td valign="top"></td><td valign="top"><em>out_lifetime</em>&nbsp;</td><td>on exit, the lifetime duration (in seconds) specified in <em>in_options</em>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>KDCs have a maximum allowed lifetime per identity (usually 10 to 21 hours). As a result the credential will actually have a lifetime which is the minimum of <em>in_lifetime</em> and the KDC's maximum allowed lifetime. </dd></dl>
 <dl class="user" compact><dt><b>Default value</b></dt><dd>Read from the user's preferences and the Kerberos configuration. 10 hours if unspecified. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#ga6058acd016b6387be19e0127606fcb1" title="Set the duration during which a credential should be valid.">kim_options_set_lifetime()</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g392369e80bea0ea9c920d6de55e080ed" title="Set the duration during which a credential should be valid.">kim_options_set_lifetime()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g47a49dca419a7d7f1d79c5acd1f16b7a"></a><!-- doxytag: member="kim_options.h::kim_options_set_renewable" ref="g47a49dca419a7d7f1d79c5acd1f16b7a" args="(kim_options_t io_options, kim_boolean_t in_renewable)" -->
+<a class="anchor" name="gcfa20d97d1643714a62b81077c1722ba"></a><!-- doxytag: member="kim_options.h::kim_options_set_renewable" ref="gcfa20d97d1643714a62b81077c1722ba" args="(kim_options io_options, kim_boolean in_renewable)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_set_renewable           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_set_renewable           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>io_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a>&nbsp;</td>
           <td class="paramname"> <em>in_renewable</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -558,26 +460,26 @@ Set whether or not to request a renewable credential.
     <tr><td valign="top"></td><td valign="top"><em>in_renewable</em>&nbsp;</td><td>a boolean value indicating whether or not to request a renewable credential. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="user" compact><dt><b>Default value</b></dt><dd>Read from the user's preferences and the Kerberos configuration. TRUE if unspecified. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#gefc2785f119f04379b20d381a79a45af" title="Get whether or not to request a renewable credential.">kim_options_get_renewable()</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g073245936d6086da6f1d3572872ecfe6" title="Get whether or not to request a renewable credential.">kim_options_get_renewable()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gefc2785f119f04379b20d381a79a45af"></a><!-- doxytag: member="kim_options.h::kim_options_get_renewable" ref="gefc2785f119f04379b20d381a79a45af" args="(kim_options_t in_options, kim_boolean_t *out_renewable)" -->
+<a class="anchor" name="g073245936d6086da6f1d3572872ecfe6"></a><!-- doxytag: member="kim_options.h::kim_options_get_renewable" ref="g073245936d6086da6f1d3572872ecfe6" args="(kim_options in_options, kim_boolean *out_renewable)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_get_renewable           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_get_renewable           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> *&nbsp;</td>
           <td class="paramname"> <em>out_renewable</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -598,26 +500,26 @@ Get whether or not to request a renewable credential.
     <tr><td valign="top"></td><td valign="top"><em>out_renewable</em>&nbsp;</td><td>on exit, a boolean value indicating whether or <em>in_options</em> will request a renewable credential. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="user" compact><dt><b>Default value</b></dt><dd>Read from the user's preferences and the Kerberos configuration. TRUE if unspecified. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g47a49dca419a7d7f1d79c5acd1f16b7a" title="Set whether or not to request a renewable credential.">kim_options_set_renewable()</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#gcfa20d97d1643714a62b81077c1722ba" title="Set whether or not to request a renewable credential.">kim_options_set_renewable()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g035bd3841ff3581922cba91b043cd945"></a><!-- doxytag: member="kim_options.h::kim_options_set_renewal_lifetime" ref="g035bd3841ff3581922cba91b043cd945" args="(kim_options_t io_options, kim_lifetime_t in_renewal_lifetime)" -->
+<a class="anchor" name="g604ed101fa538a6f042fe612d74b5ed2"></a><!-- doxytag: member="kim_options.h::kim_options_set_renewal_lifetime" ref="g604ed101fa538a6f042fe612d74b5ed2" args="(kim_options io_options, kim_lifetime in_renewal_lifetime)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_set_renewal_lifetime           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_set_renewal_lifetime           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>io_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a>&nbsp;</td>
           <td class="paramname"> <em>in_renewal_lifetime</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -638,27 +540,27 @@ Set the duration during which a valid credential should be renewable.
     <tr><td valign="top"></td><td valign="top"><em>in_renewal_lifetime</em>&nbsp;</td><td>a renewal lifetime duration (in seconds). </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>KDCs have a maximum allowed renewal lifetime per identity (usually 10 to 21 hours). As a result the credential will actually have a lifetime which is the minimum of <em>in_lifetime</em> and the KDC's maximum allowed lifetime. </dd></dl>
 <dl class="user" compact><dt><b>Default value</b></dt><dd>Read from the user's preferences and the Kerberos configuration. 7 days if unspecified. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g2a49d92912b6270357788436d2c6fd8f" title="Get the duration during which a valid credential should be renewable.">kim_options_get_renewal_lifetime()</a>, kim_identity_renew(), <a class="el" href="group__kim__credential__reference.html#g99ac2c178bec484311cd7fc2cbb7e05e" title="Renew a TGT credential.">kim_credential_renew()</a>, <a class="el" href="group__kim__ccache__reference.html#gafb44675df9d05af5b899996be14e2b4" title="Renew the TGT in a ccache.">kim_ccache_renew()</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g34bcb26ba38f691c6f5d48ec97a49392" title="Get the duration during which a valid credential should be renewable.">kim_options_get_renewal_lifetime()</a>, kim_identity_renew(), <a class="el" href="group__kim__credential__reference.html#g18f43112f7ae046b2a5918b061a2072d" title="Renew a TGT credential.">kim_credential_renew()</a>, <a class="el" href="group__kim__ccache__reference.html#g574a0ef674116589dcf57460af81de39" title="Renew the TGT in a ccache.">kim_ccache_renew()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g2a49d92912b6270357788436d2c6fd8f"></a><!-- doxytag: member="kim_options.h::kim_options_get_renewal_lifetime" ref="g2a49d92912b6270357788436d2c6fd8f" args="(kim_options_t in_options, kim_lifetime_t *out_renewal_lifetime)" -->
+<a class="anchor" name="g34bcb26ba38f691c6f5d48ec97a49392"></a><!-- doxytag: member="kim_options.h::kim_options_get_renewal_lifetime" ref="g34bcb26ba38f691c6f5d48ec97a49392" args="(kim_options in_options, kim_lifetime *out_renewal_lifetime)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_get_renewal_lifetime           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_get_renewal_lifetime           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a> *&nbsp;</td>
           <td class="paramname"> <em>out_renewal_lifetime</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -679,27 +581,27 @@ Get the duration during which a valid credential should be renewable.
     <tr><td valign="top"></td><td valign="top"><em>out_renewal_lifetime</em>&nbsp;</td><td>on exit, the renewal lifetime duration (in seconds) specified in <em>in_options</em>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>KDCs have a maximum allowed lifetime per identity (usually 10 to 21 hours). As a result the credential will actually have a lifetime which is the minimum of <em>in_lifetime</em> and the KDC's maximum allowed lifetime. </dd></dl>
 <dl class="user" compact><dt><b>Default value</b></dt><dd>Read from the user's preferences and the Kerberos configuration. 7 days if unspecified. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g035bd3841ff3581922cba91b043cd945" title="Set the duration during which a valid credential should be renewable.">kim_options_set_renewal_lifetime()</a>, kim_identity_renew(), <a class="el" href="group__kim__credential__reference.html#g99ac2c178bec484311cd7fc2cbb7e05e" title="Renew a TGT credential.">kim_credential_renew()</a>, <a class="el" href="group__kim__ccache__reference.html#gafb44675df9d05af5b899996be14e2b4" title="Renew the TGT in a ccache.">kim_ccache_renew()</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g604ed101fa538a6f042fe612d74b5ed2" title="Set the duration during which a valid credential should be renewable.">kim_options_set_renewal_lifetime()</a>, kim_identity_renew(), <a class="el" href="group__kim__credential__reference.html#g18f43112f7ae046b2a5918b061a2072d" title="Renew a TGT credential.">kim_credential_renew()</a>, <a class="el" href="group__kim__ccache__reference.html#g574a0ef674116589dcf57460af81de39" title="Renew the TGT in a ccache.">kim_ccache_renew()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gc055fb95bb39e93b276dc2380632cd6d"></a><!-- doxytag: member="kim_options.h::kim_options_set_forwardable" ref="gc055fb95bb39e93b276dc2380632cd6d" args="(kim_options_t io_options, kim_boolean_t in_forwardable)" -->
+<a class="anchor" name="gc787d6b18febc22c86299d2668818513"></a><!-- doxytag: member="kim_options.h::kim_options_set_forwardable" ref="gc787d6b18febc22c86299d2668818513" args="(kim_options io_options, kim_boolean in_forwardable)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_set_forwardable           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_set_forwardable           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>io_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a>&nbsp;</td>
           <td class="paramname"> <em>in_forwardable</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -720,26 +622,26 @@ Set whether or not to request a forwardable credential.
     <tr><td valign="top"></td><td valign="top"><em>in_forwardable</em>&nbsp;</td><td>a boolean value indicating whether or not to request a forwardable credential. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="user" compact><dt><b>Default value</b></dt><dd>Read from the user's preferences and the Kerberos configuration. TRUE if unspecified. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g6dc2e2ec0448d28ce847fc8880ce8561" title="Get whether or not to request a forwardable credential.">kim_options_get_forwardable()</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g649b9ded186ec13915196a6f8ded7565" title="Get whether or not to request a forwardable credential.">kim_options_get_forwardable()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g6dc2e2ec0448d28ce847fc8880ce8561"></a><!-- doxytag: member="kim_options.h::kim_options_get_forwardable" ref="g6dc2e2ec0448d28ce847fc8880ce8561" args="(kim_options_t in_options, kim_boolean_t *out_forwardable)" -->
+<a class="anchor" name="g649b9ded186ec13915196a6f8ded7565"></a><!-- doxytag: member="kim_options.h::kim_options_get_forwardable" ref="g649b9ded186ec13915196a6f8ded7565" args="(kim_options in_options, kim_boolean *out_forwardable)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_get_forwardable           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_get_forwardable           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> *&nbsp;</td>
           <td class="paramname"> <em>out_forwardable</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -760,26 +662,26 @@ Get whether or not to request a forwardable credential.
     <tr><td valign="top"></td><td valign="top"><em>out_forwardable</em>&nbsp;</td><td>on exit, a boolean value indicating whether or <em>in_options</em> will request a forwardable credential. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="user" compact><dt><b>Default value</b></dt><dd>Read from the user's preferences and the Kerberos configuration. TRUE if unspecified. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#gc055fb95bb39e93b276dc2380632cd6d" title="Set whether or not to request a forwardable credential.">kim_options_set_forwardable()</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#gc787d6b18febc22c86299d2668818513" title="Set whether or not to request a forwardable credential.">kim_options_set_forwardable()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g4ab6093bff1c28196e2886e146d5e0d0"></a><!-- doxytag: member="kim_options.h::kim_options_set_proxiable" ref="g4ab6093bff1c28196e2886e146d5e0d0" args="(kim_options_t io_options, kim_boolean_t in_proxiable)" -->
+<a class="anchor" name="g15ffe61f06334f4071e5b1ea6be62117"></a><!-- doxytag: member="kim_options.h::kim_options_set_proxiable" ref="g15ffe61f06334f4071e5b1ea6be62117" args="(kim_options io_options, kim_boolean in_proxiable)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_set_proxiable           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_set_proxiable           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>io_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a>&nbsp;</td>
           <td class="paramname"> <em>in_proxiable</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -800,26 +702,26 @@ Set whether or not to request a proxiable credential.
     <tr><td valign="top"></td><td valign="top"><em>in_proxiable</em>&nbsp;</td><td>a boolean value indicating whether or not to request a proxiable credential. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="user" compact><dt><b>Default value</b></dt><dd>Read from the user's preferences and the Kerberos configuration. TRUE if unspecified. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#ga36c948940f89e1cca4477b3d1869c84" title="Get whether or not to request a proxiable credential.">kim_options_get_proxiable()</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g0193dda96349a6e8d98d6154540a364e" title="Get whether or not to request a proxiable credential.">kim_options_get_proxiable()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="ga36c948940f89e1cca4477b3d1869c84"></a><!-- doxytag: member="kim_options.h::kim_options_get_proxiable" ref="ga36c948940f89e1cca4477b3d1869c84" args="(kim_options_t in_options, kim_boolean_t *out_proxiable)" -->
+<a class="anchor" name="g0193dda96349a6e8d98d6154540a364e"></a><!-- doxytag: member="kim_options.h::kim_options_get_proxiable" ref="g0193dda96349a6e8d98d6154540a364e" args="(kim_options in_options, kim_boolean *out_proxiable)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_get_proxiable           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_get_proxiable           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> *&nbsp;</td>
           <td class="paramname"> <em>out_proxiable</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -840,26 +742,26 @@ Get whether or not to request a proxiable credential.
     <tr><td valign="top"></td><td valign="top"><em>out_proxiable</em>&nbsp;</td><td>on exit, a boolean value indicating whether or <em>in_options</em> will request a proxiable credential. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="user" compact><dt><b>Default value</b></dt><dd>Read from the user's preferences and the Kerberos configuration. TRUE if unspecified. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g4ab6093bff1c28196e2886e146d5e0d0" title="Set whether or not to request a proxiable credential.">kim_options_set_proxiable()</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g15ffe61f06334f4071e5b1ea6be62117" title="Set whether or not to request a proxiable credential.">kim_options_set_proxiable()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g673640ffd337c815cbc71cbef32b4156"></a><!-- doxytag: member="kim_options.h::kim_options_set_addressless" ref="g673640ffd337c815cbc71cbef32b4156" args="(kim_options_t io_options, kim_boolean_t in_addressless)" -->
+<a class="anchor" name="g4706fb2cc57109b8593f0b030218261a"></a><!-- doxytag: member="kim_options.h::kim_options_set_addressless" ref="g4706fb2cc57109b8593f0b030218261a" args="(kim_options io_options, kim_boolean in_addressless)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_set_addressless           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_set_addressless           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>io_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a>&nbsp;</td>
           <td class="paramname"> <em>in_addressless</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -880,26 +782,26 @@ Set whether or not to request an addressless credential.
     <tr><td valign="top"></td><td valign="top"><em>in_addressless</em>&nbsp;</td><td>a boolean value indicating whether or not to request an addressless credential. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="user" compact><dt><b>Default value</b></dt><dd>Read from the user's preferences and the Kerberos configuration. TRUE if unspecified. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g8308f996ae22cad938ec4a4782a01322" title="Get whether or not to request an addressless credential.">kim_options_get_addressless()</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g50495f13e53c49a11729904038e7cdf9" title="Get whether or not to request an addressless credential.">kim_options_get_addressless()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g8308f996ae22cad938ec4a4782a01322"></a><!-- doxytag: member="kim_options.h::kim_options_get_addressless" ref="g8308f996ae22cad938ec4a4782a01322" args="(kim_options_t in_options, kim_boolean_t *out_addressless)" -->
+<a class="anchor" name="g50495f13e53c49a11729904038e7cdf9"></a><!-- doxytag: member="kim_options.h::kim_options_get_addressless" ref="g50495f13e53c49a11729904038e7cdf9" args="(kim_options in_options, kim_boolean *out_addressless)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_get_addressless           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_get_addressless           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> *&nbsp;</td>
           <td class="paramname"> <em>out_addressless</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -920,26 +822,26 @@ Get whether or not to request an addressless credential.
     <tr><td valign="top"></td><td valign="top"><em>out_addressless</em>&nbsp;</td><td>on exit, a boolean value indicating whether or <em>in_options</em> will request an addressless credential. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="user" compact><dt><b>Default value</b></dt><dd>Read from the user's preferences and the Kerberos configuration. TRUE if unspecified. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g673640ffd337c815cbc71cbef32b4156" title="Set whether or not to request an addressless credential.">kim_options_set_addressless()</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g4706fb2cc57109b8593f0b030218261a" title="Set whether or not to request an addressless credential.">kim_options_set_addressless()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g5914bd9caf4ba781c723d152bf5ddc05"></a><!-- doxytag: member="kim_options.h::kim_options_set_service_name" ref="g5914bd9caf4ba781c723d152bf5ddc05" args="(kim_options_t io_options, kim_string_t in_service_name)" -->
+<a class="anchor" name="g6e31c69a65efe32a5860125083d0b803"></a><!-- doxytag: member="kim_options.h::kim_options_set_service_name" ref="g6e31c69a65efe32a5860125083d0b803" args="(kim_options io_options, kim_string in_service_name)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_set_service_name           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_set_service_name           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>io_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_service_name</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -960,26 +862,26 @@ Set the service name to request a credential for.
     <tr><td valign="top"></td><td valign="top"><em>in_service_name</em>&nbsp;</td><td>a service name. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="user" compact><dt><b>Default value</b></dt><dd>NULL, indicating "krbtgt@&lt;REALM&gt;", the ticket granting ticket (TGT) service. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#ge74278a56626df2ad5a60ed61d8a1836" title="Get the service name to request a credential for.">kim_options_get_service_name()</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#gdf70addbc8221c252b1223b5e99dfa94" title="Get the service name to request a credential for.">kim_options_get_service_name()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="ge74278a56626df2ad5a60ed61d8a1836"></a><!-- doxytag: member="kim_options.h::kim_options_get_service_name" ref="ge74278a56626df2ad5a60ed61d8a1836" args="(kim_options_t in_options, kim_string_t *out_service_name)" -->
+<a class="anchor" name="gdf70addbc8221c252b1223b5e99dfa94"></a><!-- doxytag: member="kim_options.h::kim_options_get_service_name" ref="gdf70addbc8221c252b1223b5e99dfa94" args="(kim_options in_options, kim_string *out_service_name)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_options_get_service_name           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_options_get_service_name           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *&nbsp;</td>
           <td class="paramname"> <em>out_service_name</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -997,23 +899,23 @@ Get the service name to request a credential for.
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_options</em>&nbsp;</td><td>an options object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_service_name</em>&nbsp;</td><td>on exit, the service name specified in <em>in_options</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#ga3e9ac5bcab38b089adfeebd8ba56ded" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_service_name</em>&nbsp;</td><td>on exit, the service name specified in <em>in_options</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#g7e7207329022e97473ec71574e52a1fc" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="user" compact><dt><b>Default value</b></dt><dd>NULL, indicating "krbtgt@&lt;REALM&gt;", the ticket granting ticket (TGT) service. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g5914bd9caf4ba781c723d152bf5ddc05" title="Set the service name to request a credential for.">kim_options_set_service_name()</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__options__reference.html#g6e31c69a65efe32a5860125083d0b803" title="Set the service name to request a credential for.">kim_options_set_service_name()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g06130689189d5ba4f9e518c8ed68eb7d"></a><!-- doxytag: member="kim_options.h::kim_options_free" ref="g06130689189d5ba4f9e518c8ed68eb7d" args="(kim_options_t *io_options)" -->
+<a class="anchor" name="gd8de9ea0a4eb9e0ffb8e3056a3899f55"></a><!-- doxytag: member="kim_options.h::kim_options_free" ref="gd8de9ea0a4eb9e0ffb8e3056a3899f55" args="(kim_options *io_options)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void kim_options_free           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> *&nbsp;</td>
           <td class="paramname"> <em>io_options</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td width="100%"></td>
@@ -1033,7 +935,7 @@ Free memory associated with an options object.
 
 </div>
 </div><p>
-<hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:19 2008 for Kerberos Identity Management by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index 27db8f41a90531a009fa3a7dbd626f22b2cfd84e..70ed55e94d1f7d85da4f69784b1e74a12df72ea8 100644 (file)
@@ -9,38 +9,41 @@
 <p>
 <h2>Functions</h2>
 <ul>
-<li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#g88fba2fb35d73c5905eb21dcfad57578">kim_preferences_create</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> *out_preferences)
-<dl class="el"><dd class="mdescRight">Create a new preferences object from the current user's preferences.  <a href="#g88fba2fb35d73c5905eb21dcfad57578"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#g6075365366f37db89090cc68ad2e5a61">kim_preferences_copy</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> *out_preferences, <a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> in_preferences)
-<dl class="el"><dd class="mdescRight">Copy a preferences object.  <a href="#g6075365366f37db89090cc68ad2e5a61"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#ge7f0f13dd6d50e7730205abddb1a0127">kim_preferences_set_options</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> io_preferences, <a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options)
-<dl class="el"><dd class="mdescRight">Set the user's preferred options.  <a href="#ge7f0f13dd6d50e7730205abddb1a0127"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#g634a03cb1109362db8e4024b055afa71">kim_preferences_get_options</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> in_preferences, <a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *out_options)
-<dl class="el"><dd class="mdescRight">Get the user's preferred options.  <a href="#g634a03cb1109362db8e4024b055afa71"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#g7e2031a5a8ef5590357b304eb943f402">kim_preferences_set_remember_options</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> io_preferences, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> in_remember_options)
-<dl class="el"><dd class="mdescRight">Set whether or not to remember the last options the user used to acquire a credential.  <a href="#g7e2031a5a8ef5590357b304eb943f402"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#g804eb8078e5b5a1c73e7e27b0efdb66d">kim_preferences_get_remember_options</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> in_preferences, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> *out_remember_options)
-<dl class="el"><dd class="mdescRight">Get whether or not to remember the last options the user used to acquire a credential.  <a href="#g804eb8078e5b5a1c73e7e27b0efdb66d"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#g70806a8dfdde27746f8c161b4f845ecb">kim_preferences_set_client_identity</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> io_preferences, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_client_identity)
-<dl class="el"><dd class="mdescRight">Set the user's preferred client identity.  <a href="#g70806a8dfdde27746f8c161b4f845ecb"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#ga7bf4c87813bee177d2485d827c59943">kim_preferences_get_client_identity</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> in_preferences, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *out_client_identity)
-<dl class="el"><dd class="mdescRight">Get the user's preferred client identity.  <a href="#ga7bf4c87813bee177d2485d827c59943"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#ge8d68790339f8f11f1e017726101329a">kim_preferences_set_remember_client_identity</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> io_preferences, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> in_remember_client_identity)
-<dl class="el"><dd class="mdescRight">Set whether or not to remember the last client identity the user acquired a credential for.  <a href="#ge8d68790339f8f11f1e017726101329a"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#gd24a4831e3664ae2ec69b2de2ccfca50">kim_preferences_get_remember_client_identity</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> in_preferences, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> *out_remember_client_identity)
-<dl class="el"><dd class="mdescRight">Get whether or not to remember the last client identity the user acquired a credential for.  <a href="#gd24a4831e3664ae2ec69b2de2ccfca50"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#g2bf9498e3bf1be235871e1e7a333efe3">kim_preferences_set_minimum_lifetime</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> io_preferences, <a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a> in_minimum_lifetime)
-<dl class="el"><dd class="mdescRight">Set the minimum credential lifetime for GUI credential lifetime controls.  <a href="#g2bf9498e3bf1be235871e1e7a333efe3"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#g15f14854da23043706e21c6632cc2ccf">kim_preferences_get_minimum_lifetime</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> in_preferences, <a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a> *out_minimum_lifetime)
-<dl class="el"><dd class="mdescRight">Get the minimum credential lifetime for GUI credential lifetime controls.  <a href="#g15f14854da23043706e21c6632cc2ccf"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#g720dc58fe13d7c80ced5c618c7551923">kim_preferences_set_maximum_lifetime</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> io_preferences, <a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a> in_maximum_lifetime)
-<dl class="el"><dd class="mdescRight">Set the maximum credential lifetime for GUI credential lifetime controls.  <a href="#g720dc58fe13d7c80ced5c618c7551923"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#g00db50426fd382af2c161898465830b2">kim_preferences_get_maximum_lifetime</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> in_preferences, <a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a> *out_maximum_lifetime)
-<dl class="el"><dd class="mdescRight">Get the maximum credential lifetime for GUI credential lifetime controls.  <a href="#g00db50426fd382af2c161898465830b2"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#g2aad1731737f04c0a0fd0d9e0864420e">kim_preferences_set_minimum_renewal_lifetime</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> io_preferences, <a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a> in_minimum_renewal_lifetime)
-<dl class="el"><dd class="mdescRight">Set the minimum credential renewal lifetime for GUI credential lifetime controls.  <a href="#g2aad1731737f04c0a0fd0d9e0864420e"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#g8c470e1f7a090e76a111f728a510e6fa">kim_preferences_get_minimum_renewal_lifetime</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> in_preferences, <a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a> *out_minimum_renewal_lifetime)
-<dl class="el"><dd class="mdescRight">Get the minimum credential renewal lifetime for GUI credential lifetime controls.  <a href="#g8c470e1f7a090e76a111f728a510e6fa"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#g82d7aba77fed12eba63172a43eed8a06">kim_preferences_set_maximum_renewal_lifetime</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> io_preferences, <a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a> in_maximum_renewal_lifetime)
-<dl class="el"><dd class="mdescRight">Set the maximum credential renewal lifetime for GUI credential lifetime controls.  <a href="#g82d7aba77fed12eba63172a43eed8a06"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#g9ae6e44298b639894e21a57eef26d93b">kim_preferences_get_maximum_renewal_lifetime</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> in_preferences, <a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a> *out_maximum_renewal_lifetime)
-<dl class="el"><dd class="mdescRight">Get the maximum credential renewal lifetime for GUI credential lifetime controls.  <a href="#g9ae6e44298b639894e21a57eef26d93b"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#g2c0ee43f07affdeeec76624777e662d7">kim_preferences_set_favorite_identities</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> io_preferences, <a class="el" href="group__kim__types__reference.html#g732f9e24fe1281aa42ffa2b078a53282">kim_favorite_identities_t</a> in_favorite_identities)
-<dl class="el"><dd class="mdescRight">Set the user's preferred list of identities.  <a href="#g2c0ee43f07affdeeec76624777e662d7"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#g4ce6a3e2d6b92eb335e7110bf43ef1ab">kim_preferences_get_favorite_identities</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> in_preferences, <a class="el" href="group__kim__types__reference.html#g732f9e24fe1281aa42ffa2b078a53282">kim_favorite_identities_t</a> *out_favorite_identities)
-<dl class="el"><dd class="mdescRight">Get the user's preferred list of identities.  <a href="#g4ce6a3e2d6b92eb335e7110bf43ef1ab"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__preferences__reference.html#gd4548bdc2cd52ad21d7a3e1bb60edba0">kim_preferences_synchronize</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> in_preferences)
-<dl class="el"><dd class="mdescRight">Synchronize a preferences object with the user's preferences, writing pending changes and reading any changes applied by other processes.  <a href="#gd4548bdc2cd52ad21d7a3e1bb60edba0"></a><br></dl><li>void <a class="el" href="group__kim__preferences__reference.html#g4ecf102531d917a0776f563101b8056e">kim_preferences_free</a> (<a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> *io_preferences)
-<dl class="el"><dd class="mdescRight">Free memory associated with a preferences object.  <a href="#g4ecf102531d917a0776f563101b8056e"></a><br></dl></ul>
+<li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#gf1dc483fcb582add046d552da9b8485f">kim_preferences_create</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> *out_preferences)
+<dl class="el"><dd class="mdescRight">Create a new preferences object from the current user's preferences.  <a href="#gf1dc483fcb582add046d552da9b8485f"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#g58ee5520fbae5f7720a70692120de6c2">kim_preferences_copy</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> *out_preferences, <a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> in_preferences)
+<dl class="el"><dd class="mdescRight">Copy a preferences object.  <a href="#g58ee5520fbae5f7720a70692120de6c2"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#gc9c1f77fcf571c575664b44267f19fc3">kim_preferences_set_options</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> io_preferences, <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options)
+<dl class="el"><dd class="mdescRight">Set the user's preferred options.  <a href="#gc9c1f77fcf571c575664b44267f19fc3"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#g68f6bb5bd97d85753d74e958e452560f">kim_preferences_get_options</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> in_preferences, <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> *out_options)
+<dl class="el"><dd class="mdescRight">Get the user's preferred options.  <a href="#g68f6bb5bd97d85753d74e958e452560f"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#g9380ffc6ff3d440b680d3d50f8f23f7e">kim_preferences_set_remember_options</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> io_preferences, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> in_remember_options)
+<dl class="el"><dd class="mdescRight">Set whether or not to remember the last options the user used to acquire a credential.  <a href="#g9380ffc6ff3d440b680d3d50f8f23f7e"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#ga4b2b54310c0efb6bbba284395095c0f">kim_preferences_get_remember_options</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> in_preferences, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> *out_remember_options)
+<dl class="el"><dd class="mdescRight">Get whether or not to remember the last options the user used to acquire a credential.  <a href="#ga4b2b54310c0efb6bbba284395095c0f"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#g531087a0c7ec0e247eff326066e31b42">kim_preferences_set_client_identity</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> io_preferences, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_client_identity)
+<dl class="el"><dd class="mdescRight">Set the user's preferred client identity.  <a href="#g531087a0c7ec0e247eff326066e31b42"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#g7e8243e83781035aef702b1882114e57">kim_preferences_get_client_identity</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> in_preferences, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *out_client_identity)
+<dl class="el"><dd class="mdescRight">Get the user's preferred client identity.  <a href="#g7e8243e83781035aef702b1882114e57"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#gc956ea12b0f9c82b94e90bfede836af4">kim_preferences_set_remember_client_identity</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> io_preferences, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> in_remember_client_identity)
+<dl class="el"><dd class="mdescRight">Set whether or not to remember the last client identity the user acquired a credential for.  <a href="#gc956ea12b0f9c82b94e90bfede836af4"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#g9113eb1a092a9c745d9b724f7890ecb6">kim_preferences_get_remember_client_identity</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> in_preferences, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> *out_remember_client_identity)
+<dl class="el"><dd class="mdescRight">Get whether or not to remember the last client identity the user acquired a credential for.  <a href="#g9113eb1a092a9c745d9b724f7890ecb6"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#g1451680e39e6fba86f01f6166c62a1e0">kim_preferences_set_minimum_lifetime</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> io_preferences, <a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a> in_minimum_lifetime)
+<dl class="el"><dd class="mdescRight">Set the minimum credential lifetime for GUI credential lifetime controls.  <a href="#g1451680e39e6fba86f01f6166c62a1e0"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#g8da696b824d8cbf6cd97316622edd74e">kim_preferences_get_minimum_lifetime</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> in_preferences, <a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a> *out_minimum_lifetime)
+<dl class="el"><dd class="mdescRight">Get the minimum credential lifetime for GUI credential lifetime controls.  <a href="#g8da696b824d8cbf6cd97316622edd74e"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#gb8d2aa65276ab84de1a7ffb7ac59d749">kim_preferences_set_maximum_lifetime</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> io_preferences, <a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a> in_maximum_lifetime)
+<dl class="el"><dd class="mdescRight">Set the maximum credential lifetime for GUI credential lifetime controls.  <a href="#gb8d2aa65276ab84de1a7ffb7ac59d749"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#ge7941e46f8a5372c7b2636e3ece8438a">kim_preferences_get_maximum_lifetime</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> in_preferences, <a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a> *out_maximum_lifetime)
+<dl class="el"><dd class="mdescRight">Get the maximum credential lifetime for GUI credential lifetime controls.  <a href="#ge7941e46f8a5372c7b2636e3ece8438a"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#g578689903e4caf7d0b1c8c00cb822422">kim_preferences_set_minimum_renewal_lifetime</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> io_preferences, <a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a> in_minimum_renewal_lifetime)
+<dl class="el"><dd class="mdescRight">Set the minimum credential renewal lifetime for GUI credential lifetime controls.  <a href="#g578689903e4caf7d0b1c8c00cb822422"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#g9780ba56efd87ced3ab87f4a172d1ce8">kim_preferences_get_minimum_renewal_lifetime</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> in_preferences, <a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a> *out_minimum_renewal_lifetime)
+<dl class="el"><dd class="mdescRight">Get the minimum credential renewal lifetime for GUI credential lifetime controls.  <a href="#g9780ba56efd87ced3ab87f4a172d1ce8"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#g2d005064cc3b97f4dd5c4523f869a9d0">kim_preferences_set_maximum_renewal_lifetime</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> io_preferences, <a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a> in_maximum_renewal_lifetime)
+<dl class="el"><dd class="mdescRight">Set the maximum credential renewal lifetime for GUI credential lifetime controls.  <a href="#g2d005064cc3b97f4dd5c4523f869a9d0"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#gfd67441a6a6d7063973aac6324bb1577">kim_preferences_get_maximum_renewal_lifetime</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> in_preferences, <a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a> *out_maximum_renewal_lifetime)
+<dl class="el"><dd class="mdescRight">Get the maximum credential renewal lifetime for GUI credential lifetime controls.  <a href="#gfd67441a6a6d7063973aac6324bb1577"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#g39ff3407953fedfc861efda92f961f18">kim_preferences_get_number_of_favorite_identities</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> in_preferences, <a class="el" href="group__kim__types__reference.html#g098e3611b2bc3af38b5f06838153165d">kim_count</a> *out_number_of_identities)
+<dl class="el"><dd class="mdescRight">Get the number of favorite identities in a preferences object.  <a href="#g39ff3407953fedfc861efda92f961f18"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#g3012077dfb1169ebbbf2d7bf17dbbfdf">kim_preferences_get_favorite_identity_at_index</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> in_preferences, <a class="el" href="group__kim__types__reference.html#g098e3611b2bc3af38b5f06838153165d">kim_count</a> in_index, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *out_identity, <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> *out_options)
+<dl class="el"><dd class="mdescRight">Get the Nth favorite identity in a preferences object.  <a href="#g3012077dfb1169ebbbf2d7bf17dbbfdf"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#gd7ed54017b8d46414c550a87ab775a9d">kim_preferences_add_favorite_identity</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> io_preferences, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_identity, <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options)
+<dl class="el"><dd class="mdescRight">Add a favorite identity to a preferences object.  <a href="#gd7ed54017b8d46414c550a87ab775a9d"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#g85a31ca25607660c9dc2b68527c71f52">kim_preferences_remove_favorite_identity</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> io_preferences, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_identity)
+<dl class="el"><dd class="mdescRight">Remove a favorite identity from a preferences object.  <a href="#g85a31ca25607660c9dc2b68527c71f52"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#gc28596bde36d790f569af33d50feedb8">kim_preferences_remove_all_favorite_identities</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> io_preferences)
+<dl class="el"><dd class="mdescRight">Remove all favorite identities in a preferences object.  <a href="#gc28596bde36d790f569af33d50feedb8"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__preferences__reference.html#g6815e374d78e13714abcddc478145dd9">kim_preferences_synchronize</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> in_preferences)
+<dl class="el"><dd class="mdescRight">Synchronize a preferences object with the user's preferences, writing pending changes and reading any changes applied by other processes.  <a href="#g6815e374d78e13714abcddc478145dd9"></a><br></dl><li>void <a class="el" href="group__kim__preferences__reference.html#gbc3004692a22355ac2c7d099d18b837f">kim_preferences_free</a> (<a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> *io_preferences)
+<dl class="el"><dd class="mdescRight">Free memory associated with a preferences object.  <a href="#gbc3004692a22355ac2c7d099d18b837f"></a><br></dl></ul>
 <hr><h2>Function Documentation</h2>
-<a class="anchor" name="g88fba2fb35d73c5905eb21dcfad57578"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_create" ref="g88fba2fb35d73c5905eb21dcfad57578" args="(kim_preferences_t *out_preferences)" -->
+<a class="anchor" name="gf1dc483fcb582add046d552da9b8485f"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_create" ref="gf1dc483fcb582add046d552da9b8485f" args="(kim_preferences *out_preferences)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_create           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_create           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> *&nbsp;</td>
           <td class="paramname"> <em>out_preferences</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td width="100%"></td>
@@ -54,27 +57,27 @@ Create a new preferences object from the current user's preferences.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_preferences</em>&nbsp;</td><td>on exit, a new preferences object. Must be freed with <a class="el" href="group__kim__preferences__reference.html#g4ecf102531d917a0776f563101b8056e" title="Free memory associated with a preferences object.">kim_preferences_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_preferences</em>&nbsp;</td><td>on exit, a new preferences object. Must be freed with <a class="el" href="group__kim__preferences__reference.html#gbc3004692a22355ac2c7d099d18b837f" title="Free memory associated with a preferences object.">kim_preferences_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g6075365366f37db89090cc68ad2e5a61"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_copy" ref="g6075365366f37db89090cc68ad2e5a61" args="(kim_preferences_t *out_preferences, kim_preferences_t in_preferences)" -->
+<a class="anchor" name="g58ee5520fbae5f7720a70692120de6c2"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_copy" ref="g58ee5520fbae5f7720a70692120de6c2" args="(kim_preferences *out_preferences, kim_preferences in_preferences)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_copy           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_copy           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> *&nbsp;</td>
           <td class="paramname"> <em>out_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>in_preferences</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -91,28 +94,28 @@ Copy a preferences object.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_preferences</em>&nbsp;</td><td>on exit, a new preferences object which is a copy of in_preferences. Must be freed with <a class="el" href="group__kim__preferences__reference.html#g4ecf102531d917a0776f563101b8056e" title="Free memory associated with a preferences object.">kim_preferences_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_preferences</em>&nbsp;</td><td>on exit, a new preferences object which is a copy of in_preferences. Must be freed with <a class="el" href="group__kim__preferences__reference.html#gbc3004692a22355ac2c7d099d18b837f" title="Free memory associated with a preferences object.">kim_preferences_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_preferences</em>&nbsp;</td><td>a preferences object. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="ge7f0f13dd6d50e7730205abddb1a0127"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_set_options" ref="ge7f0f13dd6d50e7730205abddb1a0127" args="(kim_preferences_t io_preferences, kim_options_t in_options)" -->
+<a class="anchor" name="gc9c1f77fcf571c575664b44267f19fc3"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_set_options" ref="gc9c1f77fcf571c575664b44267f19fc3" args="(kim_preferences io_preferences, kim_options in_options)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_set_options           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_set_options           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>io_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -133,25 +136,25 @@ Set the user's preferred options.
     <tr><td valign="top"></td><td valign="top"><em>in_options</em>&nbsp;</td><td>an options object. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g634a03cb1109362db8e4024b055afa71" title="Get the user&#39;s preferred options.">kim_preferences_get_options()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g68f6bb5bd97d85753d74e958e452560f" title="Get the user&#39;s preferred options.">kim_preferences_get_options()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g634a03cb1109362db8e4024b055afa71"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_options" ref="g634a03cb1109362db8e4024b055afa71" args="(kim_preferences_t in_preferences, kim_options_t *out_options)" -->
+<a class="anchor" name="g68f6bb5bd97d85753d74e958e452560f"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_options" ref="g68f6bb5bd97d85753d74e958e452560f" args="(kim_preferences in_preferences, kim_options *out_options)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_get_options           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_get_options           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>in_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> *&nbsp;</td>
           <td class="paramname"> <em>out_options</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -169,28 +172,28 @@ Get the user's preferred options.
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_preferences</em>&nbsp;</td><td>a preferences object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_options</em>&nbsp;</td><td>on exit, the options specified in <em>in_preferences</em>. Must be freed with <a class="el" href="group__kim__options__reference.html#g06130689189d5ba4f9e518c8ed68eb7d" title="Free memory associated with an options object.">kim_options_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_options</em>&nbsp;</td><td>on exit, the options specified in <em>in_preferences</em>. Must be freed with <a class="el" href="group__kim__options__reference.html#gd8de9ea0a4eb9e0ffb8e3056a3899f55" title="Free memory associated with an options object.">kim_options_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#ge7f0f13dd6d50e7730205abddb1a0127" title="Set the user&#39;s preferred options.">kim_preferences_set_options()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#gc9c1f77fcf571c575664b44267f19fc3" title="Set the user&#39;s preferred options.">kim_preferences_set_options()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g7e2031a5a8ef5590357b304eb943f402"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_set_remember_options" ref="g7e2031a5a8ef5590357b304eb943f402" args="(kim_preferences_t io_preferences, kim_boolean_t in_remember_options)" -->
+<a class="anchor" name="g9380ffc6ff3d440b680d3d50f8f23f7e"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_set_remember_options" ref="g9380ffc6ff3d440b680d3d50f8f23f7e" args="(kim_preferences io_preferences, kim_boolean in_remember_options)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_set_remember_options           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_set_remember_options           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>io_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a>&nbsp;</td>
           <td class="paramname"> <em>in_remember_options</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -211,25 +214,25 @@ Set whether or not to remember the last options the user used to acquire a crede
     <tr><td valign="top"></td><td valign="top"><em>in_remember_options</em>&nbsp;</td><td>a boolean value indicating whether or not to remember the last options used to acquire a credential. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g804eb8078e5b5a1c73e7e27b0efdb66d" title="Get whether or not to remember the last options the user used to acquire a credential...">kim_preferences_get_remember_options()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#ga4b2b54310c0efb6bbba284395095c0f" title="Get whether or not to remember the last options the user used to acquire a credential...">kim_preferences_get_remember_options()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g804eb8078e5b5a1c73e7e27b0efdb66d"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_remember_options" ref="g804eb8078e5b5a1c73e7e27b0efdb66d" args="(kim_preferences_t in_preferences, kim_boolean_t *out_remember_options)" -->
+<a class="anchor" name="ga4b2b54310c0efb6bbba284395095c0f"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_remember_options" ref="ga4b2b54310c0efb6bbba284395095c0f" args="(kim_preferences in_preferences, kim_boolean *out_remember_options)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_get_remember_options           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_get_remember_options           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>in_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> *&nbsp;</td>
           <td class="paramname"> <em>out_remember_options</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -250,25 +253,25 @@ Get whether or not to remember the last options the user used to acquire a crede
     <tr><td valign="top"></td><td valign="top"><em>out_remember_options</em>&nbsp;</td><td>on exit, a boolean value indicating whether or <em>in_preferences</em> will remember the last options used to acquire a credential. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g7e2031a5a8ef5590357b304eb943f402" title="Set whether or not to remember the last options the user used to acquire a credential...">kim_preferences_set_remember_options()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g9380ffc6ff3d440b680d3d50f8f23f7e" title="Set whether or not to remember the last options the user used to acquire a credential...">kim_preferences_set_remember_options()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g70806a8dfdde27746f8c161b4f845ecb"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_set_client_identity" ref="g70806a8dfdde27746f8c161b4f845ecb" args="(kim_preferences_t io_preferences, kim_identity_t in_client_identity)" -->
+<a class="anchor" name="g531087a0c7ec0e247eff326066e31b42"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_set_client_identity" ref="g531087a0c7ec0e247eff326066e31b42" args="(kim_preferences io_preferences, kim_identity in_client_identity)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_set_client_identity           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_set_client_identity           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>io_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_client_identity</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -289,25 +292,25 @@ Set the user's preferred client identity.
     <tr><td valign="top"></td><td valign="top"><em>in_client_identity</em>&nbsp;</td><td>a client identity object. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#ga7bf4c87813bee177d2485d827c59943" title="Get the user&#39;s preferred client identity.">kim_preferences_get_client_identity()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g7e8243e83781035aef702b1882114e57" title="Get the user&#39;s preferred client identity.">kim_preferences_get_client_identity()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="ga7bf4c87813bee177d2485d827c59943"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_client_identity" ref="ga7bf4c87813bee177d2485d827c59943" args="(kim_preferences_t in_preferences, kim_identity_t *out_client_identity)" -->
+<a class="anchor" name="g7e8243e83781035aef702b1882114e57"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_client_identity" ref="g7e8243e83781035aef702b1882114e57" args="(kim_preferences in_preferences, kim_identity *out_client_identity)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_get_client_identity           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_get_client_identity           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>in_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *&nbsp;</td>
           <td class="paramname"> <em>out_client_identity</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -325,28 +328,28 @@ Get the user's preferred client identity.
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_preferences</em>&nbsp;</td><td>a preferences object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_client_identity</em>&nbsp;</td><td>on exit, the client identity specified in <em>in_preferences</em>. Must be freed with <a class="el" href="group__kim__identity__reference.html#gd384198163f30b97a6a583ad871a0e23" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_client_identity</em>&nbsp;</td><td>on exit, the client identity specified in <em>in_preferences</em>. Must be freed with <a class="el" href="group__kim__identity__reference.html#g3ae8057f3eb0040330b598645d470411" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g70806a8dfdde27746f8c161b4f845ecb" title="Set the user&#39;s preferred client identity.">kim_preferences_set_client_identity()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g531087a0c7ec0e247eff326066e31b42" title="Set the user&#39;s preferred client identity.">kim_preferences_set_client_identity()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="ge8d68790339f8f11f1e017726101329a"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_set_remember_client_identity" ref="ge8d68790339f8f11f1e017726101329a" args="(kim_preferences_t io_preferences, kim_boolean_t in_remember_client_identity)" -->
+<a class="anchor" name="gc956ea12b0f9c82b94e90bfede836af4"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_set_remember_client_identity" ref="gc956ea12b0f9c82b94e90bfede836af4" args="(kim_preferences io_preferences, kim_boolean in_remember_client_identity)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_set_remember_client_identity           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_set_remember_client_identity           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>io_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a>&nbsp;</td>
           <td class="paramname"> <em>in_remember_client_identity</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -367,25 +370,25 @@ Set whether or not to remember the last client identity the user acquired a cred
     <tr><td valign="top"></td><td valign="top"><em>in_remember_client_identity</em>&nbsp;</td><td>a boolean value indicating whether or not to remember the last client identity for which a credential was acquired. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#gd24a4831e3664ae2ec69b2de2ccfca50" title="Get whether or not to remember the last client identity the user acquired a credential...">kim_preferences_get_remember_client_identity()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g9113eb1a092a9c745d9b724f7890ecb6" title="Get whether or not to remember the last client identity the user acquired a credential...">kim_preferences_get_remember_client_identity()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gd24a4831e3664ae2ec69b2de2ccfca50"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_remember_client_identity" ref="gd24a4831e3664ae2ec69b2de2ccfca50" args="(kim_preferences_t in_preferences, kim_boolean_t *out_remember_client_identity)" -->
+<a class="anchor" name="g9113eb1a092a9c745d9b724f7890ecb6"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_remember_client_identity" ref="g9113eb1a092a9c745d9b724f7890ecb6" args="(kim_preferences in_preferences, kim_boolean *out_remember_client_identity)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_get_remember_client_identity           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_get_remember_client_identity           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>in_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> *&nbsp;</td>
           <td class="paramname"> <em>out_remember_client_identity</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -406,25 +409,25 @@ Get whether or not to remember the last client identity the user acquired a cred
     <tr><td valign="top"></td><td valign="top"><em>out_remember_client_identity</em>&nbsp;</td><td>on exit, a boolean value indicating whether or <em>in_preferences</em> will remember the last client identity for which a credential was acquired. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#ge8d68790339f8f11f1e017726101329a" title="Set whether or not to remember the last client identity the user acquired a credential...">kim_preferences_set_remember_client_identity()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#gc956ea12b0f9c82b94e90bfede836af4" title="Set whether or not to remember the last client identity the user acquired a credential...">kim_preferences_set_remember_client_identity()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g2bf9498e3bf1be235871e1e7a333efe3"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_set_minimum_lifetime" ref="g2bf9498e3bf1be235871e1e7a333efe3" args="(kim_preferences_t io_preferences, kim_lifetime_t in_minimum_lifetime)" -->
+<a class="anchor" name="g1451680e39e6fba86f01f6166c62a1e0"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_set_minimum_lifetime" ref="g1451680e39e6fba86f01f6166c62a1e0" args="(kim_preferences io_preferences, kim_lifetime in_minimum_lifetime)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_set_minimum_lifetime           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_set_minimum_lifetime           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>io_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a>&nbsp;</td>
           <td class="paramname"> <em>in_minimum_lifetime</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -445,25 +448,25 @@ Set the minimum credential lifetime for GUI credential lifetime controls.
     <tr><td valign="top"></td><td valign="top"><em>in_minimum_lifetime</em>&nbsp;</td><td>a minimum lifetime indicating how small a lifetime the GUI tools should allow the user to specify for credentials. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g15f14854da23043706e21c6632cc2ccf" title="Get the minimum credential lifetime for GUI credential lifetime controls.">kim_preferences_get_minimum_lifetime()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g8da696b824d8cbf6cd97316622edd74e" title="Get the minimum credential lifetime for GUI credential lifetime controls.">kim_preferences_get_minimum_lifetime()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g15f14854da23043706e21c6632cc2ccf"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_minimum_lifetime" ref="g15f14854da23043706e21c6632cc2ccf" args="(kim_preferences_t in_preferences, kim_lifetime_t *out_minimum_lifetime)" -->
+<a class="anchor" name="g8da696b824d8cbf6cd97316622edd74e"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_minimum_lifetime" ref="g8da696b824d8cbf6cd97316622edd74e" args="(kim_preferences in_preferences, kim_lifetime *out_minimum_lifetime)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_get_minimum_lifetime           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_get_minimum_lifetime           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>in_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a> *&nbsp;</td>
           <td class="paramname"> <em>out_minimum_lifetime</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -484,25 +487,25 @@ Get the minimum credential lifetime for GUI credential lifetime controls.
     <tr><td valign="top"></td><td valign="top"><em>out_minimum_lifetime</em>&nbsp;</td><td>on exit, the minimum lifetime that GUI tools will allow the user to specify for credentials. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g2bf9498e3bf1be235871e1e7a333efe3" title="Set the minimum credential lifetime for GUI credential lifetime controls.">kim_preferences_set_minimum_lifetime()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g1451680e39e6fba86f01f6166c62a1e0" title="Set the minimum credential lifetime for GUI credential lifetime controls.">kim_preferences_set_minimum_lifetime()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g720dc58fe13d7c80ced5c618c7551923"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_set_maximum_lifetime" ref="g720dc58fe13d7c80ced5c618c7551923" args="(kim_preferences_t io_preferences, kim_lifetime_t in_maximum_lifetime)" -->
+<a class="anchor" name="gb8d2aa65276ab84de1a7ffb7ac59d749"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_set_maximum_lifetime" ref="gb8d2aa65276ab84de1a7ffb7ac59d749" args="(kim_preferences io_preferences, kim_lifetime in_maximum_lifetime)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_set_maximum_lifetime           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_set_maximum_lifetime           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>io_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a>&nbsp;</td>
           <td class="paramname"> <em>in_maximum_lifetime</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -523,25 +526,25 @@ Set the maximum credential lifetime for GUI credential lifetime controls.
     <tr><td valign="top"></td><td valign="top"><em>in_maximum_lifetime</em>&nbsp;</td><td>a maximum lifetime indicating how large a lifetime the GUI tools should allow the user to specify for credentials. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g00db50426fd382af2c161898465830b2" title="Get the maximum credential lifetime for GUI credential lifetime controls.">kim_preferences_get_maximum_lifetime()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#ge7941e46f8a5372c7b2636e3ece8438a" title="Get the maximum credential lifetime for GUI credential lifetime controls.">kim_preferences_get_maximum_lifetime()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g00db50426fd382af2c161898465830b2"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_maximum_lifetime" ref="g00db50426fd382af2c161898465830b2" args="(kim_preferences_t in_preferences, kim_lifetime_t *out_maximum_lifetime)" -->
+<a class="anchor" name="ge7941e46f8a5372c7b2636e3ece8438a"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_maximum_lifetime" ref="ge7941e46f8a5372c7b2636e3ece8438a" args="(kim_preferences in_preferences, kim_lifetime *out_maximum_lifetime)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_get_maximum_lifetime           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_get_maximum_lifetime           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>in_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a> *&nbsp;</td>
           <td class="paramname"> <em>out_maximum_lifetime</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -562,25 +565,25 @@ Get the maximum credential lifetime for GUI credential lifetime controls.
     <tr><td valign="top"></td><td valign="top"><em>out_maximum_lifetime</em>&nbsp;</td><td>on exit, the maximum lifetime that GUI tools will allow the user to specify for credentials. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g720dc58fe13d7c80ced5c618c7551923" title="Set the maximum credential lifetime for GUI credential lifetime controls.">kim_preferences_set_maximum_lifetime()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#gb8d2aa65276ab84de1a7ffb7ac59d749" title="Set the maximum credential lifetime for GUI credential lifetime controls.">kim_preferences_set_maximum_lifetime()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g2aad1731737f04c0a0fd0d9e0864420e"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_set_minimum_renewal_lifetime" ref="g2aad1731737f04c0a0fd0d9e0864420e" args="(kim_preferences_t io_preferences, kim_lifetime_t in_minimum_renewal_lifetime)" -->
+<a class="anchor" name="g578689903e4caf7d0b1c8c00cb822422"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_set_minimum_renewal_lifetime" ref="g578689903e4caf7d0b1c8c00cb822422" args="(kim_preferences io_preferences, kim_lifetime in_minimum_renewal_lifetime)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_set_minimum_renewal_lifetime           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_set_minimum_renewal_lifetime           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>io_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a>&nbsp;</td>
           <td class="paramname"> <em>in_minimum_renewal_lifetime</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -601,25 +604,25 @@ Set the minimum credential renewal lifetime for GUI credential lifetime controls
     <tr><td valign="top"></td><td valign="top"><em>in_minimum_renewal_lifetime</em>&nbsp;</td><td>a minimum lifetime indicating how small a lifetime the GUI tools should allow the user to specify for credential renewal. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g8c470e1f7a090e76a111f728a510e6fa" title="Get the minimum credential renewal lifetime for GUI credential lifetime controls...">kim_preferences_get_minimum_renewal_lifetime()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g9780ba56efd87ced3ab87f4a172d1ce8" title="Get the minimum credential renewal lifetime for GUI credential lifetime controls...">kim_preferences_get_minimum_renewal_lifetime()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g8c470e1f7a090e76a111f728a510e6fa"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_minimum_renewal_lifetime" ref="g8c470e1f7a090e76a111f728a510e6fa" args="(kim_preferences_t in_preferences, kim_lifetime_t *out_minimum_renewal_lifetime)" -->
+<a class="anchor" name="g9780ba56efd87ced3ab87f4a172d1ce8"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_minimum_renewal_lifetime" ref="g9780ba56efd87ced3ab87f4a172d1ce8" args="(kim_preferences in_preferences, kim_lifetime *out_minimum_renewal_lifetime)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_get_minimum_renewal_lifetime           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_get_minimum_renewal_lifetime           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>in_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a> *&nbsp;</td>
           <td class="paramname"> <em>out_minimum_renewal_lifetime</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -640,25 +643,25 @@ Get the minimum credential renewal lifetime for GUI credential lifetime controls
     <tr><td valign="top"></td><td valign="top"><em>out_minimum_renewal_lifetime</em>&nbsp;</td><td>on exit, the minimum lifetime that GUI tools will allow the user to specify for credential renewal. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g2aad1731737f04c0a0fd0d9e0864420e" title="Set the minimum credential renewal lifetime for GUI credential lifetime controls...">kim_preferences_set_minimum_renewal_lifetime()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g578689903e4caf7d0b1c8c00cb822422" title="Set the minimum credential renewal lifetime for GUI credential lifetime controls...">kim_preferences_set_minimum_renewal_lifetime()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g82d7aba77fed12eba63172a43eed8a06"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_set_maximum_renewal_lifetime" ref="g82d7aba77fed12eba63172a43eed8a06" args="(kim_preferences_t io_preferences, kim_lifetime_t in_maximum_renewal_lifetime)" -->
+<a class="anchor" name="g2d005064cc3b97f4dd5c4523f869a9d0"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_set_maximum_renewal_lifetime" ref="g2d005064cc3b97f4dd5c4523f869a9d0" args="(kim_preferences io_preferences, kim_lifetime in_maximum_renewal_lifetime)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_set_maximum_renewal_lifetime           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_set_maximum_renewal_lifetime           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>io_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a>&nbsp;</td>
           <td class="paramname"> <em>in_maximum_renewal_lifetime</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -679,25 +682,25 @@ Set the maximum credential renewal lifetime for GUI credential lifetime controls
     <tr><td valign="top"></td><td valign="top"><em>in_maximum_renewal_lifetime</em>&nbsp;</td><td>a maximum lifetime indicating how large a lifetime the GUI tools should allow the user to specify for credential renewal. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g8c470e1f7a090e76a111f728a510e6fa" title="Get the minimum credential renewal lifetime for GUI credential lifetime controls...">kim_preferences_get_minimum_renewal_lifetime()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g9780ba56efd87ced3ab87f4a172d1ce8" title="Get the minimum credential renewal lifetime for GUI credential lifetime controls...">kim_preferences_get_minimum_renewal_lifetime()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g9ae6e44298b639894e21a57eef26d93b"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_maximum_renewal_lifetime" ref="g9ae6e44298b639894e21a57eef26d93b" args="(kim_preferences_t in_preferences, kim_lifetime_t *out_maximum_renewal_lifetime)" -->
+<a class="anchor" name="gfd67441a6a6d7063973aac6324bb1577"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_maximum_renewal_lifetime" ref="gfd67441a6a6d7063973aac6324bb1577" args="(kim_preferences in_preferences, kim_lifetime *out_maximum_renewal_lifetime)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_get_maximum_renewal_lifetime           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_get_maximum_renewal_lifetime           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>in_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a> *&nbsp;</td>
           <td class="paramname"> <em>out_maximum_renewal_lifetime</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -718,26 +721,26 @@ Get the maximum credential renewal lifetime for GUI credential lifetime controls
     <tr><td valign="top"></td><td valign="top"><em>out_maximum_renewal_lifetime</em>&nbsp;</td><td>on exit, the maximum lifetime that GUI tools will allow the user to specify for credential renewal. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g2aad1731737f04c0a0fd0d9e0864420e" title="Set the minimum credential renewal lifetime for GUI credential lifetime controls...">kim_preferences_set_minimum_renewal_lifetime()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g578689903e4caf7d0b1c8c00cb822422" title="Set the minimum credential renewal lifetime for GUI credential lifetime controls...">kim_preferences_set_minimum_renewal_lifetime()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g2c0ee43f07affdeeec76624777e662d7"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_set_favorite_identities" ref="g2c0ee43f07affdeeec76624777e662d7" args="(kim_preferences_t io_preferences, kim_favorite_identities_t in_favorite_identities)" -->
+<a class="anchor" name="g39ff3407953fedfc861efda92f961f18"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_number_of_favorite_identities" ref="g39ff3407953fedfc861efda92f961f18" args="(kim_preferences in_preferences, kim_count *out_number_of_identities)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_set_favorite_identities           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_get_number_of_favorite_identities           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
-          <td class="paramname"> <em>io_preferences</em>, </td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
+          <td class="paramname"> <em>in_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g732f9e24fe1281aa42ffa2b078a53282">kim_favorite_identities_t</a>&nbsp;</td>
-          <td class="paramname"> <em>in_favorite_identities</em></td><td>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g098e3611b2bc3af38b5f06838153165d">kim_count</a> *&nbsp;</td>
+          <td class="paramname"> <em>out_number_of_identities</em></td><td>&nbsp;</td>
         </tr>
         <tr>
           <td></td>
@@ -749,34 +752,45 @@ Get the maximum credential renewal lifetime for GUI credential lifetime controls
 <div class="memdoc">
 
 <p>
-Set the user's preferred list of identities
+Get the number of favorite identities in a preferences object
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>io_preferences</em>&nbsp;</td><td>a preferences object to modify. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>in_favorite_identities</em>&nbsp;</td><td>a favorite identities object. See <a class="el" href="kim_favorite_identities_overview.html">KIM Favorite Identities Overview</a> for more information on KIM Favorite Identities. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>in_preferences</em>&nbsp;</td><td>a preferences object. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_number_of_identities</em>&nbsp;</td><td>on exit, the number of identities in <em>in_preferences</em>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g4ce6a3e2d6b92eb335e7110bf43ef1ab" title="Get the user&#39;s preferred list of identities.">kim_preferences_get_favorite_identities()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g4ce6a3e2d6b92eb335e7110bf43ef1ab"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_favorite_identities" ref="g4ce6a3e2d6b92eb335e7110bf43ef1ab" args="(kim_preferences_t in_preferences, kim_favorite_identities_t *out_favorite_identities)" -->
+<a class="anchor" name="g3012077dfb1169ebbbf2d7bf17dbbfdf"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_get_favorite_identity_at_index" ref="g3012077dfb1169ebbbf2d7bf17dbbfdf" args="(kim_preferences in_preferences, kim_count in_index, kim_identity *out_identity, kim_options *out_options)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_get_favorite_identities           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_get_favorite_identity_at_index           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>in_preferences</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g732f9e24fe1281aa42ffa2b078a53282">kim_favorite_identities_t</a> *&nbsp;</td>
-          <td class="paramname"> <em>out_favorite_identities</em></td><td>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g098e3611b2bc3af38b5f06838153165d">kim_count</a>&nbsp;</td>
+          <td class="paramname"> <em>in_index</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *&nbsp;</td>
+          <td class="paramname"> <em>out_identity</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> *&nbsp;</td>
+          <td class="paramname"> <em>out_options</em></td><td>&nbsp;</td>
         </tr>
         <tr>
           <td></td>
@@ -788,27 +802,139 @@ Set the user's preferred list of identities.
 <div class="memdoc">
 
 <p>
-Get the user's preferred list of identities
+Get the Nth favorite identity in a preferences object
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>in_preferences</em>&nbsp;</td><td>a preferences object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_favorite_identities</em>&nbsp;</td><td>on exit, a copy of the favorite identities specified in <em>in_preferences</em>. See <a class="el" href="kim_favorite_identities_overview.html">KIM Favorite Identities Overview</a> for more information on KIM Favorite Identities. Must be freed with <a class="el" href="group__kim__favorite__identities__reference.html#gd4f899dee1067c58f349c6474300c533" title="Free memory associated with an identities list.">kim_favorite_identities_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>kim_preferences</em>&nbsp;</td><td>a preferences object. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>in_index</em>&nbsp;</td><td>a index into the identities list (starting at 0). </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_identity</em>&nbsp;</td><td>on exit, the identity at <em>in_index</em> in <em>in_preferences</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#g7e7207329022e97473ec71574e52a1fc" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_options</em>&nbsp;</td><td>on exit, the options associated with identity at <em>in_index</em> in <em>in_favorite_identities</em>. May be KIM_OPTIONS_DEFAULT. Pass NULL if you do not want the options associated with the identity. Must be freed with <a class="el" href="group__kim__options__reference.html#gd8de9ea0a4eb9e0ffb8e3056a3899f55" title="Free memory associated with an options object.">kim_options_free()</a>. </td></tr>
+  </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="gd7ed54017b8d46414c550a87ab775a9d"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_add_favorite_identity" ref="gd7ed54017b8d46414c550a87ab775a9d" args="(kim_preferences io_preferences, kim_identity in_identity, kim_options in_options)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_add_favorite_identity           </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
+          <td class="paramname"> <em>io_preferences</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
+          <td class="paramname"> <em>in_identity</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
+          <td class="paramname"> <em>in_options</em></td><td>&nbsp;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td><td width="100%"></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+Add a favorite identity to a preferences object. 
+<p>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>io_preferences</em>&nbsp;</td><td>a preferences object. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>in_identity</em>&nbsp;</td><td>an identity to add to <em>io_preferences</em>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>in_options</em>&nbsp;</td><td>options which will be associated with that identity. Use KIM_OPTIONS_DEFAULT if the identity should use the user's default options. </td></tr>
+  </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="g85a31ca25607660c9dc2b68527c71f52"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_remove_favorite_identity" ref="g85a31ca25607660c9dc2b68527c71f52" args="(kim_preferences io_preferences, kim_identity in_identity)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_remove_favorite_identity           </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
+          <td class="paramname"> <em>io_preferences</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
+          <td class="paramname"> <em>in_identity</em></td><td>&nbsp;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td><td width="100%"></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+Remove a favorite identity from a preferences object. 
+<p>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>io_preferences</em>&nbsp;</td><td>a preferences object. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>in_identity</em>&nbsp;</td><td>an identity to remove from <em>io_preferences</em>. </td></tr>
+  </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="gc28596bde36d790f569af33d50feedb8"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_remove_all_favorite_identities" ref="gc28596bde36d790f569af33d50feedb8" args="(kim_preferences io_preferences)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_remove_all_favorite_identities           </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
+          <td class="paramname"> <em>io_preferences</em>          </td>
+          <td>&nbsp;)&nbsp;</td>
+          <td width="100%"></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+Remove all favorite identities in a preferences object. 
+<p>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>io_preferences</em>&nbsp;</td><td>a preferences object. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__preferences__reference.html#g2c0ee43f07affdeeec76624777e662d7" title="Set the user&#39;s preferred list of identities.">kim_preferences_set_favorite_identities()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gd4548bdc2cd52ad21d7a3e1bb60edba0"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_synchronize" ref="gd4548bdc2cd52ad21d7a3e1bb60edba0" args="(kim_preferences_t in_preferences)" -->
+<a class="anchor" name="g6815e374d78e13714abcddc478145dd9"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_synchronize" ref="g6815e374d78e13714abcddc478145dd9" args="(kim_preferences in_preferences)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_preferences_synchronize           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_preferences_synchronize           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>&nbsp;</td>
           <td class="paramname"> <em>in_preferences</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td width="100%"></td>
@@ -825,18 +951,18 @@ Synchronize a preferences object with the user's preferences, writing pending ch
     <tr><td valign="top"></td><td valign="top"><em>in_preferences</em>&nbsp;</td><td>a preferences object. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g4ecf102531d917a0776f563101b8056e"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_free" ref="g4ecf102531d917a0776f563101b8056e" args="(kim_preferences_t *io_preferences)" -->
+<a class="anchor" name="gbc3004692a22355ac2c7d099d18b837f"></a><!-- doxytag: member="kim_preferences.h::kim_preferences_free" ref="gbc3004692a22355ac2c7d099d18b837f" args="(kim_preferences *io_preferences)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void kim_preferences_free           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a> *&nbsp;</td>
           <td class="paramname"> <em>io_preferences</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td width="100%"></td>
@@ -856,7 +982,7 @@ Free memory associated with a preferences object.
 
 </div>
 </div><p>
-<hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:20 2008 for Kerberos Identity Management by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index 85d5c15ab59a3a4c860b0adbe17a75802d266532..4676c7a4fb4e509049f5da0a2feb7d5b2eeadb27 100644 (file)
@@ -7,52 +7,57 @@
 <!-- Generated by Doxygen 1.5.3 -->
 <h1>KIM Selection Hints Reference Documentation</h1>
 <p>
+<h2>Defines</h2>
+<ul>
+<li><a class="anchor" name="g56c0b2760fef0565b0fe955164171ea9"></a><!-- doxytag: member="kim_selection_hints_reference::kim_hint_key_client_realm" ref="g56c0b2760fef0565b0fe955164171ea9" args="" -->
+#define <b>kim_hint_key_client_realm</b>&nbsp;&nbsp;&nbsp;&quot;kim_hint_key_client_realm&quot;
+<li><a class="anchor" name="g41fb9619b728af091ef298e1d4a085ed"></a><!-- doxytag: member="kim_selection_hints_reference::kim_hint_key_user" ref="g41fb9619b728af091ef298e1d4a085ed" args="" -->
+#define <b>kim_hint_key_user</b>&nbsp;&nbsp;&nbsp;&quot;kim_hint_key_user&quot;
+<li><a class="anchor" name="g71c0a4d5ca46193689deda51878fc6a9"></a><!-- doxytag: member="kim_selection_hints_reference::kim_hint_key_service_realm" ref="g71c0a4d5ca46193689deda51878fc6a9" args="" -->
+#define <b>kim_hint_key_service_realm</b>&nbsp;&nbsp;&nbsp;&quot;kim_hint_key_service_realm&quot;
+<li><a class="anchor" name="g60bccf17408f6026cd07106b14bd8231"></a><!-- doxytag: member="kim_selection_hints_reference::kim_hint_key_service" ref="g60bccf17408f6026cd07106b14bd8231" args="" -->
+#define <b>kim_hint_key_service</b>&nbsp;&nbsp;&nbsp;&quot;kim_hint_key_service&quot;
+<li><a class="anchor" name="g6e2d527be39beced1739b092362a1e9b"></a><!-- doxytag: member="kim_selection_hints_reference::kim_hint_key_server" ref="g6e2d527be39beced1739b092362a1e9b" args="" -->
+#define <b>kim_hint_key_server</b>&nbsp;&nbsp;&nbsp;&quot;kim_hint_key_server&quot;
+<li><a class="anchor" name="g616972df29e427085479c0c94133916e"></a><!-- doxytag: member="kim_selection_hints_reference::kim_hint_key_service_identity" ref="g616972df29e427085479c0c94133916e" args="" -->
+#define <b>kim_hint_key_service_identity</b>&nbsp;&nbsp;&nbsp;&quot;kim_hint_key_service_identity&quot;
+</ul>
 <h2>Functions</h2>
 <ul>
-<li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#g0b195d5d3baddbb484e4567f395925ea">kim_selection_hints_create</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> *out_selection_hints, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_application_identifier)
-<dl class="el"><dd class="mdescRight">Create a new selection hints object.  <a href="#g0b195d5d3baddbb484e4567f395925ea"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#g3c34975ee97977570750ba4119d34596">kim_selection_hints_copy</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> *out_selection_hints, <a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> in_selection_hints)
-<dl class="el"><dd class="mdescRight">Copy a selection hints object.  <a href="#g3c34975ee97977570750ba4119d34596"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#gf47d0fc0c2839b591f7a2d293b855b71">kim_selection_hints_set_service_identity_hint</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> io_selection_hints, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_service_identity)
-<dl class="el"><dd class="mdescRight">Set the preferred service identity.  <a href="#gf47d0fc0c2839b591f7a2d293b855b71"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#g5e325333676f018a0307ea17d4dd8ce3">kim_selection_hints_get_service_identity_hint</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *out_service_identity)
-<dl class="el"><dd class="mdescRight">Get the preferred service identity.  <a href="#g5e325333676f018a0307ea17d4dd8ce3"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#g2ec700fa0ad48325aa13ddbb364ed77a">kim_selection_hints_set_client_realm_hint</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> io_selection_hints, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_client_realm)
-<dl class="el"><dd class="mdescRight">Set the preferred client realm.  <a href="#g2ec700fa0ad48325aa13ddbb364ed77a"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#gd1160cac39595eb42910243d04b7671d">kim_selection_hints_get_client_realm_hint</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *out_client_realm)
-<dl class="el"><dd class="mdescRight">Get the preferred client realm.  <a href="#gd1160cac39595eb42910243d04b7671d"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#gde9c9783d58df11d82357a92528e6c93">kim_selection_hints_set_user_hint</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> io_selection_hints, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_user)
-<dl class="el"><dd class="mdescRight">Set the preferred user name.  <a href="#gde9c9783d58df11d82357a92528e6c93"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#g075d83c9ad061c4ac1e14ae62b4ee861">kim_selection_hints_get_user_hint</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *out_user)
-<dl class="el"><dd class="mdescRight">Get the preferred user name.  <a href="#g075d83c9ad061c4ac1e14ae62b4ee861"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#g542c7209995052067bdbaeafacef3040">kim_selection_hints_set_service_realm_hint</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> io_selection_hints, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_service_realm)
-<dl class="el"><dd class="mdescRight">Set the preferred service realm.  <a href="#g542c7209995052067bdbaeafacef3040"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#g7a505335f3f8252272852e1d2dc2f993">kim_selection_hints_get_service_realm_hint</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> io_selection_hints, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *out_service_realm)
-<dl class="el"><dd class="mdescRight">Get the preferred service realm.  <a href="#g7a505335f3f8252272852e1d2dc2f993"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#gca90aa48104604534b4a9381b9dc2b66">kim_selection_hints_set_service_hint</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> io_selection_hints, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_service)
-<dl class="el"><dd class="mdescRight">Set the preferred service name.  <a href="#gca90aa48104604534b4a9381b9dc2b66"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#g5a962a3a53751cd28d73cd024d50bcb5">kim_selection_hints_get_service_hint</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *out_service)
-<dl class="el"><dd class="mdescRight">Get the preferred service name.  <a href="#g5a962a3a53751cd28d73cd024d50bcb5"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#g63db6ce28b437e5293e37a67d652abde">kim_selection_hints_set_server_hint</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> io_selection_hints, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_server)
-<dl class="el"><dd class="mdescRight">Set the preferred server host name.  <a href="#g63db6ce28b437e5293e37a67d652abde"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#ga1b90972456ac24454df3c569a6b8d70">kim_selection_hints_get_server_hint</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *out_server)
-<dl class="el"><dd class="mdescRight">Get the preferred server host name.  <a href="#ga1b90972456ac24454df3c569a6b8d70"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#g9904e1b83a1082fbb0752853b3c6ece0">kim_selection_hints_set_application_name</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> io_selection_hints, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_application_name)
-<dl class="el"><dd class="mdescRight">Set the application name for use in user interaction.  <a href="#g9904e1b83a1082fbb0752853b3c6ece0"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#ge254849dd3bf81a295e1e9054220002b">kim_selection_hints_get_application_name</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *out_application_name)
-<dl class="el"><dd class="mdescRight">Get the application name for use in user interaction.  <a href="#ge254849dd3bf81a295e1e9054220002b"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#gdde1a442f7ab9913eed7855f06575f92">kim_selection_hints_set_explanation</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> io_selection_hints, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_explanation)
-<dl class="el"><dd class="mdescRight">Set the strings used to prompt the user to select the identity.  <a href="#gdde1a442f7ab9913eed7855f06575f92"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#gca2b7379231b656f6ee2df551bb7972e">kim_selection_hints_get_explanation</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *out_explanation)
-<dl class="el"><dd class="mdescRight">Get the strings used to prompt the user to select the identity.  <a href="#gca2b7379231b656f6ee2df551bb7972e"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#gae79cd94d2184c8ffe4c7144205fd813">kim_selection_hints_set_options</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> io_selection_hints, <a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> in_options)
-<dl class="el"><dd class="mdescRight">Set the options which will be used if credentials need to be acquired.  <a href="#gae79cd94d2184c8ffe4c7144205fd813"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#ge00f6f57e9d24d2e62694d72d43148a4">kim_selection_hints_get_options</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *out_options)
-<dl class="el"><dd class="mdescRight">Get the options which will be used if credentials need to be acquired.  <a href="#ge00f6f57e9d24d2e62694d72d43148a4"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#g8a4f9300250b27fec9b0da4b52f0a781">kim_selection_hints_set_allow_user_interaction</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> in_allow_user_interaction)
-<dl class="el"><dd class="mdescRight">Set whether or not KIM may interact with the user to select an identity.  <a href="#g8a4f9300250b27fec9b0da4b52f0a781"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#g255a01cf3f1e31390b213a802f8b27b4">kim_selection_hints_get_allow_user_interaction</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> *out_allow_user_interaction)
-<dl class="el"><dd class="mdescRight">Get whether or not KIM may interact with the user to select an identity.  <a href="#g255a01cf3f1e31390b213a802f8b27b4"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#gd5cf3d5ca0c2d902dbecd07d145631d8">kim_selection_hints_set_remember_identity</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> in_remember_identity)
-<dl class="el"><dd class="mdescRight">Set whether or not KIM will use cached mappings for this selection hints object.  <a href="#gd5cf3d5ca0c2d902dbecd07d145631d8"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#gd48667d06fc020680d8def99100dcdc5">kim_selection_hints_get_remember_identity</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> *out_remember_identity)
-<dl class="el"><dd class="mdescRight">Get whether or not KIM will use cache mappings for this selection hints object.  <a href="#gd48667d06fc020680d8def99100dcdc5"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#g4c18a97d53150f0b3536e52ab884973d">kim_selection_hints_get_identity</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *out_identity)
-<dl class="el"><dd class="mdescRight">Choose a client identity based on selection hints.  <a href="#g4c18a97d53150f0b3536e52ab884973d"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#ga35356161afa853700734a73ad9e027b">kim_selection_hints_remember_identity</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> in_identity)
-<dl class="el"><dd class="mdescRight">Add an entry for the selection hints to the selection hints cache, replacing any existing entry.  <a href="#ga35356161afa853700734a73ad9e027b"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__selection__hints__reference.html#g4550fb53331ba7424853bde07834aa76">kim_selection_hints_forget_identity</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> in_selection_hints)
-<dl class="el"><dd class="mdescRight">Remove an entry for the selection hints from the selection hints cache.  <a href="#g4550fb53331ba7424853bde07834aa76"></a><br></dl><li>void <a class="el" href="group__kim__selection__hints__reference.html#g8221dcbf6d972150252707a8d52ad5e5">kim_selection_hints_free</a> (<a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> *io_selection_hints)
-<dl class="el"><dd class="mdescRight">Free memory associated with a selection hints object.  <a href="#g8221dcbf6d972150252707a8d52ad5e5"></a><br></dl></ul>
+<li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__selection__hints__reference.html#g261c1e59de5576e3782e7d45bc9a8bac">kim_selection_hints_create</a> (<a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> *out_selection_hints, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_application_identifier)
+<dl class="el"><dd class="mdescRight">Create a new selection hints object.  <a href="#g261c1e59de5576e3782e7d45bc9a8bac"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__selection__hints__reference.html#g879d7f73cd4644a9f5a9693acea55e02">kim_selection_hints_copy</a> (<a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> *out_selection_hints, <a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> in_selection_hints)
+<dl class="el"><dd class="mdescRight">Copy a selection hints object.  <a href="#g879d7f73cd4644a9f5a9693acea55e02"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__selection__hints__reference.html#gf9b194c40cd569bfe6b37b7f54fc5ed8">kim_selection_hints_set_hint</a> (<a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> io_selection_hints, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_hint_key, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_hint_string)
+<dl class="el"><dd class="mdescRight">Set the string value of a hint used for identity selection.  <a href="#gf9b194c40cd569bfe6b37b7f54fc5ed8"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__selection__hints__reference.html#g6dbcdbaae154f490ae313d30f7fc51b3">kim_selection_hints_get_hint</a> (<a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_hint_key, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *out_hint_string)
+<dl class="el"><dd class="mdescRight">Get the string value of a hint used for identity selection.  <a href="#g6dbcdbaae154f490ae313d30f7fc51b3"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__selection__hints__reference.html#g8fe2f3a8723cacff9241d81a71f4532f">kim_selection_hints_set_application_name</a> (<a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> io_selection_hints, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_application_name)
+<dl class="el"><dd class="mdescRight">Set the application name for use in user interaction.  <a href="#g8fe2f3a8723cacff9241d81a71f4532f"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__selection__hints__reference.html#g21e88d5a8168ec7f7023faf171adb621">kim_selection_hints_get_application_name</a> (<a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *out_application_name)
+<dl class="el"><dd class="mdescRight">Get the application name for use in user interaction.  <a href="#g21e88d5a8168ec7f7023faf171adb621"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__selection__hints__reference.html#gcc6ec35aa53cad7a2eca07ceea66a3c6">kim_selection_hints_set_explanation</a> (<a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> io_selection_hints, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_explanation)
+<dl class="el"><dd class="mdescRight">Set the strings used to prompt the user to select the identity.  <a href="#gcc6ec35aa53cad7a2eca07ceea66a3c6"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__selection__hints__reference.html#g8fce520fbadcdd10f8928fbea43083ee">kim_selection_hints_get_explanation</a> (<a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *out_explanation)
+<dl class="el"><dd class="mdescRight">Get the strings used to prompt the user to select the identity.  <a href="#g8fce520fbadcdd10f8928fbea43083ee"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__selection__hints__reference.html#g2cbc1a52c6fa4c94aa85acf7abb205c4">kim_selection_hints_set_options</a> (<a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> io_selection_hints, <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> in_options)
+<dl class="el"><dd class="mdescRight">Set the options which will be used if credentials need to be acquired.  <a href="#g2cbc1a52c6fa4c94aa85acf7abb205c4"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__selection__hints__reference.html#gb8c6aea4ac6b55d77585a5f3047dd3e7">kim_selection_hints_get_options</a> (<a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> *out_options)
+<dl class="el"><dd class="mdescRight">Get the options which will be used if credentials need to be acquired.  <a href="#gb8c6aea4ac6b55d77585a5f3047dd3e7"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__selection__hints__reference.html#g290210bc1cb57b49539cc7f8c0d8fa2c">kim_selection_hints_set_allow_user_interaction</a> (<a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> in_allow_user_interaction)
+<dl class="el"><dd class="mdescRight">Set whether or not KIM may interact with the user to select an identity.  <a href="#g290210bc1cb57b49539cc7f8c0d8fa2c"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__selection__hints__reference.html#g95691183f6a85b8208858bd948a64c55">kim_selection_hints_get_allow_user_interaction</a> (<a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> *out_allow_user_interaction)
+<dl class="el"><dd class="mdescRight">Get whether or not KIM may interact with the user to select an identity.  <a href="#g95691183f6a85b8208858bd948a64c55"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__selection__hints__reference.html#ga036cbd405130142b460191dc5bf2c37">kim_selection_hints_set_remember_identity</a> (<a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> in_remember_identity)
+<dl class="el"><dd class="mdescRight">Set whether or not KIM will use cached mappings for this selection hints object.  <a href="#ga036cbd405130142b460191dc5bf2c37"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__selection__hints__reference.html#g773b762d39714428667bcea3aa490638">kim_selection_hints_get_remember_identity</a> (<a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> *out_remember_identity)
+<dl class="el"><dd class="mdescRight">Get whether or not KIM will use cache mappings for this selection hints object.  <a href="#g773b762d39714428667bcea3aa490638"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__selection__hints__reference.html#g5f4130fa05e937b749d7cc5347531abe">kim_selection_hints_get_identity</a> (<a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *out_identity)
+<dl class="el"><dd class="mdescRight">Choose a client identity based on selection hints.  <a href="#g5f4130fa05e937b749d7cc5347531abe"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__selection__hints__reference.html#ge33ab4dcf213c7fcb43eea3f35aeef09">kim_selection_hints_remember_identity</a> (<a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> in_selection_hints, <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> in_identity)
+<dl class="el"><dd class="mdescRight">Add an entry for the selection hints to the selection hints cache, replacing any existing entry.  <a href="#ge33ab4dcf213c7fcb43eea3f35aeef09"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__selection__hints__reference.html#g8bc79c133df171182813ca2a8773d19c">kim_selection_hints_forget_identity</a> (<a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> in_selection_hints)
+<dl class="el"><dd class="mdescRight">Remove an entry for the selection hints from the selection hints cache.  <a href="#g8bc79c133df171182813ca2a8773d19c"></a><br></dl><li>void <a class="el" href="group__kim__selection__hints__reference.html#gb8e8fb20d4726f293d6185c11c78b0aa">kim_selection_hints_free</a> (<a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> *io_selection_hints)
+<dl class="el"><dd class="mdescRight">Free memory associated with a selection hints object.  <a href="#gb8e8fb20d4726f293d6185c11c78b0aa"></a><br></dl></ul>
 <hr><h2>Function Documentation</h2>
-<a class="anchor" name="g0b195d5d3baddbb484e4567f395925ea"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_create" ref="g0b195d5d3baddbb484e4567f395925ea" args="(kim_selection_hints_t *out_selection_hints, kim_string_t in_application_identifier)" -->
+<a class="anchor" name="g261c1e59de5576e3782e7d45bc9a8bac"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_create" ref="g261c1e59de5576e3782e7d45bc9a8bac" args="(kim_selection_hints *out_selection_hints, kim_string in_application_identifier)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_create           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_selection_hints_create           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> *&nbsp;</td>
           <td class="paramname"> <em>out_selection_hints</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_application_identifier</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -69,28 +74,28 @@ Create a new selection hints object.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_selection_hints</em>&nbsp;</td><td>on exit, a new selection hints object. Must be freed with <a class="el" href="group__kim__selection__hints__reference.html#g8221dcbf6d972150252707a8d52ad5e5" title="Free memory associated with a selection hints object.">kim_selection_hints_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_selection_hints</em>&nbsp;</td><td>on exit, a new selection hints object. Must be freed with <a class="el" href="group__kim__selection__hints__reference.html#gb8e8fb20d4726f293d6185c11c78b0aa" title="Free memory associated with a selection hints object.">kim_selection_hints_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_application_identifier</em>&nbsp;</td><td>an application identifier string. Java-style identifiers are recommended to avoid cache entry collisions (eg: "com.example.MyApplication") </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g3c34975ee97977570750ba4119d34596"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_copy" ref="g3c34975ee97977570750ba4119d34596" args="(kim_selection_hints_t *out_selection_hints, kim_selection_hints_t in_selection_hints)" -->
+<a class="anchor" name="g879d7f73cd4644a9f5a9693acea55e02"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_copy" ref="g879d7f73cd4644a9f5a9693acea55e02" args="(kim_selection_hints *out_selection_hints, kim_selection_hints in_selection_hints)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_copy           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_selection_hints_copy           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> *&nbsp;</td>
           <td class="paramname"> <em>out_selection_hints</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a>&nbsp;</td>
           <td class="paramname"> <em>in_selection_hints</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -107,341 +112,35 @@ Copy a selection hints object.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_selection_hints</em>&nbsp;</td><td>on exit, a new selection hints object which is a copy of in_selection_hints. Must be freed with <a class="el" href="group__kim__selection__hints__reference.html#g8221dcbf6d972150252707a8d52ad5e5" title="Free memory associated with a selection hints object.">kim_selection_hints_free()</a>. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>in_selection_hints</em>&nbsp;</td><td>a selection hints object. </td></tr>
-  </table>
-</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="gf47d0fc0c2839b591f7a2d293b855b71"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_set_service_identity_hint" ref="gf47d0fc0c2839b591f7a2d293b855b71" args="(kim_selection_hints_t io_selection_hints, kim_identity_t in_service_identity)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_set_service_identity_hint           </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
-          <td class="paramname"> <em>io_selection_hints</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
-          <td class="paramname"> <em>in_service_identity</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the preferred service identity. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>io_selection_hints</em>&nbsp;</td><td>a selection hints object to modify. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>in_service_identity</em>&nbsp;</td><td>a service identity. </td></tr>
-  </table>
-</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g5e325333676f018a0307ea17d4dd8ce3" title="Get the preferred service identity.">kim_selection_hints_get_service_identity_hint()</a> </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="g5e325333676f018a0307ea17d4dd8ce3"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_service_identity_hint" ref="g5e325333676f018a0307ea17d4dd8ce3" args="(kim_selection_hints_t in_selection_hints, kim_identity_t *out_service_identity)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_get_service_identity_hint           </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
-          <td class="paramname"> <em>in_selection_hints</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *&nbsp;</td>
-          <td class="paramname"> <em>out_service_identity</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Get the preferred service identity. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>in_selection_hints</em>&nbsp;</td><td>a selection hints object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_service_identity</em>&nbsp;</td><td>on exit, the service identity specified in <em>in_selection_hints</em>. Must be freed with <a class="el" href="group__kim__identity__reference.html#gd384198163f30b97a6a583ad871a0e23" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
-  </table>
-</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#gf47d0fc0c2839b591f7a2d293b855b71" title="Set the preferred service identity.">kim_selection_hints_set_service_identity_hint()</a> </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="g2ec700fa0ad48325aa13ddbb364ed77a"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_set_client_realm_hint" ref="g2ec700fa0ad48325aa13ddbb364ed77a" args="(kim_selection_hints_t io_selection_hints, kim_string_t in_client_realm)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_set_client_realm_hint           </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
-          <td class="paramname"> <em>io_selection_hints</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
-          <td class="paramname"> <em>in_client_realm</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the preferred client realm. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>io_selection_hints</em>&nbsp;</td><td>a selection hints object to modify. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>in_client_realm</em>&nbsp;</td><td>a client realm string. </td></tr>
-  </table>
-</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#gd1160cac39595eb42910243d04b7671d" title="Get the preferred client realm.">kim_selection_hints_get_client_realm_hint()</a> </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="gd1160cac39595eb42910243d04b7671d"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_client_realm_hint" ref="gd1160cac39595eb42910243d04b7671d" args="(kim_selection_hints_t in_selection_hints, kim_string_t *out_client_realm)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_get_client_realm_hint           </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
-          <td class="paramname"> <em>in_selection_hints</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *&nbsp;</td>
-          <td class="paramname"> <em>out_client_realm</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Get the preferred client realm. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>in_selection_hints</em>&nbsp;</td><td>a selection hints object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_client_realm</em>&nbsp;</td><td>on exit, the client realm string specified in <em>in_selection_hints</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#ga3e9ac5bcab38b089adfeebd8ba56ded" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
-  </table>
-</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g2ec700fa0ad48325aa13ddbb364ed77a" title="Set the preferred client realm.">kim_selection_hints_set_client_realm_hint()</a> </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="gde9c9783d58df11d82357a92528e6c93"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_set_user_hint" ref="gde9c9783d58df11d82357a92528e6c93" args="(kim_selection_hints_t io_selection_hints, kim_string_t in_user)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_set_user_hint           </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
-          <td class="paramname"> <em>io_selection_hints</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
-          <td class="paramname"> <em>in_user</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the preferred user name. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>io_selection_hints</em>&nbsp;</td><td>a selection hints object to modify. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>in_user</em>&nbsp;</td><td>a user name string. </td></tr>
-  </table>
-</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g075d83c9ad061c4ac1e14ae62b4ee861" title="Get the preferred user name.">kim_selection_hints_get_user_hint()</a> </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="g075d83c9ad061c4ac1e14ae62b4ee861"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_user_hint" ref="g075d83c9ad061c4ac1e14ae62b4ee861" args="(kim_selection_hints_t in_selection_hints, kim_string_t *out_user)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_get_user_hint           </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
-          <td class="paramname"> <em>in_selection_hints</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *&nbsp;</td>
-          <td class="paramname"> <em>out_user</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Get the preferred user name. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>out_selection_hints</em>&nbsp;</td><td>on exit, a new selection hints object which is a copy of in_selection_hints. Must be freed with <a class="el" href="group__kim__selection__hints__reference.html#gb8e8fb20d4726f293d6185c11c78b0aa" title="Free memory associated with a selection hints object.">kim_selection_hints_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_selection_hints</em>&nbsp;</td><td>a selection hints object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_user</em>&nbsp;</td><td>on exit, the user name string specified in <em>in_selection_hints</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#ga3e9ac5bcab38b089adfeebd8ba56ded" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#gde9c9783d58df11d82357a92528e6c93" title="Set the preferred user name.">kim_selection_hints_set_user_hint()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g542c7209995052067bdbaeafacef3040"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_set_service_realm_hint" ref="g542c7209995052067bdbaeafacef3040" args="(kim_selection_hints_t io_selection_hints, kim_string_t in_service_realm)" -->
+<a class="anchor" name="gf9b194c40cd569bfe6b37b7f54fc5ed8"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_set_hint" ref="gf9b194c40cd569bfe6b37b7f54fc5ed8" args="(kim_selection_hints io_selection_hints, kim_string in_hint_key, kim_string in_hint_string)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_set_service_realm_hint           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_selection_hints_set_hint           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a>&nbsp;</td>
           <td class="paramname"> <em>io_selection_hints</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
-          <td class="paramname"> <em>in_service_realm</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the preferred service realm. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>io_selection_hints</em>&nbsp;</td><td>a selection hints object to modify. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>in_service_realm</em>&nbsp;</td><td>a service realm string. </td></tr>
-  </table>
-</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g7a505335f3f8252272852e1d2dc2f993" title="Get the preferred service realm.">kim_selection_hints_get_service_realm_hint()</a> </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="g7a505335f3f8252272852e1d2dc2f993"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_service_realm_hint" ref="g7a505335f3f8252272852e1d2dc2f993" args="(kim_selection_hints_t io_selection_hints, kim_string_t *out_service_realm)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_get_service_realm_hint           </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
-          <td class="paramname"> <em>io_selection_hints</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *&nbsp;</td>
-          <td class="paramname"> <em>out_service_realm</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Get the preferred service realm. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>io_selection_hints</em>&nbsp;</td><td>a selection hints object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_service_realm</em>&nbsp;</td><td>on exit, the service realm string specified in <em>in_selection_hints</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#ga3e9ac5bcab38b089adfeebd8ba56ded" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
-  </table>
-</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g542c7209995052067bdbaeafacef3040" title="Set the preferred service realm.">kim_selection_hints_set_service_realm_hint()</a> </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="gca90aa48104604534b4a9381b9dc2b66"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_set_service_hint" ref="gca90aa48104604534b4a9381b9dc2b66" args="(kim_selection_hints_t io_selection_hints, kim_string_t in_service)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_set_service_hint           </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
-          <td class="paramname"> <em>io_selection_hints</em>, </td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
+          <td class="paramname"> <em>in_hint_key</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
-          <td class="paramname"> <em>in_service</em></td><td>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
+          <td class="paramname"> <em>in_hint_string</em></td><td>&nbsp;</td>
         </tr>
         <tr>
           <td></td>
@@ -453,112 +152,41 @@ Get the preferred service realm.
 <div class="memdoc">
 
 <p>
-Set the preferred service name
+Set the string value of a hint used for identity selection
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>io_selection_hints</em>&nbsp;</td><td>a selection hints object to modify. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>in_service</em>&nbsp;</td><td>a service name string. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>in_hint_key</em>&nbsp;</td><td>A string representing the type of hint to set. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>in_hint_string</em>&nbsp;</td><td>A string representation of a hint for <em>in_hint_key</em> to set in <em>in_selection_hints</em>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g5a962a3a53751cd28d73cd024d50bcb5" title="Get the preferred service name.">kim_selection_hints_get_service_hint()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g6dbcdbaae154f490ae313d30f7fc51b3" title="Get the string value of a hint used for identity selection.">kim_selection_hints_get_hint()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g5a962a3a53751cd28d73cd024d50bcb5"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_service_hint" ref="g5a962a3a53751cd28d73cd024d50bcb5" args="(kim_selection_hints_t in_selection_hints, kim_string_t *out_service)" -->
+<a class="anchor" name="g6dbcdbaae154f490ae313d30f7fc51b3"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_hint" ref="g6dbcdbaae154f490ae313d30f7fc51b3" args="(kim_selection_hints in_selection_hints, kim_string in_hint_key, kim_string *out_hint_string)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_get_service_hint           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_selection_hints_get_hint           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a>&nbsp;</td>
           <td class="paramname"> <em>in_selection_hints</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *&nbsp;</td>
-          <td class="paramname"> <em>out_service</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Get the preferred service name. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>in_selection_hints</em>&nbsp;</td><td>a selection hints object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_service</em>&nbsp;</td><td>on exit, the service name string specified in <em>in_selection_hints</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#ga3e9ac5bcab38b089adfeebd8ba56ded" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
-  </table>
-</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#gca90aa48104604534b4a9381b9dc2b66" title="Set the preferred service name.">kim_selection_hints_set_service_hint()</a> </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="g63db6ce28b437e5293e37a67d652abde"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_set_server_hint" ref="g63db6ce28b437e5293e37a67d652abde" args="(kim_selection_hints_t io_selection_hints, kim_string_t in_server)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_set_server_hint           </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
-          <td class="paramname"> <em>io_selection_hints</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
-          <td class="paramname"> <em>in_server</em></td><td>&nbsp;</td>
-        </tr>
-        <tr>
-          <td></td>
-          <td>)</td>
-          <td></td><td></td><td width="100%"></td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-Set the preferred server host name. 
-<p>
-<dl compact><dt><b>Parameters:</b></dt><dd>
-  <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>io_selection_hints</em>&nbsp;</td><td>a selection hints object to modify. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>in_server</em>&nbsp;</td><td>a server host name string. </td></tr>
-  </table>
-</dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#ga1b90972456ac24454df3c569a6b8d70" title="Get the preferred server host name.">kim_selection_hints_get_server_hint()</a> </dd></dl>
-
-</div>
-</div><p>
-<a class="anchor" name="ga1b90972456ac24454df3c569a6b8d70"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_server_hint" ref="ga1b90972456ac24454df3c569a6b8d70" args="(kim_selection_hints_t in_selection_hints, kim_string_t *out_server)" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_get_server_hint           </td>
-          <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
-          <td class="paramname"> <em>in_selection_hints</em>, </td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
+          <td class="paramname"> <em>in_hint_key</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *&nbsp;</td>
-          <td class="paramname"> <em>out_server</em></td><td>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *&nbsp;</td>
+          <td class="paramname"> <em>out_hint_string</em></td><td>&nbsp;</td>
         </tr>
         <tr>
           <td></td>
@@ -570,33 +198,34 @@ Set the preferred server host name.
 <div class="memdoc">
 
 <p>
-Get the preferred server host name
+Get the string value of a hint used for identity selection
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_selection_hints</em>&nbsp;</td><td>a selection hints object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_server</em>&nbsp;</td><td>on exit, the server host name string specified in <em>in_selection_hints</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#ga3e9ac5bcab38b089adfeebd8ba56ded" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>in_hint_key</em>&nbsp;</td><td>A string representing the type of hint to obtain. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_hint_string</em>&nbsp;</td><td>A string representation of the hint <em>in_hint_key</em> in <em>in_selection_hints</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#g7e7207329022e97473ec71574e52a1fc" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g63db6ce28b437e5293e37a67d652abde" title="Set the preferred server host name.">kim_selection_hints_set_server_hint()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#gf9b194c40cd569bfe6b37b7f54fc5ed8" title="Set the string value of a hint used for identity selection.">kim_selection_hints_set_hint()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g9904e1b83a1082fbb0752853b3c6ece0"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_set_application_name" ref="g9904e1b83a1082fbb0752853b3c6ece0" args="(kim_selection_hints_t io_selection_hints, kim_string_t in_application_name)" -->
+<a class="anchor" name="g8fe2f3a8723cacff9241d81a71f4532f"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_set_application_name" ref="g8fe2f3a8723cacff9241d81a71f4532f" args="(kim_selection_hints io_selection_hints, kim_string in_application_name)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_set_application_name           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_selection_hints_set_application_name           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a>&nbsp;</td>
           <td class="paramname"> <em>io_selection_hints</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_application_name</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -618,25 +247,25 @@ Set the application name for use in user interaction.
   </table>
 </dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>If you do not call this function KIM will attempt to determine the application name at runtime. If that fails (the functionality is only available on some platforms) then KIM will use the application identity string. </dd></dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#ge254849dd3bf81a295e1e9054220002b" title="Get the application name for use in user interaction.">kim_selection_hints_get_application_name()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g21e88d5a8168ec7f7023faf171adb621" title="Get the application name for use in user interaction.">kim_selection_hints_get_application_name()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="ge254849dd3bf81a295e1e9054220002b"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_application_name" ref="ge254849dd3bf81a295e1e9054220002b" args="(kim_selection_hints_t in_selection_hints, kim_string_t *out_application_name)" -->
+<a class="anchor" name="g21e88d5a8168ec7f7023faf171adb621"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_application_name" ref="g21e88d5a8168ec7f7023faf171adb621" args="(kim_selection_hints in_selection_hints, kim_string *out_application_name)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_get_application_name           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_selection_hints_get_application_name           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a>&nbsp;</td>
           <td class="paramname"> <em>in_selection_hints</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *&nbsp;</td>
           <td class="paramname"> <em>out_application_name</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -654,28 +283,28 @@ Get the application name for use in user interaction.
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_selection_hints</em>&nbsp;</td><td>a selection hints object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_application_name</em>&nbsp;</td><td>on exit, the localized full name of the application specified in <em>in_selection_hints</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#ga3e9ac5bcab38b089adfeebd8ba56ded" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_application_name</em>&nbsp;</td><td>on exit, the localized full name of the application specified in <em>in_selection_hints</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#g7e7207329022e97473ec71574e52a1fc" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g9904e1b83a1082fbb0752853b3c6ece0" title="Set the application name for use in user interaction.">kim_selection_hints_set_application_name()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g8fe2f3a8723cacff9241d81a71f4532f" title="Set the application name for use in user interaction.">kim_selection_hints_set_application_name()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gdde1a442f7ab9913eed7855f06575f92"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_set_explanation" ref="gdde1a442f7ab9913eed7855f06575f92" args="(kim_selection_hints_t io_selection_hints, kim_string_t in_explanation)" -->
+<a class="anchor" name="gcc6ec35aa53cad7a2eca07ceea66a3c6"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_set_explanation" ref="gcc6ec35aa53cad7a2eca07ceea66a3c6" args="(kim_selection_hints io_selection_hints, kim_string in_explanation)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_set_explanation           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_selection_hints_set_explanation           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a>&nbsp;</td>
           <td class="paramname"> <em>io_selection_hints</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_explanation</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -696,26 +325,26 @@ Set the strings used to prompt the user to select the identity.
     <tr><td valign="top"></td><td valign="top"><em>in_explanation</em>&nbsp;</td><td>a localized string describing why the caller needs the identity. </td></tr>
   </table>
 </dl>
-<dl class="note" compact><dt><b>Note:</b></dt><dd>If the application only does one thing (the reason it needs an identity is obvious) then you may not need to call this function. You may still need to call <a class="el" href="group__kim__selection__hints__reference.html#g9904e1b83a1082fbb0752853b3c6ece0" title="Set the application name for use in user interaction.">kim_selection_hints_set_application_name()</a> </dd></dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#gca2b7379231b656f6ee2df551bb7972e" title="Get the strings used to prompt the user to select the identity.">kim_selection_hints_get_explanation()</a> </dd></dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>If the application only does one thing (the reason it needs an identity is obvious) then you may not need to call this function. You may still need to call <a class="el" href="group__kim__selection__hints__reference.html#g8fe2f3a8723cacff9241d81a71f4532f" title="Set the application name for use in user interaction.">kim_selection_hints_set_application_name()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g8fce520fbadcdd10f8928fbea43083ee" title="Get the strings used to prompt the user to select the identity.">kim_selection_hints_get_explanation()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gca2b7379231b656f6ee2df551bb7972e"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_explanation" ref="gca2b7379231b656f6ee2df551bb7972e" args="(kim_selection_hints_t in_selection_hints, kim_string_t *out_explanation)" -->
+<a class="anchor" name="g8fce520fbadcdd10f8928fbea43083ee"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_explanation" ref="g8fce520fbadcdd10f8928fbea43083ee" args="(kim_selection_hints in_selection_hints, kim_string *out_explanation)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_get_explanation           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_selection_hints_get_explanation           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a>&nbsp;</td>
           <td class="paramname"> <em>in_selection_hints</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *&nbsp;</td>
           <td class="paramname"> <em>out_explanation</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -733,28 +362,28 @@ Get the strings used to prompt the user to select the identity.
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_selection_hints</em>&nbsp;</td><td>a selection hints object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_explanation</em>&nbsp;</td><td>on exit, the localized string specified in <em>in_selection_hints</em> which describes why the caller needs the identity. May be NULL. If non-NULL, must be freed with <a class="el" href="group__kim__string__reference.html#ga3e9ac5bcab38b089adfeebd8ba56ded" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_explanation</em>&nbsp;</td><td>on exit, the localized string specified in <em>in_selection_hints</em> which describes why the caller needs the identity. May be NULL. If non-NULL, must be freed with <a class="el" href="group__kim__string__reference.html#g7e7207329022e97473ec71574e52a1fc" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#gdde1a442f7ab9913eed7855f06575f92" title="Set the strings used to prompt the user to select the identity.">kim_selection_hints_set_explanation()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#gcc6ec35aa53cad7a2eca07ceea66a3c6" title="Set the strings used to prompt the user to select the identity.">kim_selection_hints_set_explanation()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gae79cd94d2184c8ffe4c7144205fd813"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_set_options" ref="gae79cd94d2184c8ffe4c7144205fd813" args="(kim_selection_hints_t io_selection_hints, kim_options_t in_options)" -->
+<a class="anchor" name="g2cbc1a52c6fa4c94aa85acf7abb205c4"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_set_options" ref="g2cbc1a52c6fa4c94aa85acf7abb205c4" args="(kim_selection_hints io_selection_hints, kim_options in_options)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_set_options           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_selection_hints_set_options           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a>&nbsp;</td>
           <td class="paramname"> <em>io_selection_hints</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>&nbsp;</td>
           <td class="paramname"> <em>in_options</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -775,25 +404,25 @@ Set the options which will be used if credentials need to be acquired.
     <tr><td valign="top"></td><td valign="top"><em>in_options</em>&nbsp;</td><td>options to control credential acquisition. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#ge00f6f57e9d24d2e62694d72d43148a4" title="Get the options which will be used if credentials need to be acquired.">kim_selection_hints_get_options()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#gb8c6aea4ac6b55d77585a5f3047dd3e7" title="Get the options which will be used if credentials need to be acquired.">kim_selection_hints_get_options()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="ge00f6f57e9d24d2e62694d72d43148a4"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_options" ref="ge00f6f57e9d24d2e62694d72d43148a4" args="(kim_selection_hints_t in_selection_hints, kim_options_t *out_options)" -->
+<a class="anchor" name="gb8c6aea4ac6b55d77585a5f3047dd3e7"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_options" ref="gb8c6aea4ac6b55d77585a5f3047dd3e7" args="(kim_selection_hints in_selection_hints, kim_options *out_options)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_get_options           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_selection_hints_get_options           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a>&nbsp;</td>
           <td class="paramname"> <em>in_selection_hints</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a> *&nbsp;</td>
           <td class="paramname"> <em>out_options</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -811,28 +440,28 @@ Get the options which will be used if credentials need to be acquired.
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_selection_hints</em>&nbsp;</td><td>a selection hints object. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_options</em>&nbsp;</td><td>on exit, the options to control credential acquisition specified in <em>in_selection_hints</em>. May be KIM_OPTIONS_DEFAULT. If not, must be freed with <a class="el" href="group__kim__options__reference.html#g06130689189d5ba4f9e518c8ed68eb7d" title="Free memory associated with an options object.">kim_options_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_options</em>&nbsp;</td><td>on exit, the options to control credential acquisition specified in <em>in_selection_hints</em>. May be KIM_OPTIONS_DEFAULT. If not, must be freed with <a class="el" href="group__kim__options__reference.html#gd8de9ea0a4eb9e0ffb8e3056a3899f55" title="Free memory associated with an options object.">kim_options_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#gae79cd94d2184c8ffe4c7144205fd813" title="Set the options which will be used if credentials need to be acquired.">kim_selection_hints_set_options()</a> </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g2cbc1a52c6fa4c94aa85acf7abb205c4" title="Set the options which will be used if credentials need to be acquired.">kim_selection_hints_set_options()</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g8a4f9300250b27fec9b0da4b52f0a781"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_set_allow_user_interaction" ref="g8a4f9300250b27fec9b0da4b52f0a781" args="(kim_selection_hints_t in_selection_hints, kim_boolean_t in_allow_user_interaction)" -->
+<a class="anchor" name="g290210bc1cb57b49539cc7f8c0d8fa2c"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_set_allow_user_interaction" ref="g290210bc1cb57b49539cc7f8c0d8fa2c" args="(kim_selection_hints in_selection_hints, kim_boolean in_allow_user_interaction)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_set_allow_user_interaction           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_selection_hints_set_allow_user_interaction           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a>&nbsp;</td>
           <td class="paramname"> <em>in_selection_hints</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a>&nbsp;</td>
           <td class="paramname"> <em>in_allow_user_interaction</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -853,26 +482,26 @@ Set whether or not KIM may interact with the user to select an identity.
     <tr><td valign="top"></td><td valign="top"><em>in_allow_user_interaction</em>&nbsp;</td><td>a boolean value specifying whether or not KIM should ask the user to select an identity for <em>in_selection_hints</em>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>This setting defaults to TRUE. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g255a01cf3f1e31390b213a802f8b27b4" title="Get whether or not KIM may interact with the user to select an identity.">kim_selection_hints_get_allow_user_interaction</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g95691183f6a85b8208858bd948a64c55" title="Get whether or not KIM may interact with the user to select an identity.">kim_selection_hints_get_allow_user_interaction</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g255a01cf3f1e31390b213a802f8b27b4"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_allow_user_interaction" ref="g255a01cf3f1e31390b213a802f8b27b4" args="(kim_selection_hints_t in_selection_hints, kim_boolean_t *out_allow_user_interaction)" -->
+<a class="anchor" name="g95691183f6a85b8208858bd948a64c55"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_allow_user_interaction" ref="g95691183f6a85b8208858bd948a64c55" args="(kim_selection_hints in_selection_hints, kim_boolean *out_allow_user_interaction)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_get_allow_user_interaction           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_selection_hints_get_allow_user_interaction           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a>&nbsp;</td>
           <td class="paramname"> <em>in_selection_hints</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> *&nbsp;</td>
           <td class="paramname"> <em>out_allow_user_interaction</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -893,26 +522,26 @@ Get whether or not KIM may interact with the user to select an identity.
     <tr><td valign="top"></td><td valign="top"><em>out_allow_user_interaction</em>&nbsp;</td><td>on exit, a boolean value specifying whether or not KIM should ask the user to select an identity for <em>in_selection_hints</em>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>This setting defaults to TRUE. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g8a4f9300250b27fec9b0da4b52f0a781" title="Set whether or not KIM may interact with the user to select an identity.">kim_selection_hints_set_allow_user_interaction</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g290210bc1cb57b49539cc7f8c0d8fa2c" title="Set whether or not KIM may interact with the user to select an identity.">kim_selection_hints_set_allow_user_interaction</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gd5cf3d5ca0c2d902dbecd07d145631d8"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_set_remember_identity" ref="gd5cf3d5ca0c2d902dbecd07d145631d8" args="(kim_selection_hints_t in_selection_hints, kim_boolean_t in_remember_identity)" -->
+<a class="anchor" name="ga036cbd405130142b460191dc5bf2c37"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_set_remember_identity" ref="ga036cbd405130142b460191dc5bf2c37" args="(kim_selection_hints in_selection_hints, kim_boolean in_remember_identity)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_set_remember_identity           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_selection_hints_set_remember_identity           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a>&nbsp;</td>
           <td class="paramname"> <em>in_selection_hints</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a>&nbsp;</td>
           <td class="paramname"> <em>in_remember_identity</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -933,26 +562,26 @@ Set whether or not KIM will use cached mappings for this selection hints object.
     <tr><td valign="top"></td><td valign="top"><em>in_remember_identity</em>&nbsp;</td><td>a boolean value specifying whether or not KIM should use a cached mapping between <em>in_selection_hints</em> and a Kerberos identity. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>This setting defaults to TRUE. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#gd48667d06fc020680d8def99100dcdc5" title="Get whether or not KIM will use cache mappings for this selection hints object.">kim_selection_hints_get_remember_identity</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g773b762d39714428667bcea3aa490638" title="Get whether or not KIM will use cache mappings for this selection hints object.">kim_selection_hints_get_remember_identity</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gd48667d06fc020680d8def99100dcdc5"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_remember_identity" ref="gd48667d06fc020680d8def99100dcdc5" args="(kim_selection_hints_t in_selection_hints, kim_boolean_t *out_remember_identity)" -->
+<a class="anchor" name="g773b762d39714428667bcea3aa490638"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_remember_identity" ref="g773b762d39714428667bcea3aa490638" args="(kim_selection_hints in_selection_hints, kim_boolean *out_remember_identity)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_get_remember_identity           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_selection_hints_get_remember_identity           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a>&nbsp;</td>
           <td class="paramname"> <em>in_selection_hints</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a> *&nbsp;</td>
           <td class="paramname"> <em>out_remember_identity</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -973,26 +602,26 @@ Get whether or not KIM will use cache mappings for this selection hints object.
     <tr><td valign="top"></td><td valign="top"><em>out_remember_identity</em>&nbsp;</td><td>on exit, a boolean value specifying whether or not KIM will use a cached mapping between <em>in_selection_hints</em> and a Kerberos identity. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>This setting defaults to TRUE. </dd></dl>
-<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#gd5cf3d5ca0c2d902dbecd07d145631d8" title="Set whether or not KIM will use cached mappings for this selection hints object.">kim_selection_hints_set_remember_identity</a> </dd></dl>
+<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#ga036cbd405130142b460191dc5bf2c37" title="Set whether or not KIM will use cached mappings for this selection hints object.">kim_selection_hints_set_remember_identity</a> </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g4c18a97d53150f0b3536e52ab884973d"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_identity" ref="g4c18a97d53150f0b3536e52ab884973d" args="(kim_selection_hints_t in_selection_hints, kim_identity_t *out_identity)" -->
+<a class="anchor" name="g5f4130fa05e937b749d7cc5347531abe"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_get_identity" ref="g5f4130fa05e937b749d7cc5347531abe" args="(kim_selection_hints in_selection_hints, kim_identity *out_identity)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_get_identity           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_selection_hints_get_identity           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a>&nbsp;</td>
           <td class="paramname"> <em>in_selection_hints</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a> *&nbsp;</td>
           <td class="paramname"> <em>out_identity</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -1010,28 +639,28 @@ Choose a client identity based on selection hints.
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
     <tr><td valign="top"></td><td valign="top"><em>in_selection_hints</em>&nbsp;</td><td>the selection hints to add to the cache. </td></tr>
-    <tr><td valign="top"></td><td valign="top"><em>out_identity</em>&nbsp;</td><td>the Kerberos identity <em>in_selection_hints</em> maps to. Must be freed with <a class="el" href="group__kim__identity__reference.html#gd384198163f30b97a6a583ad871a0e23" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_identity</em>&nbsp;</td><td>the Kerberos identity <em>in_selection_hints</em> maps to. Must be freed with <a class="el" href="group__kim__identity__reference.html#g3ae8057f3eb0040330b598645d470411" title="Free memory associated with an identity.">kim_identity_free()</a>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 <dl class="note" compact><dt><b>Note:</b></dt><dd><em>out_identity</em> is the identity mapped to by the current state of <em>in_selection_hints</em>. This function may prompt the user via a GUI to choose that identity. Subsequent modifications to <em>in_selection_hints</em> will not change <em>out_identity</em>. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="ga35356161afa853700734a73ad9e027b"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_remember_identity" ref="ga35356161afa853700734a73ad9e027b" args="(kim_selection_hints_t in_selection_hints, kim_identity_t in_identity)" -->
+<a class="anchor" name="ge33ab4dcf213c7fcb43eea3f35aeef09"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_remember_identity" ref="ge33ab4dcf213c7fcb43eea3f35aeef09" args="(kim_selection_hints in_selection_hints, kim_identity in_identity)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_remember_identity           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_selection_hints_remember_identity           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a>&nbsp;</td>
           <td class="paramname"> <em>in_selection_hints</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>&nbsp;</td>
           <td class="paramname"> <em>in_identity</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -1052,18 +681,18 @@ Add an entry for the selection hints to the selection hints cache, replacing any
     <tr><td valign="top"></td><td valign="top"><em>in_identity</em>&nbsp;</td><td>the Kerberos identity <em>in_selection_hints</em> maps to. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g4550fb53331ba7424853bde07834aa76"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_forget_identity" ref="g4550fb53331ba7424853bde07834aa76" args="(kim_selection_hints_t in_selection_hints)" -->
+<a class="anchor" name="g8bc79c133df171182813ca2a8773d19c"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_forget_identity" ref="g8bc79c133df171182813ca2a8773d19c" args="(kim_selection_hints in_selection_hints)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_selection_hints_forget_identity           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_selection_hints_forget_identity           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a>&nbsp;</td>
           <td class="paramname"> <em>in_selection_hints</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td width="100%"></td>
@@ -1080,18 +709,18 @@ Remove an entry for the selection hints from the selection hints cache.
     <tr><td valign="top"></td><td valign="top"><em>in_selection_hints</em>&nbsp;</td><td>the selection hints to remove from the cache. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="g8221dcbf6d972150252707a8d52ad5e5"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_free" ref="g8221dcbf6d972150252707a8d52ad5e5" args="(kim_selection_hints_t *io_selection_hints)" -->
+<a class="anchor" name="gb8e8fb20d4726f293d6185c11c78b0aa"></a><!-- doxytag: member="kim_selection_hints.h::kim_selection_hints_free" ref="gb8e8fb20d4726f293d6185c11c78b0aa" args="(kim_selection_hints *io_selection_hints)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void kim_selection_hints_free           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a> *&nbsp;</td>
           <td class="paramname"> <em>io_selection_hints</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td width="100%"></td>
@@ -1111,7 +740,7 @@ Free memory associated with a selection hints object.
 
 </div>
 </div><p>
-<hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:20 2008 for Kerberos Identity Management by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index 46d225118011b9759de72f2ddd6b6a96a2400441..df2493dd1ac5276dab95c9e9b7f8f305d32750cb 100644 (file)
@@ -9,25 +9,65 @@
 <p>
 <h2>Functions</h2>
 <ul>
-<li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__string__reference.html#g13e652cfeb21dd616ab1bf83377a92c9">kim_string_copy</a> (<a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *out_string, const <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_string)
-<dl class="el"><dd class="mdescRight">Copy a string.  <a href="#g13e652cfeb21dd616ab1bf83377a92c9"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> <a class="el" href="group__kim__string__reference.html#gcb69a7203bd4d8638eb304ae4d75948f">kim_string_compare</a> (<a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_string, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_compare_to_string, <a class="el" href="group__kim__types__reference.html#g304e619e3936990905c7998f07a8800b">kim_comparison_t</a> *out_comparison)
-<dl class="el"><dd class="mdescRight">Compare two strings.  <a href="#gcb69a7203bd4d8638eb304ae4d75948f"></a><br></dl><li>void <a class="el" href="group__kim__string__reference.html#ga3e9ac5bcab38b089adfeebd8ba56ded">kim_string_free</a> (<a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *io_string)
-<dl class="el"><dd class="mdescRight">Free memory associated with a string.  <a href="#ga3e9ac5bcab38b089adfeebd8ba56ded"></a><br></dl></ul>
+<li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__string__reference.html#g010c32962b2639f4dbc0ebd8303d7c4a">kim_string_create_for_error</a> (<a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *out_string, <a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> in_error)
+<dl class="el"><dd class="mdescRight">Get a text description of an error.  <a href="#g010c32962b2639f4dbc0ebd8303d7c4a"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__string__reference.html#g75780c8ab031eaab2b588014c7078b58">kim_string_copy</a> (<a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *out_string, const <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_string)
+<dl class="el"><dd class="mdescRight">Copy a string.  <a href="#g75780c8ab031eaab2b588014c7078b58"></a><br></dl><li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__string__reference.html#g504d17196463065016bfc11ef8ff44bb">kim_string_compare</a> (<a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_string, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_compare_to_string, <a class="el" href="group__kim__types__reference.html#gae48569e847ff6af9d10add42a4338e7">kim_comparison</a> *out_comparison)
+<dl class="el"><dd class="mdescRight">Compare two strings.  <a href="#g504d17196463065016bfc11ef8ff44bb"></a><br></dl><li>void <a class="el" href="group__kim__string__reference.html#g7e7207329022e97473ec71574e52a1fc">kim_string_free</a> (<a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *io_string)
+<dl class="el"><dd class="mdescRight">Free memory associated with a string.  <a href="#g7e7207329022e97473ec71574e52a1fc"></a><br></dl></ul>
 <hr><h2>Function Documentation</h2>
-<a class="anchor" name="g13e652cfeb21dd616ab1bf83377a92c9"></a><!-- doxytag: member="kim_string.h::kim_string_copy" ref="g13e652cfeb21dd616ab1bf83377a92c9" args="(kim_string_t *out_string, const kim_string_t in_string)" -->
+<a class="anchor" name="g010c32962b2639f4dbc0ebd8303d7c4a"></a><!-- doxytag: member="kim_string.h::kim_string_create_for_error" ref="g010c32962b2639f4dbc0ebd8303d7c4a" args="(kim_string *out_string, kim_error in_error)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_string_copy           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_string_create_for_error           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *&nbsp;</td>
           <td class="paramname"> <em>out_string</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">const <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a>&nbsp;</td>
+          <td class="paramname"> <em>in_error</em></td><td>&nbsp;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td><td width="100%"></td>
+        </tr>
+      </table>
+</div>
+<div class="memdoc">
+
+<p>
+Get a text description of an error. 
+<p>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+  <table border="0" cellspacing="2" cellpadding="0">
+    <tr><td valign="top"></td><td valign="top"><em>out_string</em>&nbsp;</td><td>on exit, a human-readable UTF-8 string describing the error represented by <em>in_error</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#g7e7207329022e97473ec71574e52a1fc" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>in_error</em>&nbsp;</td><td>an error code. </td></tr>
+  </table>
+</dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, </dd></dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>If the caller needs an error string, this API should be called immediately after a KIM API returns an error. </dd></dl>
+
+</div>
+</div><p>
+<a class="anchor" name="g75780c8ab031eaab2b588014c7078b58"></a><!-- doxytag: member="kim_string.h::kim_string_copy" ref="g75780c8ab031eaab2b588014c7078b58" args="(kim_string *out_string, const kim_string in_string)" -->
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_string_copy           </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *&nbsp;</td>
+          <td class="paramname"> <em>out_string</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_string</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -44,34 +84,34 @@ Copy a string.
 <p>
 <dl compact><dt><b>Parameters:</b></dt><dd>
   <table border="0" cellspacing="2" cellpadding="0">
-    <tr><td valign="top"></td><td valign="top"><em>out_string</em>&nbsp;</td><td>on exit, a new string object which is a copy of <em>in_string</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#ga3e9ac5bcab38b089adfeebd8ba56ded" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
+    <tr><td valign="top"></td><td valign="top"><em>out_string</em>&nbsp;</td><td>on exit, a new string object which is a copy of <em>in_string</em>. Must be freed with <a class="el" href="group__kim__string__reference.html#g7e7207329022e97473ec71574e52a1fc" title="Free memory associated with a string.">kim_string_free()</a>. </td></tr>
     <tr><td valign="top"></td><td valign="top"><em>in_string</em>&nbsp;</td><td>the string to copy. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="gcb69a7203bd4d8638eb304ae4d75948f"></a><!-- doxytag: member="kim_string.h::kim_string_compare" ref="gcb69a7203bd4d8638eb304ae4d75948f" args="(kim_string_t in_string, kim_string_t in_compare_to_string, kim_comparison_t *out_comparison)" -->
+<a class="anchor" name="g504d17196463065016bfc11ef8ff44bb"></a><!-- doxytag: member="kim_string.h::kim_string_compare" ref="g504d17196463065016bfc11ef8ff44bb" args="(kim_string in_string, kim_string in_compare_to_string, kim_comparison *out_comparison)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a> kim_string_compare           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_string_compare           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_string</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_compare_to_string</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g304e619e3936990905c7998f07a8800b">kim_comparison_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae48569e847ff6af9d10add42a4338e7">kim_comparison</a> *&nbsp;</td>
           <td class="paramname"> <em>out_comparison</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -93,18 +133,18 @@ Compare two strings.
     <tr><td valign="top"></td><td valign="top"><em>out_comparison</em>&nbsp;</td><td>on exit, a comparison result indicating whether <em>in_string</em> is greater than, less than or equal to <em>in_compare_to_string</em>. </td></tr>
   </table>
 </dl>
-<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error object representing the failure. </dd></dl>
+<dl class="return" compact><dt><b>Returns:</b></dt><dd>On success, <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>. On failure, an error code representing the failure. </dd></dl>
 
 </div>
 </div><p>
-<a class="anchor" name="ga3e9ac5bcab38b089adfeebd8ba56ded"></a><!-- doxytag: member="kim_string.h::kim_string_free" ref="ga3e9ac5bcab38b089adfeebd8ba56ded" args="(kim_string_t *io_string)" -->
+<a class="anchor" name="g7e7207329022e97473ec71574e52a1fc"></a><!-- doxytag: member="kim_string.h::kim_string_free" ref="g7e7207329022e97473ec71574e52a1fc" args="(kim_string *io_string)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
           <td class="memname">void kim_string_free           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> *&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> *&nbsp;</td>
           <td class="paramname"> <em>io_string</em>          </td>
           <td>&nbsp;)&nbsp;</td>
           <td width="100%"></td>
@@ -124,7 +164,7 @@ Free memory associated with a string.
 
 </div>
 </div><p>
-<hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:20 2008 for Kerberos Identity Management by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index c46ec73e5886f38de926ae17f873b6906ab1a948..3654b9deba8b7fe8b1d072a9fb5d037eb0647f58 100644 (file)
@@ -9,48 +9,43 @@
 <p>
 <h2>Defines</h2>
 <ul>
-<li>#define <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>&nbsp;&nbsp;&nbsp;((<a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a>) NULL)
-<li>#define <a class="el" href="group__kim__types__reference.html#g4c4c33563f8fb12f587a0516437c30e5">KIM_NO_ERROR_ECODE</a>&nbsp;&nbsp;&nbsp;((<a class="el" href="group__kim__types__reference.html#g8db8bb7876c17d07e1e002b89e5a69eb">kim_error_code_t</a>) 0)
-<li>#define <a class="el" href="group__kim__types__reference.html#g322f65f7d72470d57e21a4c8777ee9fb">KIM_IDENTITY_ANY</a>&nbsp;&nbsp;&nbsp;((<a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>) NULL)
-<li>#define <a class="el" href="group__kim__types__reference.html#ge0384d3f6d9108e3ec84e322c61235a7">KIM_OPTIONS_DEFAULT</a>&nbsp;&nbsp;&nbsp;((<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>) NULL)
-<li>#define <a class="el" href="group__kim__types__reference.html#g88d98fa3bd4ca00913bff414d65c3590">KIM_OPTIONS_START_IMMEDIATELY</a>&nbsp;&nbsp;&nbsp;((<a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a>) 0)
+<li>#define <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>&nbsp;&nbsp;&nbsp;((<a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a>) 0)
+<li>#define <a class="el" href="group__kim__types__reference.html#g322f65f7d72470d57e21a4c8777ee9fb">KIM_IDENTITY_ANY</a>&nbsp;&nbsp;&nbsp;((<a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>) NULL)
+<li>#define <a class="el" href="group__kim__types__reference.html#ge0384d3f6d9108e3ec84e322c61235a7">KIM_OPTIONS_DEFAULT</a>&nbsp;&nbsp;&nbsp;((<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>) NULL)
+<li>#define <a class="el" href="group__kim__types__reference.html#g88d98fa3bd4ca00913bff414d65c3590">KIM_OPTIONS_START_IMMEDIATELY</a>&nbsp;&nbsp;&nbsp;((kim_time_t) 0)
 <li>#define <a class="el" href="group__kim__types__reference.html#g4d38dda6e945454742fd5c0e2038a370">kim_comparison_is_less_than</a>(c)&nbsp;&nbsp;&nbsp;(c &lt; 0)
 <li>#define <a class="el" href="group__kim__types__reference.html#g82110d33192b3618a1c3d8d51965e80f">kim_comparison_is_equal_to</a>(c)&nbsp;&nbsp;&nbsp;(c == 0)
 <li>#define <a class="el" href="group__kim__types__reference.html#g95693c83e1981bd08bc616ab947ee01d">kim_comparison_is_greater_than</a>(c)&nbsp;&nbsp;&nbsp;(c &gt; 0)
 </ul>
 <h2>Typedefs</h2>
 <ul>
-<li>typedef int <a class="el" href="group__kim__types__reference.html#gc26053c4715f113e3580214d554781ad">kim_credential_state_t</a>
-<li>typedef uint32_t <a class="el" href="group__kim__types__reference.html#g8d58b8d10d34b30675b1402a12d9fdd1">kim_prompt_type_t</a>
-<li>typedef <br>
-<a class="el" href="group__kim__types__reference.html#g8db8bb7876c17d07e1e002b89e5a69eb">kim_error_code_t</a>(* <a class="el" href="group__kim__types__reference.html#g3dc87ed0aa0847e5af0e4f410ba6d7dd">kim_prompt_callback_t</a> )(<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *io_options, <a class="el" href="group__kim__types__reference.html#g8d58b8d10d34b30675b1402a12d9fdd1">kim_prompt_type_t</a> in_type, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_title, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_message, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_description, void **out_reply)
-<li>typedef int32_t <a class="el" href="group__kim__types__reference.html#g8db8bb7876c17d07e1e002b89e5a69eb">kim_error_code_t</a>
-<li>typedef int64_t <a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a>
-<li>typedef int64_t <a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a>
-<li>typedef uint64_t <a class="el" href="group__kim__types__reference.html#g709d3d4d2733bc8dc29dcab2e806dd38">kim_count_t</a>
-<li>typedef int <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a>
-<li>typedef int <a class="el" href="group__kim__types__reference.html#g304e619e3936990905c7998f07a8800b">kim_comparison_t</a>
-<li>typedef const char * <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>
+<li>typedef int <a class="el" href="group__kim__types__reference.html#g48e19d7e4aec7dc6662149cab39bbe20">kim_credential_state</a>
+<li>typedef uint32_t <a class="el" href="group__kim__types__reference.html#g91894d96e0196e25424084eccdc04eb8">kim_prompt_type</a>
+<li>typedef <a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a>(* <a class="el" href="group__kim__types__reference.html#gded2c3c2de01d94299b65fb8df64bdcc">kim_prompt_callback</a> )(<a class="el" href="group__kim__types__reference.html#g91894d96e0196e25424084eccdc04eb8">kim_prompt_type</a> in_type, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_title, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_message, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_description, char **out_reply)
+<li>typedef int32_t <a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a>
+<li>typedef int64_t <a class="el" href="group__kim__types__reference.html#g3da22452677b45753d40e07f3904dff5">kim_time</a>
+<li>typedef int64_t <a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a>
+<li>typedef uint64_t <a class="el" href="group__kim__types__reference.html#g098e3611b2bc3af38b5f06838153165d">kim_count</a>
+<li>typedef int <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a>
+<li>typedef int <a class="el" href="group__kim__types__reference.html#gae48569e847ff6af9d10add42a4338e7">kim_comparison</a>
+<li>typedef const char * <a class="el" href="group__kim__types__reference.html#g142374af75d94b931badf53148a7c09c">kim_context</a>
+<li>typedef const char * <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>
 <li>typedef struct <br>
-kim_error_opaque * <a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a>
+kim_identity_opaque * <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>
 <li>typedef struct <br>
-kim_identity_opaque * <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>
+kim_options_opaque * <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>
 <li>typedef struct <br>
-kim_options_opaque * <a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>
+kim_selection_hints_opaque * <a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a>
 <li>typedef struct <br>
-kim_selection_hints_opaque * <a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>
+kim_preferences_opaque * <a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>
 <li>typedef struct <br>
-kim_favorite_identities_opaque * <a class="el" href="group__kim__types__reference.html#g732f9e24fe1281aa42ffa2b078a53282">kim_favorite_identities_t</a>
+kim_ccache_iterator_opaque * <a class="el" href="group__kim__types__reference.html#gdf94e85294f9f42293bfb6a4ec35817c">kim_ccache_iterator</a>
 <li>typedef struct <br>
-kim_preferences_opaque * <a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>
+kim_ccache_opaque * <a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a>
 <li>typedef struct <br>
-kim_ccache_iterator_opaque * <a class="el" href="group__kim__types__reference.html#gf19042fb689c87bfbe381654f75af5b9">kim_ccache_iterator_t</a>
+kim_credential_iterator_opaque * <a class="el" href="group__kim__types__reference.html#gdd760f1db624009792f1b5100cd6c4e3">kim_credential_iterator</a>
 <li>typedef struct <br>
-kim_ccache_opaque * <a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a>
-<li>typedef struct <br>
-kim_credential_iterator_opaque * <a class="el" href="group__kim__types__reference.html#gaf149c8bd856b9067a9f42ccd2afdd37">kim_credential_iterator_t</a>
-<li>typedef struct <br>
-kim_credential_opaque * <a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a>
+kim_credential_opaque * <a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a>
 </ul>
 <h2>Enumerations</h2>
 <ul>
@@ -69,10 +64,10 @@ kim_credential_opaque * <a class="el" href="group__kim__types__reference.html#g0
 </ul>
 <h2>Functions</h2>
 <ul>
-<li><a class="el" href="group__kim__types__reference.html#g8db8bb7876c17d07e1e002b89e5a69eb">kim_error_code_t</a> <a class="el" href="group__kim__types__reference.html#gd9cfd6a66e9bdcde30a285dc350eb370">kim_prompt_callback_default</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *io_options, <a class="el" href="group__kim__types__reference.html#g8d58b8d10d34b30675b1402a12d9fdd1">kim_prompt_type_t</a> in_type, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_title, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_message, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_description, void **out_reply)
-<li><a class="el" href="group__kim__types__reference.html#g8db8bb7876c17d07e1e002b89e5a69eb">kim_error_code_t</a> <a class="el" href="group__kim__types__reference.html#gcfbe7cd3e8716d58713a8475f6909908">kim_prompt_callback_gui</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *io_options, <a class="el" href="group__kim__types__reference.html#g8d58b8d10d34b30675b1402a12d9fdd1">kim_prompt_type_t</a> in_type, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_title, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_message, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_description, void **out_reply)
-<li><a class="el" href="group__kim__types__reference.html#g8db8bb7876c17d07e1e002b89e5a69eb">kim_error_code_t</a> <a class="el" href="group__kim__types__reference.html#g4b36d86709701623eb73e6d0b95d1dd4">kim_prompt_callback_cli</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *io_options, <a class="el" href="group__kim__types__reference.html#g8d58b8d10d34b30675b1402a12d9fdd1">kim_prompt_type_t</a> in_type, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_title, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_message, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_description, void **out_reply)
-<li><a class="el" href="group__kim__types__reference.html#g8db8bb7876c17d07e1e002b89e5a69eb">kim_error_code_t</a> <a class="el" href="group__kim__types__reference.html#g9699effd6079690c8b744ff96dff1914">kim_prompt_callback_none</a> (<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *io_options, <a class="el" href="group__kim__types__reference.html#g8d58b8d10d34b30675b1402a12d9fdd1">kim_prompt_type_t</a> in_type, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_title, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_message, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_description, void **out_reply)
+<li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__types__reference.html#gbacd03bffb1ba46e4d8e36d19d91a170">kim_prompt_callback_default</a> (<a class="el" href="group__kim__types__reference.html#g91894d96e0196e25424084eccdc04eb8">kim_prompt_type</a> in_type, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_title, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_message, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_description, char **out_reply)
+<li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__types__reference.html#g5dc825b3083c371b1cd697efc19a1c22">kim_prompt_callback_gui</a> (<a class="el" href="group__kim__types__reference.html#g91894d96e0196e25424084eccdc04eb8">kim_prompt_type</a> in_type, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_title, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_message, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_description, char **out_reply)
+<li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__types__reference.html#g7e046e29e68cee691ac652e6b9c0ce93">kim_prompt_callback_cli</a> (<a class="el" href="group__kim__types__reference.html#g91894d96e0196e25424084eccdc04eb8">kim_prompt_type</a> in_type, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_title, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_message, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_description, char **out_reply)
+<li><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> <a class="el" href="group__kim__types__reference.html#gcc03830f3eece78fae04b722ca0687c3">kim_prompt_callback_none</a> (<a class="el" href="group__kim__types__reference.html#g91894d96e0196e25424084eccdc04eb8">kim_prompt_type</a> in_type, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_title, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_message, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_description, char **out_reply)
 </ul>
 <hr><h2>Define Documentation</h2>
 <a class="anchor" name="g8712727bab9e6b02712a8a01285441d1"></a><!-- doxytag: member="kim_error.h::KIM_NO_ERROR" ref="g8712727bab9e6b02712a8a01285441d1" args="" -->
@@ -80,29 +75,14 @@ kim_credential_opaque * <a class="el" href="group__kim__types__reference.html#g0
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">#define KIM_NO_ERROR&nbsp;&nbsp;&nbsp;((<a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a>) NULL)          </td>
+          <td class="memname">#define KIM_NO_ERROR&nbsp;&nbsp;&nbsp;((<a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a>) 0)          </td>
         </tr>
       </table>
 </div>
 <div class="memdoc">
 
 <p>
-The kim_error_t returned when no error occurred. Does not need to be freed with <a class="el" href="group__kim__error__reference.html#gc523758c093a0bb7af18af781e9d182c" title="Free memory associated with an error.">kim_error_free()</a>. 
-</div>
-</div><p>
-<a class="anchor" name="g4c4c33563f8fb12f587a0516437c30e5"></a><!-- doxytag: member="kim_error.h::KIM_NO_ERROR_ECODE" ref="g4c4c33563f8fb12f587a0516437c30e5" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">#define KIM_NO_ERROR_ECODE&nbsp;&nbsp;&nbsp;((<a class="el" href="group__kim__types__reference.html#g8db8bb7876c17d07e1e002b89e5a69eb">kim_error_code_t</a>) 0)          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-The kim_error_code_t for KIM_NO_ERROR. 
+The kim_error_t returned when no error occurred. 
 </div>
 </div><p>
 <a class="anchor" name="g322f65f7d72470d57e21a4c8777ee9fb"></a><!-- doxytag: member="kim_identity.h::KIM_IDENTITY_ANY" ref="g322f65f7d72470d57e21a4c8777ee9fb" args="" -->
@@ -110,7 +90,7 @@ The kim_error_code_t for KIM_NO_ERROR.
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">#define KIM_IDENTITY_ANY&nbsp;&nbsp;&nbsp;((<a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>) NULL)          </td>
+          <td class="memname">#define KIM_IDENTITY_ANY&nbsp;&nbsp;&nbsp;((<a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>) NULL)          </td>
         </tr>
       </table>
 </div>
@@ -125,7 +105,7 @@ Constant to specify any Kerberos identity is acceptable.
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">#define KIM_OPTIONS_DEFAULT&nbsp;&nbsp;&nbsp;((<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>) NULL)          </td>
+          <td class="memname">#define KIM_OPTIONS_DEFAULT&nbsp;&nbsp;&nbsp;((<a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>) NULL)          </td>
         </tr>
       </table>
 </div>
@@ -140,7 +120,7 @@ Specifies the user's default options.
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">#define KIM_OPTIONS_START_IMMEDIATELY&nbsp;&nbsp;&nbsp;((<a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a>) 0)          </td>
+          <td class="memname">#define KIM_OPTIONS_START_IMMEDIATELY&nbsp;&nbsp;&nbsp;((kim_time_t) 0)          </td>
         </tr>
       </table>
 </div>
@@ -167,7 +147,7 @@ Specifies that credentials should be valid immediately.
 <div class="memdoc">
 
 <p>
-Convenience macro for interpreting <a class="el" href="group__kim__types__reference.html#g304e619e3936990905c7998f07a8800b">kim_comparison_t</a>
+Convenience macro for interpreting kim_comparison_t
 </div>
 </div><p>
 <a class="anchor" name="g82110d33192b3618a1c3d8d51965e80f"></a><!-- doxytag: member="kim_types.h::kim_comparison_is_equal_to" ref="g82110d33192b3618a1c3d8d51965e80f" args="(c)" -->
@@ -187,7 +167,7 @@ Convenience macro for interpreting <a class="el" href="group__kim__types__refere
 <div class="memdoc">
 
 <p>
-Convenience macro for interpreting <a class="el" href="group__kim__types__reference.html#g304e619e3936990905c7998f07a8800b">kim_comparison_t</a>
+Convenience macro for interpreting kim_comparison_t
 </div>
 </div><p>
 <a class="anchor" name="g95693c83e1981bd08bc616ab947ee01d"></a><!-- doxytag: member="kim_types.h::kim_comparison_is_greater_than" ref="g95693c83e1981bd08bc616ab947ee01d" args="(c)" -->
@@ -207,16 +187,16 @@ Convenience macro for interpreting <a class="el" href="group__kim__types__refere
 <div class="memdoc">
 
 <p>
-Convenience macro for interpreting <a class="el" href="group__kim__types__reference.html#g304e619e3936990905c7998f07a8800b">kim_comparison_t</a>
+Convenience macro for interpreting kim_comparison_t
 </div>
 </div><p>
 <hr><h2>Typedef Documentation</h2>
-<a class="anchor" name="gc26053c4715f113e3580214d554781ad"></a><!-- doxytag: member="kim_credential.h::kim_credential_state_t" ref="gc26053c4715f113e3580214d554781ad" args="" -->
+<a class="anchor" name="g48e19d7e4aec7dc6662149cab39bbe20"></a><!-- doxytag: member="kim_credential.h::kim_credential_state" ref="g48e19d7e4aec7dc6662149cab39bbe20" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef int <a class="el" href="group__kim__types__reference.html#gc26053c4715f113e3580214d554781ad">kim_credential_state_t</a>          </td>
+          <td class="memname">typedef int <a class="el" href="group__kim__types__reference.html#g48e19d7e4aec7dc6662149cab39bbe20">kim_credential_state</a>          </td>
         </tr>
       </table>
 </div>
@@ -226,12 +206,12 @@ Convenience macro for interpreting <a class="el" href="group__kim__types__refere
 The state of a credential. See <a class="el" href="group__kim__types__reference.html#g6e5c2c986359589562c83f1da2cf0ca0">kim_credential_state_enum</a> for possible values. 
 </div>
 </div><p>
-<a class="anchor" name="g8d58b8d10d34b30675b1402a12d9fdd1"></a><!-- doxytag: member="kim_options.h::kim_prompt_type_t" ref="g8d58b8d10d34b30675b1402a12d9fdd1" args="" -->
+<a class="anchor" name="g91894d96e0196e25424084eccdc04eb8"></a><!-- doxytag: member="kim_options.h::kim_prompt_type" ref="g91894d96e0196e25424084eccdc04eb8" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef uint32_t <a class="el" href="group__kim__types__reference.html#g8d58b8d10d34b30675b1402a12d9fdd1">kim_prompt_type_t</a>          </td>
+          <td class="memname">typedef uint32_t <a class="el" href="group__kim__types__reference.html#g91894d96e0196e25424084eccdc04eb8">kim_prompt_type</a>          </td>
         </tr>
       </table>
 </div>
@@ -241,12 +221,12 @@ The state of a credential. See <a class="el" href="group__kim__types__reference.
 The type of prompt which needs to be displayed. This value determines what type of user interface is displayed. See <a class="el" href="kim_options_overview.html#kim_options_custom_prompt_callback">Providing a Custom Prompt Callback</a> for more information. 
 </div>
 </div><p>
-<a class="anchor" name="g3dc87ed0aa0847e5af0e4f410ba6d7dd"></a><!-- doxytag: member="kim_options.h::kim_prompt_callback_t" ref="g3dc87ed0aa0847e5af0e4f410ba6d7dd" args=")(kim_options_t *io_options, kim_prompt_type_t in_type, kim_string_t in_title, kim_string_t in_message, kim_string_t in_description, void **out_reply)" -->
+<a class="anchor" name="gded2c3c2de01d94299b65fb8df64bdcc"></a><!-- doxytag: member="kim_options.h::kim_prompt_callback" ref="gded2c3c2de01d94299b65fb8df64bdcc" args=")(kim_prompt_type in_type, kim_string in_title, kim_string in_message, kim_string in_description, char **out_reply)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef <a class="el" href="group__kim__types__reference.html#g8db8bb7876c17d07e1e002b89e5a69eb">kim_error_code_t</a>(* <a class="el" href="group__kim__types__reference.html#g3dc87ed0aa0847e5af0e4f410ba6d7dd">kim_prompt_callback_t</a>)(<a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *io_options, <a class="el" href="group__kim__types__reference.html#g8d58b8d10d34b30675b1402a12d9fdd1">kim_prompt_type_t</a> in_type, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_title, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_message, <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a> in_description, void **out_reply)          </td>
+          <td class="memname">typedef <a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a>(* <a class="el" href="group__kim__types__reference.html#gded2c3c2de01d94299b65fb8df64bdcc">kim_prompt_callback</a>)(<a class="el" href="group__kim__types__reference.html#g91894d96e0196e25424084eccdc04eb8">kim_prompt_type</a> in_type, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_title, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_message, <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a> in_description, char **out_reply)          </td>
         </tr>
       </table>
 </div>
@@ -256,27 +236,27 @@ The type of prompt which needs to be displayed. This value determines what type
 The prompt callback used to display a prompt to the user. See <a class="el" href="kim_options_overview.html#kim_options_custom_prompt_callback">Providing a Custom Prompt Callback</a> for more information. 
 </div>
 </div><p>
-<a class="anchor" name="g8db8bb7876c17d07e1e002b89e5a69eb"></a><!-- doxytag: member="kim_types.h::kim_error_code_t" ref="g8db8bb7876c17d07e1e002b89e5a69eb" args="" -->
+<a class="anchor" name="g40f5fe10ab395bddc34286e0c2ff76eb"></a><!-- doxytag: member="kim_types.h::kim_error" ref="g40f5fe10ab395bddc34286e0c2ff76eb" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef int32_t <a class="el" href="group__kim__types__reference.html#g8db8bb7876c17d07e1e002b89e5a69eb">kim_error_code_t</a>          </td>
+          <td class="memname">typedef int32_t <a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a>          </td>
         </tr>
       </table>
 </div>
 <div class="memdoc">
 
 <p>
-The KIM String type. See <a class="el" href="kim_string_overview.html">KIM String Overview</a> for more information. 
+The KIM Error type. See <a class="el" href="kim_error_overview.html">KIM Error Overview</a> for more information. 
 </div>
 </div><p>
-<a class="anchor" name="g22f06b0741ccb68b739e6395774a53c6"></a><!-- doxytag: member="kim_types.h::kim_time_t" ref="g22f06b0741ccb68b739e6395774a53c6" args="" -->
+<a class="anchor" name="g3da22452677b45753d40e07f3904dff5"></a><!-- doxytag: member="kim_types.h::kim_time" ref="g3da22452677b45753d40e07f3904dff5" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef int64_t <a class="el" href="group__kim__types__reference.html#g22f06b0741ccb68b739e6395774a53c6">kim_time_t</a>          </td>
+          <td class="memname">typedef int64_t <a class="el" href="group__kim__types__reference.html#g3da22452677b45753d40e07f3904dff5">kim_time</a>          </td>
         </tr>
       </table>
 </div>
@@ -286,12 +266,12 @@ The KIM String type. See <a class="el" href="kim_string_overview.html">KIM Strin
 A time value represented in seconds since January 1, 1970. 
 </div>
 </div><p>
-<a class="anchor" name="g1dccbe315455ed55fd34045e3a3e5086"></a><!-- doxytag: member="kim_types.h::kim_lifetime_t" ref="g1dccbe315455ed55fd34045e3a3e5086" args="" -->
+<a class="anchor" name="g245934c4ef7f94ff7960e20e0cc01123"></a><!-- doxytag: member="kim_types.h::kim_lifetime" ref="g245934c4ef7f94ff7960e20e0cc01123" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef int64_t <a class="el" href="group__kim__types__reference.html#g1dccbe315455ed55fd34045e3a3e5086">kim_lifetime_t</a>          </td>
+          <td class="memname">typedef int64_t <a class="el" href="group__kim__types__reference.html#g245934c4ef7f94ff7960e20e0cc01123">kim_lifetime</a>          </td>
         </tr>
       </table>
 </div>
@@ -301,12 +281,12 @@ A time value represented in seconds since January 1, 1970.
 A duration represented in seconds. 
 </div>
 </div><p>
-<a class="anchor" name="g709d3d4d2733bc8dc29dcab2e806dd38"></a><!-- doxytag: member="kim_types.h::kim_count_t" ref="g709d3d4d2733bc8dc29dcab2e806dd38" args="" -->
+<a class="anchor" name="g098e3611b2bc3af38b5f06838153165d"></a><!-- doxytag: member="kim_types.h::kim_count" ref="g098e3611b2bc3af38b5f06838153165d" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef uint64_t <a class="el" href="group__kim__types__reference.html#g709d3d4d2733bc8dc29dcab2e806dd38">kim_count_t</a>          </td>
+          <td class="memname">typedef uint64_t <a class="el" href="group__kim__types__reference.html#g098e3611b2bc3af38b5f06838153165d">kim_count</a>          </td>
         </tr>
       </table>
 </div>
@@ -316,12 +296,12 @@ A duration represented in seconds.
 An quantity, usually used to return the number of elements in an array. 
 </div>
 </div><p>
-<a class="anchor" name="g5a14ff972cd96679e00120c506202d3e"></a><!-- doxytag: member="kim_types.h::kim_boolean_t" ref="g5a14ff972cd96679e00120c506202d3e" args="" -->
+<a class="anchor" name="g6f8afd4047c4fe420c05f940f89ffba0"></a><!-- doxytag: member="kim_types.h::kim_boolean" ref="g6f8afd4047c4fe420c05f940f89ffba0" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef int <a class="el" href="group__kim__types__reference.html#g5a14ff972cd96679e00120c506202d3e">kim_boolean_t</a>          </td>
+          <td class="memname">typedef int <a class="el" href="group__kim__types__reference.html#g6f8afd4047c4fe420c05f940f89ffba0">kim_boolean</a>          </td>
         </tr>
       </table>
 </div>
@@ -331,12 +311,12 @@ An quantity, usually used to return the number of elements in an array.
 A boolean value. 0 means false, all other values mean true. 
 </div>
 </div><p>
-<a class="anchor" name="g304e619e3936990905c7998f07a8800b"></a><!-- doxytag: member="kim_types.h::kim_comparison_t" ref="g304e619e3936990905c7998f07a8800b" args="" -->
+<a class="anchor" name="gae48569e847ff6af9d10add42a4338e7"></a><!-- doxytag: member="kim_types.h::kim_comparison" ref="gae48569e847ff6af9d10add42a4338e7" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef int <a class="el" href="group__kim__types__reference.html#g304e619e3936990905c7998f07a8800b">kim_comparison_t</a>          </td>
+          <td class="memname">typedef int <a class="el" href="group__kim__types__reference.html#gae48569e847ff6af9d10add42a4338e7">kim_comparison</a>          </td>
         </tr>
       </table>
 </div>
@@ -352,42 +332,42 @@ A comparison between two sortable objects. <ul>
 
 </div>
 </div><p>
-<a class="anchor" name="g6015e25c120b236938e23290177f5dce"></a><!-- doxytag: member="kim_types.h::kim_string_t" ref="g6015e25c120b236938e23290177f5dce" args="" -->
+<a class="anchor" name="g142374af75d94b931badf53148a7c09c"></a><!-- doxytag: member="kim_types.h::kim_context" ref="g142374af75d94b931badf53148a7c09c" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef const char* <a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>          </td>
+          <td class="memname">typedef const char* <a class="el" href="group__kim__types__reference.html#g142374af75d94b931badf53148a7c09c">kim_context</a>          </td>
         </tr>
       </table>
 </div>
 <div class="memdoc">
 
 <p>
-The KIM String type. See <a class="el" href="kim_string_overview.html">KIM String Overview</a> for more information. 
+The KIM Context type. See kim_context_overview for more information. 
 </div>
 </div><p>
-<a class="anchor" name="g9e10dd2df80df19496dab049a47514cc"></a><!-- doxytag: member="kim_types.h::kim_error_t" ref="g9e10dd2df80df19496dab049a47514cc" args="" -->
+<a class="anchor" name="geea99aa292876e06003b7480087eecb0"></a><!-- doxytag: member="kim_types.h::kim_string" ref="geea99aa292876e06003b7480087eecb0" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef struct kim_error_opaque* <a class="el" href="group__kim__types__reference.html#g9e10dd2df80df19496dab049a47514cc">kim_error_t</a>          </td>
+          <td class="memname">typedef const char* <a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>          </td>
         </tr>
       </table>
 </div>
 <div class="memdoc">
 
 <p>
-A KIM Error object. See <a class="el" href="kim_error_overview.html">KIM Error Overview</a> for more information. 
+The KIM String type. See <a class="el" href="kim_string_overview.html">KIM String Overview</a> for more information. 
 </div>
 </div><p>
-<a class="anchor" name="g24e6b0e3dab12f058c4b2f08113e772a"></a><!-- doxytag: member="kim_types.h::kim_identity_t" ref="g24e6b0e3dab12f058c4b2f08113e772a" args="" -->
+<a class="anchor" name="gf96cafc394b0d02327b4df8ff669d589"></a><!-- doxytag: member="kim_types.h::kim_identity" ref="gf96cafc394b0d02327b4df8ff669d589" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef struct kim_identity_opaque* <a class="el" href="group__kim__types__reference.html#g24e6b0e3dab12f058c4b2f08113e772a">kim_identity_t</a>          </td>
+          <td class="memname">typedef struct kim_identity_opaque* <a class="el" href="group__kim__types__reference.html#gf96cafc394b0d02327b4df8ff669d589">kim_identity</a>          </td>
         </tr>
       </table>
 </div>
@@ -397,12 +377,12 @@ A KIM Error object. See <a class="el" href="kim_error_overview.html">KIM Error O
 A KIM Principal object. See <a class="el" href="kim_identity_overview.html">KIM Identity Overview</a> for more information. 
 </div>
 </div><p>
-<a class="anchor" name="gae2b9068386ddb47eb075f8a21823d2e"></a><!-- doxytag: member="kim_types.h::kim_options_t" ref="gae2b9068386ddb47eb075f8a21823d2e" args="" -->
+<a class="anchor" name="gc61f3242847e46c14c73e423829888ab"></a><!-- doxytag: member="kim_types.h::kim_options" ref="gc61f3242847e46c14c73e423829888ab" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef struct kim_options_opaque* <a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a>          </td>
+          <td class="memname">typedef struct kim_options_opaque* <a class="el" href="group__kim__types__reference.html#gc61f3242847e46c14c73e423829888ab">kim_options</a>          </td>
         </tr>
       </table>
 </div>
@@ -412,12 +392,12 @@ A KIM Principal object. See <a class="el" href="kim_identity_overview.html">KIM
 A KIM Options object. See <a class="el" href="kim_options_overview.html">KIM Options Overview</a> for more information. 
 </div>
 </div><p>
-<a class="anchor" name="g792f9e97aaf39dd7643221545ff475a3"></a><!-- doxytag: member="kim_types.h::kim_selection_hints_t" ref="g792f9e97aaf39dd7643221545ff475a3" args="" -->
+<a class="anchor" name="gda34b5ed23fb7cc4e4db533edec4e942"></a><!-- doxytag: member="kim_types.h::kim_selection_hints" ref="gda34b5ed23fb7cc4e4db533edec4e942" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef struct kim_selection_hints_opaque* <a class="el" href="group__kim__types__reference.html#g792f9e97aaf39dd7643221545ff475a3">kim_selection_hints_t</a>          </td>
+          <td class="memname">typedef struct kim_selection_hints_opaque* <a class="el" href="group__kim__types__reference.html#gda34b5ed23fb7cc4e4db533edec4e942">kim_selection_hints</a>          </td>
         </tr>
       </table>
 </div>
@@ -427,27 +407,12 @@ A KIM Options object. See <a class="el" href="kim_options_overview.html">KIM Opt
 A KIM Selection Hints object. See <a class="el" href="kim_selection_hints_overview.html">KIM Selection Hints Overview</a> for more information. 
 </div>
 </div><p>
-<a class="anchor" name="g732f9e24fe1281aa42ffa2b078a53282"></a><!-- doxytag: member="kim_types.h::kim_favorite_identities_t" ref="g732f9e24fe1281aa42ffa2b078a53282" args="" -->
+<a class="anchor" name="g2da1f3d3fb0bfbcdd77886a4fd64128c"></a><!-- doxytag: member="kim_types.h::kim_preferences" ref="g2da1f3d3fb0bfbcdd77886a4fd64128c" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef struct kim_favorite_identities_opaque* <a class="el" href="group__kim__types__reference.html#g732f9e24fe1281aa42ffa2b078a53282">kim_favorite_identities_t</a>          </td>
-        </tr>
-      </table>
-</div>
-<div class="memdoc">
-
-<p>
-A KIM Favorite Realms object. See <a class="el" href="kim_favorite_identities_overview.html">KIM Favorite Identities Overview</a> for more information. 
-</div>
-</div><p>
-<a class="anchor" name="gdf8ccbcfbb6b79274c31f0ffdf4272eb"></a><!-- doxytag: member="kim_types.h::kim_preferences_t" ref="gdf8ccbcfbb6b79274c31f0ffdf4272eb" args="" -->
-<div class="memitem">
-<div class="memproto">
-      <table class="memname">
-        <tr>
-          <td class="memname">typedef struct kim_preferences_opaque* <a class="el" href="group__kim__types__reference.html#gdf8ccbcfbb6b79274c31f0ffdf4272eb">kim_preferences_t</a>          </td>
+          <td class="memname">typedef struct kim_preferences_opaque* <a class="el" href="group__kim__types__reference.html#g2da1f3d3fb0bfbcdd77886a4fd64128c">kim_preferences</a>          </td>
         </tr>
       </table>
 </div>
@@ -457,12 +422,12 @@ A KIM Favorite Realms object. See <a class="el" href="kim_favorite_identities_ov
 A KIM Preferences object. See <a class="el" href="kim_preferences_overview.html">KIM Preferences Overview</a> for more information. 
 </div>
 </div><p>
-<a class="anchor" name="gf19042fb689c87bfbe381654f75af5b9"></a><!-- doxytag: member="kim_types.h::kim_ccache_iterator_t" ref="gf19042fb689c87bfbe381654f75af5b9" args="" -->
+<a class="anchor" name="gdf94e85294f9f42293bfb6a4ec35817c"></a><!-- doxytag: member="kim_types.h::kim_ccache_iterator" ref="gdf94e85294f9f42293bfb6a4ec35817c" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef struct kim_ccache_iterator_opaque* <a class="el" href="group__kim__types__reference.html#gf19042fb689c87bfbe381654f75af5b9">kim_ccache_iterator_t</a>          </td>
+          <td class="memname">typedef struct kim_ccache_iterator_opaque* <a class="el" href="group__kim__types__reference.html#gdf94e85294f9f42293bfb6a4ec35817c">kim_ccache_iterator</a>          </td>
         </tr>
       </table>
 </div>
@@ -472,12 +437,12 @@ A KIM Preferences object. See <a class="el" href="kim_preferences_overview.html"
 A KIM CCache Iterator object. See <a class="el" href="kim_ccache_overview.html#kim_credential_cache_collection">Acquiring a CCache from the Cache Collection</a> for more information. 
 </div>
 </div><p>
-<a class="anchor" name="g9fd49877bb2360ab487ffbbbe3342393"></a><!-- doxytag: member="kim_types.h::kim_ccache_t" ref="g9fd49877bb2360ab487ffbbbe3342393" args="" -->
+<a class="anchor" name="gaecf0d1ae48c995038dd20b21e3781c2"></a><!-- doxytag: member="kim_types.h::kim_ccache" ref="gaecf0d1ae48c995038dd20b21e3781c2" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef struct kim_ccache_opaque* <a class="el" href="group__kim__types__reference.html#g9fd49877bb2360ab487ffbbbe3342393">kim_ccache_t</a>          </td>
+          <td class="memname">typedef struct kim_ccache_opaque* <a class="el" href="group__kim__types__reference.html#gaecf0d1ae48c995038dd20b21e3781c2">kim_ccache</a>          </td>
         </tr>
       </table>
 </div>
@@ -487,27 +452,27 @@ A KIM CCache Iterator object. See <a class="el" href="kim_ccache_overview.html#k
 A KIM CCache object. See <a class="el" href="kim_ccache_overview.html">KIM CCache Overview</a> for more information. 
 </div>
 </div><p>
-<a class="anchor" name="gaf149c8bd856b9067a9f42ccd2afdd37"></a><!-- doxytag: member="kim_types.h::kim_credential_iterator_t" ref="gaf149c8bd856b9067a9f42ccd2afdd37" args="" -->
+<a class="anchor" name="gdd760f1db624009792f1b5100cd6c4e3"></a><!-- doxytag: member="kim_types.h::kim_credential_iterator" ref="gdd760f1db624009792f1b5100cd6c4e3" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef struct kim_credential_iterator_opaque* <a class="el" href="group__kim__types__reference.html#gaf149c8bd856b9067a9f42ccd2afdd37">kim_credential_iterator_t</a>          </td>
+          <td class="memname">typedef struct kim_credential_iterator_opaque* <a class="el" href="group__kim__types__reference.html#gdd760f1db624009792f1b5100cd6c4e3">kim_credential_iterator</a>          </td>
         </tr>
       </table>
 </div>
 <div class="memdoc">
 
 <p>
-A KIM Credential Iterator object. See <a class="el" href="kim_credential_overview.html#kim_credential_iterator_t">Iterating over the Credentials in a CCache</a> for more information. 
+A KIM Credential Iterator object. See kim_credential_iterator_t for more information. 
 </div>
 </div><p>
-<a class="anchor" name="g0a2be074a5ff409066e73e2db5d6384c"></a><!-- doxytag: member="kim_types.h::kim_credential_t" ref="g0a2be074a5ff409066e73e2db5d6384c" args="" -->
+<a class="anchor" name="ge57b4df3376c4a34a119078a7f4a0030"></a><!-- doxytag: member="kim_types.h::kim_credential" ref="ge57b4df3376c4a34a119078a7f4a0030" args="" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef struct kim_credential_opaque* <a class="el" href="group__kim__types__reference.html#g0a2be074a5ff409066e73e2db5d6384c">kim_credential_t</a>          </td>
+          <td class="memname">typedef struct kim_credential_opaque* <a class="el" href="group__kim__types__reference.html#ge57b4df3376c4a34a119078a7f4a0030">kim_credential</a>          </td>
         </tr>
       </table>
 </div>
@@ -541,44 +506,38 @@ Possible credential states. Credentials may be: <ul>
 </div>
 </div><p>
 <hr><h2>Function Documentation</h2>
-<a class="anchor" name="gd9cfd6a66e9bdcde30a285dc350eb370"></a><!-- doxytag: member="kim_options.h::kim_prompt_callback_default" ref="gd9cfd6a66e9bdcde30a285dc350eb370" args="(kim_options_t *io_options, kim_prompt_type_t in_type, kim_string_t in_title, kim_string_t in_message, kim_string_t in_description, void **out_reply)" -->
+<a class="anchor" name="gbacd03bffb1ba46e4d8e36d19d91a170"></a><!-- doxytag: member="kim_options.h::kim_prompt_callback_default" ref="gbacd03bffb1ba46e4d8e36d19d91a170" args="(kim_prompt_type in_type, kim_string in_title, kim_string in_message, kim_string in_description, char **out_reply)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g8db8bb7876c17d07e1e002b89e5a69eb">kim_error_code_t</a> kim_prompt_callback_default           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_prompt_callback_default           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *&nbsp;</td>
-          <td class="paramname"> <em>io_options</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g8d58b8d10d34b30675b1402a12d9fdd1">kim_prompt_type_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g91894d96e0196e25424084eccdc04eb8">kim_prompt_type</a>&nbsp;</td>
           <td class="paramname"> <em>in_type</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_title</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_message</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_description</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">void **&nbsp;</td>
+          <td class="paramtype">char **&nbsp;</td>
           <td class="paramname"> <em>out_reply</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -594,44 +553,38 @@ Possible credential states. Credentials may be: <ul>
 The default prompt callback. See <a class="el" href="kim_options_overview.html#kim_options_custom_prompt_callback">Providing a Custom Prompt Callback</a> for more information. 
 </div>
 </div><p>
-<a class="anchor" name="gcfbe7cd3e8716d58713a8475f6909908"></a><!-- doxytag: member="kim_options.h::kim_prompt_callback_gui" ref="gcfbe7cd3e8716d58713a8475f6909908" args="(kim_options_t *io_options, kim_prompt_type_t in_type, kim_string_t in_title, kim_string_t in_message, kim_string_t in_description, void **out_reply)" -->
+<a class="anchor" name="g5dc825b3083c371b1cd697efc19a1c22"></a><!-- doxytag: member="kim_options.h::kim_prompt_callback_gui" ref="g5dc825b3083c371b1cd697efc19a1c22" args="(kim_prompt_type in_type, kim_string in_title, kim_string in_message, kim_string in_description, char **out_reply)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g8db8bb7876c17d07e1e002b89e5a69eb">kim_error_code_t</a> kim_prompt_callback_gui           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_prompt_callback_gui           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *&nbsp;</td>
-          <td class="paramname"> <em>io_options</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g8d58b8d10d34b30675b1402a12d9fdd1">kim_prompt_type_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g91894d96e0196e25424084eccdc04eb8">kim_prompt_type</a>&nbsp;</td>
           <td class="paramname"> <em>in_type</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_title</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_message</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_description</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">void **&nbsp;</td>
+          <td class="paramtype">char **&nbsp;</td>
           <td class="paramname"> <em>out_reply</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -647,44 +600,38 @@ The default prompt callback. See <a class="el" href="kim_options_overview.html#k
 The graphical prompt callback. See <a class="el" href="kim_options_overview.html#kim_options_custom_prompt_callback">Providing a Custom Prompt Callback</a> for more information. 
 </div>
 </div><p>
-<a class="anchor" name="g4b36d86709701623eb73e6d0b95d1dd4"></a><!-- doxytag: member="kim_options.h::kim_prompt_callback_cli" ref="g4b36d86709701623eb73e6d0b95d1dd4" args="(kim_options_t *io_options, kim_prompt_type_t in_type, kim_string_t in_title, kim_string_t in_message, kim_string_t in_description, void **out_reply)" -->
+<a class="anchor" name="g7e046e29e68cee691ac652e6b9c0ce93"></a><!-- doxytag: member="kim_options.h::kim_prompt_callback_cli" ref="g7e046e29e68cee691ac652e6b9c0ce93" args="(kim_prompt_type in_type, kim_string in_title, kim_string in_message, kim_string in_description, char **out_reply)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g8db8bb7876c17d07e1e002b89e5a69eb">kim_error_code_t</a> kim_prompt_callback_cli           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_prompt_callback_cli           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *&nbsp;</td>
-          <td class="paramname"> <em>io_options</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g8d58b8d10d34b30675b1402a12d9fdd1">kim_prompt_type_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g91894d96e0196e25424084eccdc04eb8">kim_prompt_type</a>&nbsp;</td>
           <td class="paramname"> <em>in_type</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_title</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_message</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_description</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">void **&nbsp;</td>
+          <td class="paramtype">char **&nbsp;</td>
           <td class="paramname"> <em>out_reply</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -700,44 +647,38 @@ The graphical prompt callback. See <a class="el" href="kim_options_overview.html
 The command line prompt callback. See <a class="el" href="kim_options_overview.html#kim_options_custom_prompt_callback">Providing a Custom Prompt Callback</a> for more information. 
 </div>
 </div><p>
-<a class="anchor" name="g9699effd6079690c8b744ff96dff1914"></a><!-- doxytag: member="kim_options.h::kim_prompt_callback_none" ref="g9699effd6079690c8b744ff96dff1914" args="(kim_options_t *io_options, kim_prompt_type_t in_type, kim_string_t in_title, kim_string_t in_message, kim_string_t in_description, void **out_reply)" -->
+<a class="anchor" name="gcc03830f3eece78fae04b722ca0687c3"></a><!-- doxytag: member="kim_options.h::kim_prompt_callback_none" ref="gcc03830f3eece78fae04b722ca0687c3" args="(kim_prompt_type in_type, kim_string in_title, kim_string in_message, kim_string in_description, char **out_reply)" -->
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__kim__types__reference.html#g8db8bb7876c17d07e1e002b89e5a69eb">kim_error_code_t</a> kim_prompt_callback_none           </td>
+          <td class="memname"><a class="el" href="group__kim__types__reference.html#g40f5fe10ab395bddc34286e0c2ff76eb">kim_error</a> kim_prompt_callback_none           </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#gae2b9068386ddb47eb075f8a21823d2e">kim_options_t</a> *&nbsp;</td>
-          <td class="paramname"> <em>io_options</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g8d58b8d10d34b30675b1402a12d9fdd1">kim_prompt_type_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g91894d96e0196e25424084eccdc04eb8">kim_prompt_type</a>&nbsp;</td>
           <td class="paramname"> <em>in_type</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_title</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_message</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#g6015e25c120b236938e23290177f5dce">kim_string_t</a>&nbsp;</td>
+          <td class="paramtype"><a class="el" href="group__kim__types__reference.html#geea99aa292876e06003b7480087eecb0">kim_string</a>&nbsp;</td>
           <td class="paramname"> <em>in_description</em>, </td>
         </tr>
         <tr>
           <td class="paramkey"></td>
           <td></td>
-          <td class="paramtype">void **&nbsp;</td>
+          <td class="paramtype">char **&nbsp;</td>
           <td class="paramname"> <em>out_reply</em></td><td>&nbsp;</td>
         </tr>
         <tr>
@@ -754,7 +695,7 @@ The prompt callback which always returns an error. Use to turn off prompting ent
 
 </div>
 </div><p>
-<hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:20 2008 for Kerberos Identity Management by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index fccd684de74d01dff7d6070faa425808211d02bf..ae9473c8678c3e69b8d13811d53bf84a7d367638 100644 (file)
@@ -65,7 +65,7 @@ Whether or not you use the credential or ccache APIs depends on whether you want
 <li><a class="el" href="kim_options_overview.html">KIM Options Overview</a></li><li><a class="el" href="group__kim__options__reference.html">KIM Options Reference Documentation</a></li></ul>
 <p>
 <b>KIM Realms List (kim_favorite_identities_t)</b> views and edits the current user's favorite realms list:<ul>
-<li><a class="el" href="kim_favorite_identities_overview.html">KIM Favorite Identities Overview</a></li><li><a class="el" href="group__kim__favorite__identities__reference.html">KIM Favorite Identities Documentation</a></li></ul>
+<li>kim_favorite_identities_overview</li><li>kim_favorite_identities_reference</li></ul>
 <p>
 <b>KIM Preferences (kim_preferences_t)</b> views and edits the current user's preferences:<ul>
 <li><a class="el" href="kim_preferences_overview.html">KIM Preferences Overview</a></li><li><a class="el" href="group__kim__preferences__reference.html">KIM Preferences Documentation</a></li></ul>
@@ -82,7 +82,7 @@ Types and Constants</a></h2>
 <ul>
 <li><a class="el" href="group__kim__types__reference.html">KIM Types and Constants</a> </li>
 </ul>
-<hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:19 2008 for Kerberos Identity Management by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index dded05fcf725df9d103d07323388785ffcea35f9..16bcf14240b78fe5f9b3b122e56afaa6edc4f481 100644 (file)
@@ -13,53 +13,53 @@ The kim_ccache_t object is a reference to a ccache in the cache collection. If o
 <dl class="note" compact><dt><b>Note:</b></dt><dd>KIM ccache APIs are intended for applications and system tools which manage credentials for the user. They are not a substitute for krb5 and GSSAPI functions which obtain service credentials for the purpose of authenticating a client to an application server.</dd></dl>
 <h2><a class="anchor" name="kim_credential_cache_collection">
 Acquiring a CCache from the Cache Collection</a></h2>
-KIM provides a simple iterator API for iterating over the ccaches in the cache collection. First, call <a class="el" href="group__kim__ccache__iterator__reference.html#g2f116eaf59776453db578c9342b8c3e1" title="Get a ccache iterator to enumerate ccaches in the cache collection.">kim_ccache_iterator_create()</a> to obtain an iterator for the cache collection. Then loop calling <a class="el" href="group__kim__ccache__iterator__reference.html#g71dc66abc8b357e318c48debd2cb7916" title="Get the next ccache in the cache collection.">kim_ccache_iterator_next()</a> until either you find the ccache you are looking for or the API returns a NULL ccache, indicating that there are no more ccaches in the cache collection. When you are done with the iterator, call <a class="el" href="group__kim__ccache__iterator__reference.html#ged070acdb8996a34c622675369733d12" title="Free memory associated with a ccache iterator.">kim_ccache_iterator_free()</a>.<p>
-<dl class="note" compact><dt><b>Note:</b></dt><dd><a class="el" href="group__kim__ccache__iterator__reference.html#g71dc66abc8b357e318c48debd2cb7916" title="Get the next ccache in the cache collection.">kim_ccache_iterator_next()</a> returns ccache objects which must be freed with <a class="el" href="group__kim__ccache__reference.html#g2e9e82cd849c9815857397a9b869c45c" title="Free memory associated with a ccache.">kim_ccache_free()</a> to avoid leaking memory.</dd></dl>
-KIM also provides a convenient API <a class="el" href="group__kim__ccache__reference.html#gfc1faee53dbb4b1dab1a5daf8f685f64" title="Find a ccache for a client identity in the cache collection.">kim_ccache_create_from_client_identity()</a> which returns the ccache for a specific client identity, if any exists. Typically callers of this API obtain the client identity using <a class="el" href="group__kim__selection__hints__reference.html#g4c18a97d53150f0b3536e52ab884973d" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a>.<h2><a class="anchor" name="kim_ccache_acquire_default">
+KIM provides a simple iterator API for iterating over the ccaches in the cache collection. First, call <a class="el" href="group__kim__ccache__iterator__reference.html#g3201595a767a17da00f511bf4bb31632" title="Get a ccache iterator to enumerate ccaches in the cache collection.">kim_ccache_iterator_create()</a> to obtain an iterator for the cache collection. Then loop calling <a class="el" href="group__kim__ccache__iterator__reference.html#gf695d88e8be91330f23aaf765f3d19bc" title="Get the next ccache in the cache collection.">kim_ccache_iterator_next()</a> until either you find the ccache you are looking for or the API returns a NULL ccache, indicating that there are no more ccaches in the cache collection. When you are done with the iterator, call <a class="el" href="group__kim__ccache__iterator__reference.html#g2af38d7f654d6cd513fb4bf7cf35ce21" title="Free memory associated with a ccache iterator.">kim_ccache_iterator_free()</a>.<p>
+<dl class="note" compact><dt><b>Note:</b></dt><dd><a class="el" href="group__kim__ccache__iterator__reference.html#gf695d88e8be91330f23aaf765f3d19bc" title="Get the next ccache in the cache collection.">kim_ccache_iterator_next()</a> returns ccache objects which must be freed with <a class="el" href="group__kim__ccache__reference.html#g6c6be543e0ea2b518612be4255e15b9a" title="Free memory associated with a ccache.">kim_ccache_free()</a> to avoid leaking memory.</dd></dl>
+KIM also provides a convenient API <a class="el" href="group__kim__ccache__reference.html#g6ecc14b94ffb57ca8008d0a407bb9c7d" title="Find a ccache for a client identity in the cache collection.">kim_ccache_create_from_client_identity()</a> which returns the ccache for a specific client identity, if any exists. Typically callers of this API obtain the client identity using <a class="el" href="group__kim__selection__hints__reference.html#g5f4130fa05e937b749d7cc5347531abe" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a>.<h2><a class="anchor" name="kim_ccache_acquire_default">
 Acquiring Credentials from the Default CCache</a></h2>
-<a class="el" href="group__kim__ccache__reference.html#gec7b1b8d8514d76bb0608670106ab31c" title="Get the default ccache.">kim_ccache_create_from_default()</a> returns the default ccache. The default ccache is a legacy concept which was replaced by selection hints. Prior to the existence of selection hints, applications always looked at the default ccache for credentials. By setting the system default ccache, users could manually control which credentials each application used. As the number of ccaches and applications has grown, this mechanism has become unusable. You should avoid using this API whenever possible.<h2><a class="anchor" name="kim_ccache_acquire_new">
+<a class="el" href="group__kim__ccache__reference.html#g137761ce872ca756c08e7c31e4101df5" title="Get the default ccache.">kim_ccache_create_from_default()</a> returns the default ccache. The default ccache is a legacy concept which was replaced by selection hints. Prior to the existence of selection hints, applications always looked at the default ccache for credentials. By setting the system default ccache, users could manually control which credentials each application used. As the number of ccaches and applications has grown, this mechanism has become unusable. You should avoid using this API whenever possible.<h2><a class="anchor" name="kim_ccache_acquire_new">
 Acquiring New Credentials in a CCache</a></h2>
-KIM provides the <a class="el" href="group__kim__ccache__reference.html#gda206c3632933a811cb895e5be29bba9" title="Acquire a new initial credential and store it in a ccache.">kim_ccache_create_new()</a> API for acquiring new credentials and storing them in a ccache. Credentials can either be obtained for a specific client identity or by specifying <a class="el" href="group__kim__types__reference.html#g322f65f7d72470d57e21a4c8777ee9fb">KIM_IDENTITY_ANY</a> to allow the user to choose. Typically callers of this API obtain the client identity using <a class="el" href="group__kim__selection__hints__reference.html#g4c18a97d53150f0b3536e52ab884973d" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a>. Depending on the kim_options specified, <a class="el" href="group__kim__ccache__reference.html#gda206c3632933a811cb895e5be29bba9" title="Acquire a new initial credential and store it in a ccache.">kim_ccache_create_new()</a> may present a GUI or command line prompt to obtain information from the user.<p>
-<a class="el" href="group__kim__ccache__reference.html#gd4242a5d6b2cc7222bcb065deb5fdf17" title="Find a ccache containing a valid initial credential in the cache collection, or if...">kim_ccache_create_new_if_needed()</a> searches the cache collection for a ccache for the client identity and if no appropriate ccache is available, attempts to acquire new credentials and store them in a new ccache. Depending on the kim_options specified, <a class="el" href="group__kim__ccache__reference.html#gd4242a5d6b2cc7222bcb065deb5fdf17" title="Find a ccache containing a valid initial credential in the cache collection, or if...">kim_ccache_create_new_if_needed()</a> may present a GUI or command line prompt to obtain information from the user. This function exists for convenience and to avoid code duplication. It can be trivially implemented using <a class="el" href="group__kim__ccache__reference.html#gfc1faee53dbb4b1dab1a5daf8f685f64" title="Find a ccache for a client identity in the cache collection.">kim_ccache_create_from_client_identity()</a> and <a class="el" href="group__kim__ccache__reference.html#gda206c3632933a811cb895e5be29bba9" title="Acquire a new initial credential and store it in a ccache.">kim_ccache_create_new()</a>.<p>
-KIM provides the <a class="el" href="group__kim__ccache__reference.html#g21a41ecd65dcb9d5b6a2e4d45d3f690b" title="Acquire a new initial credential from a keytab and store it in a ccache.">kim_ccache_create_from_keytab()</a> to create credentials using a keytab and store them in the cache collection. A keytab is an on-disk copy of a client identity's secret key. Typically sites use keytabs for client identities that identify a machine or service and protect the keytab with disk permissions. Because a keytab is sufficient to obtain credentials, keytabs will normally only be readable by root, Administrator or some other privileged account. Typically applications use credentials obtained from keytabs to obtain credentials for batch processes. These keytabs and credentials are usually for a special identity used for the batch process rather than a user identity.<h2><a class="anchor" name="kim_ccache_validate">
+KIM provides the <a class="el" href="group__kim__ccache__reference.html#gcdc80c9bfa368eca7cc2d3710b4c0fa9" title="Acquire a new initial credential and store it in a ccache.">kim_ccache_create_new()</a> API for acquiring new credentials and storing them in a ccache. Credentials can either be obtained for a specific client identity or by specifying <a class="el" href="group__kim__types__reference.html#g322f65f7d72470d57e21a4c8777ee9fb">KIM_IDENTITY_ANY</a> to allow the user to choose. Typically callers of this API obtain the client identity using <a class="el" href="group__kim__selection__hints__reference.html#g5f4130fa05e937b749d7cc5347531abe" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a>. Depending on the kim_options specified, <a class="el" href="group__kim__ccache__reference.html#gcdc80c9bfa368eca7cc2d3710b4c0fa9" title="Acquire a new initial credential and store it in a ccache.">kim_ccache_create_new()</a> may present a GUI or command line prompt to obtain information from the user.<p>
+<a class="el" href="group__kim__ccache__reference.html#g52fa72130f4ba6de8cce1224578102ce" title="Find a ccache containing a valid initial credential in the cache collection, or if...">kim_ccache_create_new_if_needed()</a> searches the cache collection for a ccache for the client identity and if no appropriate ccache is available, attempts to acquire new credentials and store them in a new ccache. Depending on the kim_options specified, <a class="el" href="group__kim__ccache__reference.html#g52fa72130f4ba6de8cce1224578102ce" title="Find a ccache containing a valid initial credential in the cache collection, or if...">kim_ccache_create_new_if_needed()</a> may present a GUI or command line prompt to obtain information from the user. This function exists for convenience and to avoid code duplication. It can be trivially implemented using <a class="el" href="group__kim__ccache__reference.html#g6ecc14b94ffb57ca8008d0a407bb9c7d" title="Find a ccache for a client identity in the cache collection.">kim_ccache_create_from_client_identity()</a> and <a class="el" href="group__kim__ccache__reference.html#gcdc80c9bfa368eca7cc2d3710b4c0fa9" title="Acquire a new initial credential and store it in a ccache.">kim_ccache_create_new()</a>.<p>
+KIM provides the <a class="el" href="group__kim__ccache__reference.html#g15cb7e1b9069a610030211cecc5e6232" title="Acquire a new initial credential from a keytab and store it in a ccache.">kim_ccache_create_from_keytab()</a> to create credentials using a keytab and store them in the cache collection. A keytab is an on-disk copy of a client identity's secret key. Typically sites use keytabs for client identities that identify a machine or service and protect the keytab with disk permissions. Because a keytab is sufficient to obtain credentials, keytabs will normally only be readable by root, Administrator or some other privileged account. Typically applications use credentials obtained from keytabs to obtain credentials for batch processes. These keytabs and credentials are usually for a special identity used for the batch process rather than a user identity.<h2><a class="anchor" name="kim_ccache_validate">
 Validating Credentials in a CCache</a></h2>
 A credential with a start time in the future (ie: after the issue date) is called a post-dated credential. Because the KDC administrator may wish to disable a identity, once the start time is reached, all post-dated credentials must be validated before they can be used. Otherwise an attacker using a compromised account could acquire lots of post-dated credentials to circumvent the acccount being disabled.<p>
-KIM provides the <a class="el" href="group__kim__ccache__reference.html#g8bb7d46268621e73629dceefd15ff639" title="Validate the TGT in a ccache.">kim_ccache_validate()</a> API to validate the TGT credential in a ccache. Note that this API replaces any existing credentials with the validated credential.<h2><a class="anchor" name="kim_ccache_renew">
+KIM provides the <a class="el" href="group__kim__ccache__reference.html#g73f5b201d24a58936244fc4e43cd3d59" title="Validate the TGT in a ccache.">kim_ccache_validate()</a> API to validate the TGT credential in a ccache. Note that this API replaces any existing credentials with the validated credential.<h2><a class="anchor" name="kim_ccache_renew">
 Renewing Credentials in a CCache</a></h2>
 A renewable credential can be used to obtain a new identical credential without resending secret information (such as a password) to the KDC. A credential may only be renewed during its renewal lifetime and while valid.<p>
-KIM provides the <a class="el" href="group__kim__ccache__reference.html#gafb44675df9d05af5b899996be14e2b4" title="Renew the TGT in a ccache.">kim_ccache_renew()</a> API to renew the TGT credential in a ccache. Note that this API replaces any existing credentials with the renewed credential.<h2><a class="anchor" name="kim_ccache_verify">
+KIM provides the <a class="el" href="group__kim__ccache__reference.html#g574a0ef674116589dcf57460af81de39" title="Renew the TGT in a ccache.">kim_ccache_renew()</a> API to renew the TGT credential in a ccache. Note that this API replaces any existing credentials with the renewed credential.<h2><a class="anchor" name="kim_ccache_verify">
 Verifying Credentials in a CCache</a></h2>
 When a program acquires TGT credentials for the purpose of authenticating itself to the machine it is running on, it is insufficient for the machine to assume that the caller is authorized just because it got credentials. Instead, the credentials must be verified using a key the local machine. The reason this is necessary is because an attacker can trick the machine into obtaining credentials from any KDC, including malicious ones with the same realm name as the local machine's realm. This exploit is called the Zanarotti attack.<p>
-In order to avoid the Zanarotti attack, the local machine must authenticate the process in the same way an application server would authenticate a client. Like an application server, the local machine must have its own identity in its realm and a keytab for that identity on its local disk. However, rather than forcing system daemons to use the network-oriented calls in the krb5 and GSS APIs, KIM provides the <a class="el" href="group__kim__ccache__reference.html#g3d293fc7338ff9b654e167153df33b5c" title="Verify the TGT in a ccache.">kim_ccache_verify()</a> API to verify credentials directly.<p>
-The most common reason for using <a class="el" href="group__kim__ccache__reference.html#g3d293fc7338ff9b654e167153df33b5c" title="Verify the TGT in a ccache.">kim_ccache_verify()</a> is user login. If the local machine wants to use Kerberos to verify the username and password provided by the user, it must call <a class="el" href="group__kim__ccache__reference.html#g3d293fc7338ff9b654e167153df33b5c" title="Verify the TGT in a ccache.">kim_ccache_verify()</a> on the credentials it obtains to make sure they are really from a KDC it trusts. Another common case is a server which is only using Kerberos internally. For example an LDAP or web server might use a username and password obtained over the network to get Kerberos credentials. In order to make sure they aren't being tricked into talking to the wrong KDC, these servers must also call <a class="el" href="group__kim__ccache__reference.html#g3d293fc7338ff9b654e167153df33b5c" title="Verify the TGT in a ccache.">kim_ccache_verify()</a>.<p>
-The Zanarotti attack is only a concern if the act of accessing the machine gives the process special access. Thus a managed cluster machine with Kerberos-authenticated networked home directories does not need to call <a class="el" href="group__kim__ccache__reference.html#g3d293fc7338ff9b654e167153df33b5c" title="Verify the TGT in a ccache.">kim_ccache_verify()</a>. Even though an attacker can log in as any user on the cluster machine, the attacker can't actually access any of the user's data or use any of their privileges because those are all authenticated via Kerberized application servers (and thus require actually having credentials for the real local realm).<p>
-<a class="el" href="group__kim__ccache__reference.html#g3d293fc7338ff9b654e167153df33b5c" title="Verify the TGT in a ccache.">kim_ccache_verify()</a> provides an option to return success even if the machine's host key is not present. This option exists for sites which have a mix of different machines, some of which are vulnerable to the Zanarotti attack and some are not. If this option is used, it is the responsiblity of the machine's maintainer to obtain a keytab for their machine if it needs one.<h2><a class="anchor" name="kim_ccache_properties">
+In order to avoid the Zanarotti attack, the local machine must authenticate the process in the same way an application server would authenticate a client. Like an application server, the local machine must have its own identity in its realm and a keytab for that identity on its local disk. However, rather than forcing system daemons to use the network-oriented calls in the krb5 and GSS APIs, KIM provides the <a class="el" href="group__kim__ccache__reference.html#g8836113dd86a0dc3cf60df0d76280de6" title="Verify the TGT in a ccache.">kim_ccache_verify()</a> API to verify credentials directly.<p>
+The most common reason for using <a class="el" href="group__kim__ccache__reference.html#g8836113dd86a0dc3cf60df0d76280de6" title="Verify the TGT in a ccache.">kim_ccache_verify()</a> is user login. If the local machine wants to use Kerberos to verify the username and password provided by the user, it must call <a class="el" href="group__kim__ccache__reference.html#g8836113dd86a0dc3cf60df0d76280de6" title="Verify the TGT in a ccache.">kim_ccache_verify()</a> on the credentials it obtains to make sure they are really from a KDC it trusts. Another common case is a server which is only using Kerberos internally. For example an LDAP or web server might use a username and password obtained over the network to get Kerberos credentials. In order to make sure they aren't being tricked into talking to the wrong KDC, these servers must also call <a class="el" href="group__kim__ccache__reference.html#g8836113dd86a0dc3cf60df0d76280de6" title="Verify the TGT in a ccache.">kim_ccache_verify()</a>.<p>
+The Zanarotti attack is only a concern if the act of accessing the machine gives the process special access. Thus a managed cluster machine with Kerberos-authenticated networked home directories does not need to call <a class="el" href="group__kim__ccache__reference.html#g8836113dd86a0dc3cf60df0d76280de6" title="Verify the TGT in a ccache.">kim_ccache_verify()</a>. Even though an attacker can log in as any user on the cluster machine, the attacker can't actually access any of the user's data or use any of their privileges because those are all authenticated via Kerberized application servers (and thus require actually having credentials for the real local realm).<p>
+<a class="el" href="group__kim__ccache__reference.html#g8836113dd86a0dc3cf60df0d76280de6" title="Verify the TGT in a ccache.">kim_ccache_verify()</a> provides an option to return success even if the machine's host key is not present. This option exists for sites which have a mix of different machines, some of which are vulnerable to the Zanarotti attack and some are not. If this option is used, it is the responsiblity of the machine's maintainer to obtain a keytab for their machine if it needs one.<h2><a class="anchor" name="kim_ccache_properties">
 Examining CCache Properties</a></h2>
 <ul>
-<li><a class="el" href="group__kim__ccache__reference.html#gbf079f8dff05db6bb9aa152df83029fb" title="Get the type of a ccache.">kim_ccache_get_type()</a> returns the type of the ccache. Types include "API" for CCAPI ccaches, "FILE" for file-based ccaches and "MEMORY" for single-process in-memory ccaches.</li>
+<li><a class="el" href="group__kim__ccache__reference.html#ge49fc64af74ad437de6becdbee876117" title="Get the type of a ccache.">kim_ccache_get_type()</a> returns the type of the ccache. Types include "API" for CCAPI ccaches, "FILE" for file-based ccaches and "MEMORY" for single-process in-memory ccaches.</li>
 </ul>
 <ul>
-<li><a class="el" href="group__kim__ccache__reference.html#gec1c9af407a6554401a7f32c49cabd6a" title="Get the name of a ccache.">kim_ccache_get_name()</a> returns the name of the ccache. A ccache's name identifies the ccache uniquely among ccaches of the same type. Note that two ccaches with different types may have the same name.</li>
+<li><a class="el" href="group__kim__ccache__reference.html#g18d612eddf05b4deb11e97071b5ad17b" title="Get the name of a ccache.">kim_ccache_get_name()</a> returns the name of the ccache. A ccache's name identifies the ccache uniquely among ccaches of the same type. Note that two ccaches with different types may have the same name.</li>
 </ul>
 <ul>
-<li><a class="el" href="group__kim__ccache__reference.html#g3a0f51defaf127b77b1e44092a352e31" title="Get the type and name for a ccache in display format.">kim_ccache_get_display_name()</a> returns a display string which uniquely identifies a ccache. A ccache display name is of the form "&lt;type&gt;:&lt;name&gt;" and can be displayed to the user or used as an argument to certain krb5 APIs, such as krb5_cc_resolve().</li>
+<li><a class="el" href="group__kim__ccache__reference.html#ga89f6bfa35c436621ff324b805a7c669" title="Get the type and name for a ccache in display format.">kim_ccache_get_display_name()</a> returns a display string which uniquely identifies a ccache. A ccache display name is of the form "&lt;type&gt;:&lt;name&gt;" and can be displayed to the user or used as an argument to certain krb5 APIs, such as krb5_cc_resolve().</li>
 </ul>
 <ul>
-<li><a class="el" href="group__kim__ccache__reference.html#gd5abbe1c6e1a0d191695bb373f9a7957" title="Get the client identity for a ccache.">kim_ccache_get_client_identity()</a> returns the ccache's client identity.</li>
+<li><a class="el" href="group__kim__ccache__reference.html#g754252665d1cd87d9ee8f6f51d62f211" title="Get the client identity for a ccache.">kim_ccache_get_client_identity()</a> returns the ccache's client identity.</li>
 </ul>
 <ul>
-<li><a class="el" href="group__kim__ccache__reference.html#g78ff442478e0faa46c63774c49a7b51e" title="Get the first valid credential in a ccache.">kim_ccache_get_valid_credential()</a> returns the first valid TGT in the ccache for its client identity. If there are no TGTs in the ccache, it returns the first valid non-TGT credential for the ccache's client identity. TGT credentials (ie: "ticket-granting tickets") are credentials for the krbtgt service: a service identity of the form "krbtgt/&lt;REALM&gt;@&lt;REALM&gt;". These credentials allow the entity named by the client identity to obtain additional credentials without resending shared secrets (such as a password) to the KDC. Kerberos uses TGTs to provide single sign-on authentication.</li>
+<li><a class="el" href="group__kim__ccache__reference.html#g0fbacc48909c484623329b8131bfb3d0" title="Get the first valid credential in a ccache.">kim_ccache_get_valid_credential()</a> returns the first valid TGT in the ccache for its client identity. If there are no TGTs in the ccache, it returns the first valid non-TGT credential for the ccache's client identity. TGT credentials (ie: "ticket-granting tickets") are credentials for the krbtgt service: a service identity of the form "krbtgt/&lt;REALM&gt;@&lt;REALM&gt;". These credentials allow the entity named by the client identity to obtain additional credentials without resending shared secrets (such as a password) to the KDC. Kerberos uses TGTs to provide single sign-on authentication.</li>
 </ul>
 <ul>
-<li><a class="el" href="group__kim__ccache__reference.html#gb8793586b7c4054f2219b28920bf12bd" title="Get the time when the credentials in the ccache become valid.">kim_ccache_get_start_time()</a> returns when the credential's in a ccache will become valid. Credentials may be "post-dated" which means that their lifetime starts sometime in the future. Note that when a post-dated credential's start time is reached, the credential must be validated. See <a class="el" href="kim_credential_overview.html#kim_credential_validate">Validating Credentials</a> for more information.</li>
+<li><a class="el" href="group__kim__ccache__reference.html#gb2165acd652eddaeb61c8f6b8c3a16f7" title="Get the time when the credentials in the ccache become valid.">kim_ccache_get_start_time()</a> returns when the credential's in a ccache will become valid. Credentials may be "post-dated" which means that their lifetime starts sometime in the future. Note that when a post-dated credential's start time is reached, the credential must be validated. See <a class="el" href="kim_credential_overview.html#kim_credential_validate">Validating Credentials</a> for more information.</li>
 </ul>
 <ul>
-<li><a class="el" href="group__kim__ccache__reference.html#g2cbb6b78cac2bb2e4359caf8b53d60c5" title="Get the time when the credentials in the ccache will expire.">kim_ccache_get_expiration_time()</a> returns when the credential's in a ccache will expire. Credentials are time limited by the lifetime of the credential. While you can request a credential of any lifetime, the KDC limits the credential lifetime to a administrator-defined maximum. Typically credential lifetime range from 10 to 21 hours.</li>
+<li><a class="el" href="group__kim__ccache__reference.html#g52693fc485cf2e3bd5cf0c0a3d414d8a" title="Get the time when the credentials in the ccache will expire.">kim_ccache_get_expiration_time()</a> returns when the credential's in a ccache will expire. Credentials are time limited by the lifetime of the credential. While you can request a credential of any lifetime, the KDC limits the credential lifetime to a administrator-defined maximum. Typically credential lifetime range from 10 to 21 hours.</li>
 </ul>
 <ul>
-<li><a class="el" href="group__kim__ccache__reference.html#gfaad7545fbdb381faed8d2378009bd6e" title="Get the time when the credentials in the ccache will no longer be renewable.">kim_ccache_get_renewal_expiration_time()</a> returns when the credential's in a ccache will no longer be renewable. Valid credentials may be renewed up until their renewal expiration time. Renewing credentials acquires a fresh set of credentials with a full lifetime without resending secrets to the KDC (such as a password). If credentials are not renewable, this function will return an error.</li>
+<li><a class="el" href="group__kim__ccache__reference.html#g01b4cbb88abf6aafd2efdaad91d74f0f" title="Get the time when the credentials in the ccache will no longer be renewable.">kim_ccache_get_renewal_expiration_time()</a> returns when the credential's in a ccache will no longer be renewable. Valid credentials may be renewed up until their renewal expiration time. Renewing credentials acquires a fresh set of credentials with a full lifetime without resending secrets to the KDC (such as a password). If credentials are not renewable, this function will return an error.</li>
 </ul>
-See <a class="el" href="group__kim__ccache__reference.html">KIM CCache Reference Documentation</a> and <a class="el" href="group__kim__ccache__iterator__reference.html">KIM CCache Iterator Reference Documentation</a> for information on specific APIs. <hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:19 2008 for Kerberos Identity Management by&nbsp;
+See <a class="el" href="group__kim__ccache__reference.html">KIM CCache Reference Documentation</a> and <a class="el" href="group__kim__ccache__iterator__reference.html">KIM CCache Iterator Reference Documentation</a> for information on specific APIs. <hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index cdf33a10110bd9f89a17e9f0c5fda666457aea67..6b47baf76e3207cc8a5c51d63c612a76effc4e09 100644 (file)
@@ -8,55 +8,55 @@
 <h1><a class="anchor" name="kim_credential_overview">KIM Credential Overview</a></h1><h2><a class="anchor" name="kim_credential_introduction">
 Introduction</a></h2>
 A Kerberos credential (also called a "Kerberos ticket") is a time-limited token issued by a KDC which authenticates the entity named by the credential's client identity to the service named by the credential's service identity.<p>
-The kim_credential_t object contains a single Kerberos credential. KIM credentials objects are always copies of credentials, not references to credentials stored in the cache collection. Modifying credential objects in the ccache collection will not change any existing KIM credential objects.<p>
+The kim_credential object contains a single Kerberos credential. KIM credentials objects are always copies of credentials, not references to credentials stored in the cache collection. Modifying credential objects in the ccache collection will not change any existing KIM credential objects.<p>
 KIM credential APIs are intended for applications and system tools which manage credentials for the user. They are not a substitute for krb5 and GSSAPI functions which obtain service credentials for the purpose of authenticating a client to an application server.<p>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>Many of the APIs listed below have equivalent functions which operate on ccaches. In most cases applications will want to use the ccache versions of these APIs since they automatically store any newly created credentials. See <a class="el" href="kim_ccache_overview.html">KIM CCache Overview</a> for more information.</dd></dl>
 <h2><a class="anchor" name="kim_credential_acquire_new">
 Acquiring New Credentials</a></h2>
-KIM provides the <a class="el" href="group__kim__credential__reference.html#g318fdf6ea1e937a35e947dab6efa695d" title="Acquire a new initial credential.">kim_credential_create_new()</a> API for acquiring new credentials. Credentials can either be obtained for a specific client identity or by specifying <a class="el" href="group__kim__types__reference.html#g322f65f7d72470d57e21a4c8777ee9fb">KIM_IDENTITY_ANY</a> to allow the user to choose. Typically callers of this API obtain the client identity using <a class="el" href="group__kim__selection__hints__reference.html#g4c18a97d53150f0b3536e52ab884973d" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a>. Depending on the kim_options specified, <a class="el" href="group__kim__credential__reference.html#g318fdf6ea1e937a35e947dab6efa695d" title="Acquire a new initial credential.">kim_credential_create_new()</a> may present a GUI or command line prompt to obtain information from the user.<p>
-KIM provides the <a class="el" href="group__kim__credential__reference.html#g465dab295b62d786d7e83e95409fae94" title="Acquire a new initial credential from a keytab.">kim_credential_create_from_keytab()</a> to create credentials using a keytab. A keytab is an on-disk copy of a client identity's secret key. Typically sites use keytabs for client identities that identify a machine or service and protect the keytab with disk permissions. Because a keytab is sufficient to obtain credentials, keytabs will normally only be readable by root, Administrator or some other privileged account. Typically applications use credentials obtained from keytabs to obtain credentials for batch processes. These keytabs and credentials are usually for a special identity used for the batch process rather than a user identity.<h2><a class="anchor" name="kim_credential_validate">
+KIM provides the <a class="el" href="group__kim__credential__reference.html#ga02a96b9ad6fbc64007f741fa21c8814" title="Acquire a new initial credential.">kim_credential_create_new()</a> API for acquiring new credentials. Credentials can either be obtained for a specific client identity or by specifying <a class="el" href="group__kim__types__reference.html#g322f65f7d72470d57e21a4c8777ee9fb">KIM_IDENTITY_ANY</a> to allow the user to choose. Typically callers of this API obtain the client identity using <a class="el" href="group__kim__selection__hints__reference.html#g5f4130fa05e937b749d7cc5347531abe" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a>. Depending on the kim_options specified, <a class="el" href="group__kim__credential__reference.html#ga02a96b9ad6fbc64007f741fa21c8814" title="Acquire a new initial credential.">kim_credential_create_new()</a> may present a GUI or command line prompt to obtain information from the user.<p>
+KIM provides the <a class="el" href="group__kim__credential__reference.html#g42c9498e4e928fce495867a1d1835dc3" title="Acquire a new initial credential from a keytab.">kim_credential_create_from_keytab()</a> to create credentials using a keytab. A keytab is an on-disk copy of a client identity's secret key. Typically sites use keytabs for client identities that identify a machine or service and protect the keytab with disk permissions. Because a keytab is sufficient to obtain credentials, keytabs will normally only be readable by root, Administrator or some other privileged account. Typically applications use credentials obtained from keytabs to obtain credentials for batch processes. These keytabs and credentials are usually for a special identity used for the batch process rather than a user identity.<h2><a class="anchor" name="kim_credential_validate">
 Validating Credentials</a></h2>
 A credential with a start time in the future (ie: after the issue date) is called a post-dated credential. Because the KDC administrator may wish to disable a identity, once the start time is reached, all post-dated credentials must be validated before they can be used. Otherwise an attacker using a compromised account could acquire lots of post-dated credentials to circumvent the acccount being disabled.<p>
-KIM provides the <a class="el" href="group__kim__credential__reference.html#g9cd6ba59236babb4e79a680fa54b5037" title="Validate a TGT credential.">kim_credential_validate()</a> API to validate a credential. Note that this API replaces the credential object with a new validated credential object. If you wish to store the new credential in the ccache collection you must either call <a class="el" href="group__kim__credential__reference.html#g894c7144185b1112f6872fdf27fb016d" title="Store a credential in a ccache in the cache collection.">kim_credential_store()</a> on the validated credential or use <a class="el" href="group__kim__ccache__reference.html#g8bb7d46268621e73629dceefd15ff639" title="Validate the TGT in a ccache.">kim_ccache_validate()</a> instead.<h2><a class="anchor" name="kim_credential_renew">
+KIM provides the <a class="el" href="group__kim__credential__reference.html#g63a591ef509219ae83d11b635065984d" title="Validate a TGT credential.">kim_credential_validate()</a> API to validate a credential. Note that this API replaces the credential object with a new validated credential object. If you wish to store the new credential in the ccache collection you must either call <a class="el" href="group__kim__credential__reference.html#g52db69b8f2289a4b60a3eddb5cb6b671" title="Store a credential in a ccache in the cache collection.">kim_credential_store()</a> on the validated credential or use <a class="el" href="group__kim__ccache__reference.html#g73f5b201d24a58936244fc4e43cd3d59" title="Validate the TGT in a ccache.">kim_ccache_validate()</a> instead.<h2><a class="anchor" name="kim_credential_renew">
 Renewing Credentials</a></h2>
 A renewable credential can be used to obtain a new identical credential without resending secret information (such as a password) to the KDC. A credential may only be renewed during its renewal lifetime and while valid.<p>
-KIM provides the <a class="el" href="group__kim__credential__reference.html#g99ac2c178bec484311cd7fc2cbb7e05e" title="Renew a TGT credential.">kim_credential_renew()</a> API to renew a credential. Note that this API replaces the credential object with a new renewed credential object. If you wish to store the new credential in the ccache collection you must either call <a class="el" href="group__kim__credential__reference.html#g894c7144185b1112f6872fdf27fb016d" title="Store a credential in a ccache in the cache collection.">kim_credential_store()</a> on the renewed credential or use <a class="el" href="group__kim__ccache__reference.html#gafb44675df9d05af5b899996be14e2b4" title="Renew the TGT in a ccache.">kim_ccache_renew()</a> instead.<h2><a class="anchor" name="kim_credential_storing">
+KIM provides the <a class="el" href="group__kim__credential__reference.html#g18f43112f7ae046b2a5918b061a2072d" title="Renew a TGT credential.">kim_credential_renew()</a> API to renew a credential. Note that this API replaces the credential object with a new renewed credential object. If you wish to store the new credential in the ccache collection you must either call <a class="el" href="group__kim__credential__reference.html#g52db69b8f2289a4b60a3eddb5cb6b671" title="Store a credential in a ccache in the cache collection.">kim_credential_store()</a> on the renewed credential or use <a class="el" href="group__kim__ccache__reference.html#g574a0ef674116589dcf57460af81de39" title="Renew the TGT in a ccache.">kim_ccache_renew()</a> instead.<h2><a class="anchor" name="kim_credential_storing">
 Storing Credentials in the Cache Collection</a></h2>
-KIM credential objects may be stored in the ccache collection using <a class="el" href="group__kim__credential__reference.html#g894c7144185b1112f6872fdf27fb016d" title="Store a credential in a ccache in the cache collection.">kim_credential_store()</a>. This function runs any KIM authentication plugins on the credential and if the plugins return successfully, creates a new ccache for the credential's client identity in the cache collection and stores the credential in that ccache. Any existing ccaches and credentials for that client identity will be overwritten. <a class="el" href="group__kim__credential__reference.html#g894c7144185b1112f6872fdf27fb016d" title="Store a credential in a ccache in the cache collection.">kim_credential_store()</a> may optionally return a kim_ccache_t object for the new ccache if you need to perform further operations on the new ccache.<p>
-Most of the time if you plan to store the credentials you are manipulating, you should use one of KIM ccache APIs. These functions perform the same operations except that they also call <a class="el" href="group__kim__credential__reference.html#g894c7144185b1112f6872fdf27fb016d" title="Store a credential in a ccache in the cache collection.">kim_credential_store()</a> any time the credential object changes. See <a class="el" href="kim_ccache_overview.html">KIM CCache Overview</a> for more information.<h2><a class="anchor" name="kim_credential_iterator_t">
+KIM credential objects may be stored in the ccache collection using <a class="el" href="group__kim__credential__reference.html#g52db69b8f2289a4b60a3eddb5cb6b671" title="Store a credential in a ccache in the cache collection.">kim_credential_store()</a>. This function runs any KIM authentication plugins on the credential and if the plugins return successfully, creates a new ccache for the credential's client identity in the cache collection and stores the credential in that ccache. Any existing ccaches and credentials for that client identity will be overwritten. <a class="el" href="group__kim__credential__reference.html#g52db69b8f2289a4b60a3eddb5cb6b671" title="Store a credential in a ccache in the cache collection.">kim_credential_store()</a> may optionally return a kim_ccache object for the new ccache if you need to perform further operations on the new ccache.<p>
+Most of the time if you plan to store the credentials you are manipulating, you should use one of KIM ccache APIs. These functions perform the same operations except that they also call <a class="el" href="group__kim__credential__reference.html#g52db69b8f2289a4b60a3eddb5cb6b671" title="Store a credential in a ccache in the cache collection.">kim_credential_store()</a> any time the credential object changes. See <a class="el" href="kim_ccache_overview.html">KIM CCache Overview</a> for more information.<h2><a class="anchor" name="kim_credential_iterator">
 Iterating over the Credentials in a CCache</a></h2>
-KIM provides a simple iterator API for iterating over the credentials in a ccache. First, call <a class="el" href="group__kim__credential__iterator__reference.html#g4a1f55aa90053b8d59281a0f7d12590c" title="Get a credential iterator to enumerate credentials in a ccache.">kim_credential_iterator_create()</a> to obtain an iterator for a ccache. Then loop calling <a class="el" href="group__kim__credential__iterator__reference.html#ge7f5bc2cf2cc42c3e39fd4f945b474cd" title="Get the next credential in a ccache.">kim_credential_iterator_next()</a> until either you find the credential you are looking for or the API returns a NULL credential, indicating that there are no more credentials in the ccache. When you are done with the iterator, call <a class="el" href="group__kim__credential__iterator__reference.html#gb32e376af0b819cb3c9ca30f3db1c86b" title="Free memory associated with a credential iterator.">kim_credential_iterator_free()</a>.<p>
-<dl class="note" compact><dt><b>Note:</b></dt><dd><a class="el" href="group__kim__credential__iterator__reference.html#ge7f5bc2cf2cc42c3e39fd4f945b474cd" title="Get the next credential in a ccache.">kim_credential_iterator_next()</a> returns credential objects which must be freed with <a class="el" href="group__kim__credential__reference.html#gb92567dd6b60e525f343cc401e1949aa" title="Free memory associated with a credential object.">kim_credential_free()</a> to avoid leaking memory.</dd></dl>
+KIM provides a simple iterator API for iterating over the credentials in a ccache. First, call <a class="el" href="group__kim__credential__iterator__reference.html#g5211e3c0c8881cd869eb20c03881304a" title="Get a credential iterator to enumerate credentials in a ccache.">kim_credential_iterator_create()</a> to obtain an iterator for a ccache. Then loop calling <a class="el" href="group__kim__credential__iterator__reference.html#g68e99dbf9a54dff3f47a0852b17efd1f" title="Get the next credential in a ccache.">kim_credential_iterator_next()</a> until either you find the credential you are looking for or the API returns a NULL credential, indicating that there are no more credentials in the ccache. When you are done with the iterator, call <a class="el" href="group__kim__credential__iterator__reference.html#gd6c2fc4ec6698769434ad6ed28828933" title="Free memory associated with a credential iterator.">kim_credential_iterator_free()</a>.<p>
+<dl class="note" compact><dt><b>Note:</b></dt><dd><a class="el" href="group__kim__credential__iterator__reference.html#g68e99dbf9a54dff3f47a0852b17efd1f" title="Get the next credential in a ccache.">kim_credential_iterator_next()</a> returns credential objects which must be freed with <a class="el" href="group__kim__credential__reference.html#g5609d3883f82eb3938a2d80e06bd0845" title="Free memory associated with a credential object.">kim_credential_free()</a> to avoid leaking memory.</dd></dl>
 <h2><a class="anchor" name="kim_credential_verify">
 Verifying Credentials</a></h2>
 When a program acquires TGT credentials for the purpose of authenticating itself to the machine it is running on, it is insufficient for the machine to assume that the caller is authorized just because it got credentials. Instead, the credentials must be verified using a key the local machine. The reason this is necessary is because an attacker can trick the machine into obtaining credentials from any KDC, including malicious ones with the same realm name as the local machine's realm. This exploit is called the Zanarotti attack.<p>
-In order to avoid the Zanarotti attack, the local machine must authenticate the process in the same way an application server would authenticate a client. Like an application server, the local machine must have its own identity in its realm and a keytab for that identity on its local disk. However, rather than forcing system daemons to use the network-oriented calls in the krb5 and GSS APIs, KIM provides the <a class="el" href="group__kim__credential__reference.html#g390a74d4d834fd1b5c2e7aebcd783e32" title="Verify a TGT credential.">kim_credential_verify()</a> API to verify credentials directly.<p>
-The most common reason for using <a class="el" href="group__kim__credential__reference.html#g390a74d4d834fd1b5c2e7aebcd783e32" title="Verify a TGT credential.">kim_credential_verify()</a> is user login. If the local machine wants to use Kerberos to verify the username and password provided by the user, it must call <a class="el" href="group__kim__credential__reference.html#g390a74d4d834fd1b5c2e7aebcd783e32" title="Verify a TGT credential.">kim_credential_verify()</a> on the credentials it obtains to make sure they are really from a KDC it trusts. Another common case is a server which is only using Kerberos internally. For example an LDAP or web server might use a username and password obtained over the network to get Kerberos credentials. In order to make sure they aren't being tricked into talking to the wrong KDC, these servers must also call <a class="el" href="group__kim__credential__reference.html#g390a74d4d834fd1b5c2e7aebcd783e32" title="Verify a TGT credential.">kim_credential_verify()</a>.<p>
-The Zanarotti attack is only a concern if the act of accessing the machine gives the process special access. Thus a managed cluster machine with Kerberos-authenticated networked home directories does not need to call <a class="el" href="group__kim__credential__reference.html#g390a74d4d834fd1b5c2e7aebcd783e32" title="Verify a TGT credential.">kim_credential_verify()</a>. Even though an attacker can log in as any user on the cluster machine, the attacker can't actually access any of the user's data or use any of their privileges because those are all authenticated via Kerberized application servers (and thus require actually having credentials for the real local realm).<p>
-<a class="el" href="group__kim__credential__reference.html#g390a74d4d834fd1b5c2e7aebcd783e32" title="Verify a TGT credential.">kim_credential_verify()</a> provides an option to return success even if the machine's host key is not present. This option exists for sites which have a mix of different machines, some of which are vulnerable to the Zanarotti attack and some are not. If this option is used, it is the responsiblity of the machine's maintainer to obtain a keytab for their machine if it needs one.<h2><a class="anchor" name="kim_credential_properties">
+In order to avoid the Zanarotti attack, the local machine must authenticate the process in the same way an application server would authenticate a client. Like an application server, the local machine must have its own identity in its realm and a keytab for that identity on its local disk. However, rather than forcing system daemons to use the network-oriented calls in the krb5 and GSS APIs, KIM provides the <a class="el" href="group__kim__credential__reference.html#gf10b622ed5ea209bf06ba708732b6c07" title="Verify a TGT credential.">kim_credential_verify()</a> API to verify credentials directly.<p>
+The most common reason for using <a class="el" href="group__kim__credential__reference.html#gf10b622ed5ea209bf06ba708732b6c07" title="Verify a TGT credential.">kim_credential_verify()</a> is user login. If the local machine wants to use Kerberos to verify the username and password provided by the user, it must call <a class="el" href="group__kim__credential__reference.html#gf10b622ed5ea209bf06ba708732b6c07" title="Verify a TGT credential.">kim_credential_verify()</a> on the credentials it obtains to make sure they are really from a KDC it trusts. Another common case is a server which is only using Kerberos internally. For example an LDAP or web server might use a username and password obtained over the network to get Kerberos credentials. In order to make sure they aren't being tricked into talking to the wrong KDC, these servers must also call <a class="el" href="group__kim__credential__reference.html#gf10b622ed5ea209bf06ba708732b6c07" title="Verify a TGT credential.">kim_credential_verify()</a>.<p>
+The Zanarotti attack is only a concern if the act of accessing the machine gives the process special access. Thus a managed cluster machine with Kerberos-authenticated networked home directories does not need to call <a class="el" href="group__kim__credential__reference.html#gf10b622ed5ea209bf06ba708732b6c07" title="Verify a TGT credential.">kim_credential_verify()</a>. Even though an attacker can log in as any user on the cluster machine, the attacker can't actually access any of the user's data or use any of their privileges because those are all authenticated via Kerberized application servers (and thus require actually having credentials for the real local realm).<p>
+<a class="el" href="group__kim__credential__reference.html#gf10b622ed5ea209bf06ba708732b6c07" title="Verify a TGT credential.">kim_credential_verify()</a> provides an option to return success even if the machine's host key is not present. This option exists for sites which have a mix of different machines, some of which are vulnerable to the Zanarotti attack and some are not. If this option is used, it is the responsiblity of the machine's maintainer to obtain a keytab for their machine if it needs one.<h2><a class="anchor" name="kim_credential_properties">
 Examining Credential Properties</a></h2>
 <ul>
-<li><a class="el" href="group__kim__credential__reference.html#gfab660faba5a6b2dc0f067dfe3e6235f" title="Get the client identity of a credential object.">kim_credential_get_client_identity()</a> returns the credential's client identity.</li>
+<li><a class="el" href="group__kim__credential__reference.html#g823f10b2a4db687fb555920808113392" title="Get the client identity of a credential object.">kim_credential_get_client_identity()</a> returns the credential's client identity.</li>
 </ul>
 <ul>
-<li><a class="el" href="group__kim__credential__reference.html#g3bf00a133fbfe8fd3f9b6cba55ac6045" title="Get the service identity of a credential object.">kim_credential_get_service_identity()</a> returns the credential's service identity.</li>
+<li><a class="el" href="group__kim__credential__reference.html#g05208e303966c4c89371c18135de9cd7" title="Get the service identity of a credential object.">kim_credential_get_service_identity()</a> returns the credential's service identity.</li>
 </ul>
 <ul>
-<li><a class="el" href="group__kim__credential__reference.html#gdf4e9b444c5050199476721a5cec67f7" title="Check if a credential is a ticket granting ticket.">kim_credential_is_tgt()</a> returns whether the credential is a TGT (ie: "ticket-granting ticket"). TGTs are credentials for the krbtgt service: a service identity of the form "krbtgt/&lt;REALM&gt;@&lt;REALM&gt;". These credentials allow the entity named by the client identity to obtain additional service credentials without resending shared secrets (such as a password) to the KDC. Kerberos uses TGTs to provide single sign-on authentication.</li>
+<li><a class="el" href="group__kim__credential__reference.html#gcf207597546b2397e8534c5bb354001a" title="Check if a credential is a ticket granting ticket.">kim_credential_is_tgt()</a> returns whether the credential is a TGT (ie: "ticket-granting ticket"). TGTs are credentials for the krbtgt service: a service identity of the form "krbtgt/&lt;REALM&gt;@&lt;REALM&gt;". These credentials allow the entity named by the client identity to obtain additional service credentials without resending shared secrets (such as a password) to the KDC. Kerberos uses TGTs to provide single sign-on authentication.</li>
 </ul>
 <ul>
 <li>kim_credential_is_valid() returns whether the credential is valid and if not why the credential is not valid.</li>
 </ul>
 <ul>
-<li><a class="el" href="group__kim__credential__reference.html#g48b41bc28845e209c41b087d28250e2a" title="Get the time when the credentials become valid.">kim_credential_get_start_time()</a> returns when the credential will become valid. Credentials may be "post-dated" which means that their lifetime starts sometime in the future. Note that when a post-dated credential's start time is reached, the credential must be validated. See <a class="el" href="kim_credential_overview.html#kim_credential_validate">Validating Credentials</a> for more information.</li>
+<li><a class="el" href="group__kim__credential__reference.html#gcae9e3e2b129e68215eedf588da60bea" title="Get the time when the credentials become valid.">kim_credential_get_start_time()</a> returns when the credential will become valid. Credentials may be "post-dated" which means that their lifetime starts sometime in the future. Note that when a post-dated credential's start time is reached, the credential must be validated. See <a class="el" href="kim_credential_overview.html#kim_credential_validate">Validating Credentials</a> for more information.</li>
 </ul>
 <ul>
-<li><a class="el" href="group__kim__credential__reference.html#g07fc4d11e42bf7d32be67fcac531c372" title="Get the time when the credentials will expire.">kim_credential_get_expiration_time()</a> returns when the credential will expire. Credentials are time limited by the lifetime of the credential. While you can request a credential of any lifetime, the KDC limits the credential lifetime to a administrator-defined maximum. Typically credential lifetime range from 10 to 21 hours.</li>
+<li><a class="el" href="group__kim__credential__reference.html#gba6367f04f832e086a8b0c01ebd3f77e" title="Get the time when the credentials will expire.">kim_credential_get_expiration_time()</a> returns when the credential will expire. Credentials are time limited by the lifetime of the credential. While you can request a credential of any lifetime, the KDC limits the credential lifetime to a administrator-defined maximum. Typically credential lifetime range from 10 to 21 hours.</li>
 </ul>
 <ul>
-<li><a class="el" href="group__kim__credential__reference.html#g1723a7c06e32ee954be214767bc55194" title="Get the time when the credentials will no longer be renewable.">kim_credential_get_renewal_expiration_time()</a> returns when the credential will no longer be renewable. Valid credentials may be renewed up until their renewal expiration time. Renewing credentials acquires a fresh set of credentials with a full lifetime without resending secrets to the KDC (such as a password). If credentials are not renewable, this function will return an error.</li>
+<li><a class="el" href="group__kim__credential__reference.html#g4e50b4abf3efc36ed10c3049c9ff9a48" title="Get the time when the credentials will no longer be renewable.">kim_credential_get_renewal_expiration_time()</a> returns when the credential will no longer be renewable. Valid credentials may be renewed up until their renewal expiration time. Renewing credentials acquires a fresh set of credentials with a full lifetime without resending secrets to the KDC (such as a password). If credentials are not renewable, this function will return an error.</li>
 </ul>
-See <a class="el" href="group__kim__credential__reference.html">KIM Credential Reference Documentation</a> and <a class="el" href="group__kim__credential__iterator__reference.html">KIM Credential Iterator Reference Documentation</a> for information on specific APIs. <hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:19 2008 for Kerberos Identity Management by&nbsp;
+See <a class="el" href="group__kim__credential__reference.html">KIM Credential Reference Documentation</a> and <a class="el" href="group__kim__credential__iterator__reference.html">KIM Credential Iterator Reference Documentation</a> for information on specific APIs. <hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index 7f3d821c041c31215d2adc3541ca262025b4084f..b8d02df68af17f3d6a86970496e2d650f6dfcda3 100644 (file)
@@ -5,11 +5,11 @@
 <link href="tabs.css" rel="stylesheet" type="text/css">
 </head><body>
 <!-- Generated by Doxygen 1.5.3 -->
-<h1><a class="anchor" name="kim_error_overview">KIM Error Overview</a></h1>An error object. Error objects consist of a machine readable error code for for programmatic error handling and a string describing the error. All KIM APIs return kim_errors with the exception of memory deallocation functions and the kim_error_t APIs which return pieces of a kim_error_t object.<p>
-Functions which return successfully will return <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a> (NULL). Because <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a> does not need to be freed, you may use if-ladders or goto-style error handling when calling the KIM APIs. In addition, <a class="el" href="group__kim__error__reference.html#gc523758c093a0bb7af18af781e9d182c" title="Free memory associated with an error.">kim_error_free()</a> may be called on <a class="el" href="group__kim__types__reference.html#g8712727bab9e6b02712a8a01285441d1">KIM_NO_ERROR</a>.<p>
-<dl class="note" compact><dt><b>Note:</b></dt><dd>Certain kim_error_t objects are preallocated by the libraries avoid exacerbating existing problems while trying to report an error. For example, the out of memory error object is preallocated. It is safe to call <a class="el" href="group__kim__error__reference.html#gc523758c093a0bb7af18af781e9d182c" title="Free memory associated with an error.">kim_error_free()</a> on these errors, although the function may not actually free the object.</dd></dl>
-By providing an error object rather than a numeric code, the KIM APIs can tailor error strings to the circumstances of the error. So rather than returning error strings like "Client not found in Kerberos database", we can report "'user@REALM' not found in Kerberos database" while still providing the machine readable error KRB5KDC_ERR_C_PRINCIPAL_UNKNOWN.<p>
-See <a class="el" href="group__kim__error__reference.html">KIM Error Reference Documentation</a> for information on specific APIs. <hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:19 2008 for Kerberos Identity Management by&nbsp;
+<h1><a class="anchor" name="kim_error_overview">KIM Error Overview</a></h1>Like most C APIs, the KIM API returns numeric error codes. These error codes may come from KIM, krb5 or GSS APIs. In most cases the caller will want to handle these error programmatically. However, in some circumstances the caller may wish to print an error string to the user.<p>
+One problem with just printing the error code to the user is that frequently the context behind the error has been lost. For example if KIM is trying to obtain credentials via referrals, it may fail partway through the process. In this case the error code will be KRB5KDC_ERR_C_PRINCIPAL_UNKNOWN, which maps to "Client not found in Kerberos database". Unfortunately this error isn't terribly helpful because it doesn't tell the user whether they typoed their principal name or if referrals failed.<p>
+To avoid this problem, KIM maintains an explanatory string for the last error seen in each thread calling into KIM. If a caller wishes to display an error to the user, immediately after getting the error the caller should call <a class="el" href="group__kim__error__reference.html#g7105c4527c2a247cdacd86624d7dc5fb" title="Get a text description of an error suitable for display to the user.">kim_string_get_last_error_message()</a> to obtain a copy of the descriptive error message.<p>
+Note that because this string is stored in thread-specific data, callers must call <a class="el" href="group__kim__error__reference.html#g7105c4527c2a247cdacd86624d7dc5fb" title="Get a text description of an error suitable for display to the user.">kim_string_get_last_error_message()</a> before calling any KIM APIs or any other APIs which might call into KIM. Callers who are not going to display this error string immediately should also make a copy of it so that it is not overwritten by the next call into KIM.<p>
+See <a class="el" href="group__kim__error__reference.html">KIM Error Reference Documentation</a> for information on specific APIs. <hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index 6a3aa1678bb181bb968e6d55a1b4f781beb658b4..93ee11d24f230ee04c412fbc3b8464fb67db0e2e 100644 (file)
@@ -13,33 +13,30 @@ Kerberos identities have both a binary (opaque) representation and also a string
 Creating and Displaying Identities</a></h2>
 KIM Identities can be generated from components, their escaped string representation or from a krb5_principal. Once you have a KIM identity object, you can also get the component, string or krb5_principal representations back out:<p>
 <ul>
-<li><a class="el" href="group__kim__identity__reference.html#gd98419d88372078ff849426c9a9f177e" title="Create a identity from a realm and component strings.">kim_identity_create_from_components()</a> creates an identity object from a list of components. </li>
-<li><a class="el" href="group__kim__identity__reference.html#g6077350272922bf196e9a900e5989c41" title="Get the number of components of an identity.">kim_identity_get_number_of_components()</a> returns the number of components in an identity object. </li>
-<li><a class="el" href="group__kim__identity__reference.html#g1e58b572e65b9771bbf6dee51883d71b" title="Get the Nth component of an identity.">kim_identity_get_component_at_index()</a> return a component of an identity object. </li>
-<li><a class="el" href="group__kim__identity__reference.html#gb5c93208197c70e202209adf61b49a3b" title="Get the realm string of an identity.">kim_identity_get_realm()</a> returns the identity's realm.</li>
+<li><a class="el" href="group__kim__identity__reference.html#ga7ee7771443a129ab5e28923ccb3f602" title="Create a identity from a realm and component strings.">kim_identity_create_from_components()</a> creates an identity object from a list of components. </li>
+<li><a class="el" href="group__kim__identity__reference.html#g96591cf92e03e823efcd4fc54085ca4d" title="Get the number of components of an identity.">kim_identity_get_number_of_components()</a> returns the number of components in an identity object. </li>
+<li><a class="el" href="group__kim__identity__reference.html#gec46c138cd20035a12586dba59680728" title="Get the Nth component of an identity.">kim_identity_get_component_at_index()</a> return a component of an identity object. </li>
+<li><a class="el" href="group__kim__identity__reference.html#gf102dfe4b89f6e87ac3059f01f174066" title="Get the realm string of an identity.">kim_identity_get_realm()</a> returns the identity's realm.</li>
 </ul>
 <ul>
-<li><a class="el" href="group__kim__identity__reference.html#ga69ec4892b8a0dc7aa183803d0cb15fd" title="Create a identity from a string.">kim_identity_create_from_string()</a> generates an identity object from an escaped string representation. </li>
-<li><a class="el" href="group__kim__identity__reference.html#gf335ac09504999d0ad61390ede02c113" title="Get the string representation of a identity.">kim_identity_get_string()</a> returns the identity's escaped string representation. </li>
-<li><a class="el" href="group__kim__identity__reference.html#g3421872c143cc80b1bf220c34e26cc21" title="Get a human-readable string representation of an identity.">kim_identity_get_display_string()</a> returns a non-escaped string for display to the user. This string cannot be passed into <a class="el" href="group__kim__identity__reference.html#ga69ec4892b8a0dc7aa183803d0cb15fd" title="Create a identity from a string.">kim_identity_create_from_string()</a>.</li>
+<li><a class="el" href="group__kim__identity__reference.html#g23804ae9643100ad5e1fef11f6e5362c" title="Create a identity from a string.">kim_identity_create_from_string()</a> generates an identity object from an escaped string representation. </li>
+<li><a class="el" href="group__kim__identity__reference.html#g094e916a4d31556c3ead03f85aafa603" title="Get the string representation of a identity.">kim_identity_get_string()</a> returns the identity's escaped string representation. </li>
+<li><a class="el" href="group__kim__identity__reference.html#g59afb84675651930afebeb6fff788eba" title="Get a human-readable string representation of an identity.">kim_identity_get_display_string()</a> returns a non-escaped string for display to the user. This string cannot be passed into <a class="el" href="group__kim__identity__reference.html#g23804ae9643100ad5e1fef11f6e5362c" title="Create a identity from a string.">kim_identity_create_from_string()</a>.</li>
 </ul>
 <ul>
-<li><a class="el" href="group__kim__identity__reference.html#g1d5a5aba3dfdc1ff95ddd691b3f18c0a" title="Create an identity object from a krb5_principal.">kim_identity_create_from_krb5_principal()</a> generates an identity object from a krb5_principal object. </li>
-<li><a class="el" href="group__kim__identity__reference.html#g63b40561de2bfe2315990d1579d5db75" title="Get the krb5_principal representation of an identity.">kim_identity_get_krb5_principal()</a> returns a krb5_principal object for an identity object.</li>
+<li><a class="el" href="group__kim__identity__reference.html#g3a1f84217c02c9b1023e791ae206cf94" title="Create an identity object from a krb5_principal.">kim_identity_create_from_krb5_principal()</a> generates an identity object from a krb5_principal object. </li>
+<li><a class="el" href="group__kim__identity__reference.html#gd293289334f024dedae5fa59856049d6" title="Get the krb5_principal representation of an identity.">kim_identity_get_krb5_principal()</a> returns a krb5_principal object for an identity object.</li>
 </ul>
-<ul>
-<li><a class="el" href="group__kim__identity__reference.html#g445ddb044181a68fdbad8a63e614add5" title="Get the gss_name_t representation of an identity.">kim_identity_get_gss_name()</a> returns a gss_name_t object for use with gss_acquire_cred().</li>
-</ul>
-<dl class="note" compact><dt><b>Note:</b></dt><dd>If you need to know if two identity objects refer to the same entity, use <a class="el" href="group__kim__identity__reference.html#g8f166b041a651c4f7e2c0229f581a5d2" title="Compare identity objects for equivalency.">kim_identity_compare()</a>.</dd></dl>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>If you need to know if two identity objects refer to the same entity, use <a class="el" href="group__kim__identity__reference.html#gd47b876ed3dfa0fd8a419412b46c4867" title="Compare identity objects for equivalency.">kim_identity_compare()</a>.</dd></dl>
 <h2><a class="anchor" name="kim_identity_selection">
 Choosing a Client Identity</a></h2>
 Unfortunately most of the time applications don't know what client identity to use. Users may have identities for multiple Kerberos realms, as well as multiple identities in a single realm (such as a user and administrator identity).<p>
-To solve this problem, <a class="el" href="group__kim__selection__hints__reference.html#g4c18a97d53150f0b3536e52ab884973d" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a> takes information from the application in the form of a selection hints object and returns the best matching client identity, if one is available. See <a class="el" href="kim_selection_hints_overview.html">KIM Selection Hints Overview</a> for more information.<h2><a class="anchor" name="kim_identity_password">
+To solve this problem, <a class="el" href="group__kim__selection__hints__reference.html#g5f4130fa05e937b749d7cc5347531abe" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a> takes information from the application in the form of a selection hints object and returns the best matching client identity, if one is available. See <a class="el" href="kim_selection_hints_overview.html">KIM Selection Hints Overview</a> for more information.<h2><a class="anchor" name="kim_identity_password">
 Changing a Identity's Password</a></h2>
 Many Kerberos sites use passwords for user accounts. Because passwords may be stolen or compromised, they must be frequently changed. KIM provides APIs to change the identity's password directly, and also handles changing the identity's password when it has expired.<p>
-<a class="el" href="group__kim__identity__reference.html#g493fd86d79650af831d52b8a14b2774c" title="Change the password for an identity.">kim_identity_change_password()</a> presents a user interface to obtain the old and new passwords from the user. kim_identity_change_password_with_passwords() takes the old and new passwords as input, but may still present a user interface if it needs to obtain additional information to authenticate.<p>
+<a class="el" href="group__kim__identity__reference.html#gd198c678fa37a551391bc52307306394" title="Change the password for an identity.">kim_identity_change_password()</a> presents a user interface to obtain the old and new passwords from the user. kim_identity_change_password_with_passwords() takes the old and new passwords as input, but may still present a user interface if it needs to obtain additional information to authenticate.<p>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>Not all identities have a password. Some sites use certificates (pkinit) and in the future there may be other authentication mechanisms (eg: smart cards).</dd></dl>
-See <a class="el" href="group__kim__identity__reference.html">KIM Identity Reference Documentation</a> for information on specific APIs. <hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:19 2008 for Kerberos Identity Management by&nbsp;
+See <a class="el" href="group__kim__identity__reference.html">KIM Identity Reference Documentation</a> for information on specific APIs. <hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index bd7ad8466dc6c5605283b5c8e3d64c1fd86f9b5e..f5e42c35586c5ad9fe7f43bf737a3d9a721d5a07 100644 (file)
@@ -7,42 +7,39 @@
 <!-- Generated by Doxygen 1.5.3 -->
 <h1><a class="anchor" name="kim_options_overview">KIM Options Overview</a></h1><h2><a class="anchor" name="kim_options_introduction">
 Introduction</a></h2>
-Kerberos Identity Management Options (kim_options_t) allows you to control how the Kerberos library obtains credentials. When the options structure is initialized with <a class="el" href="group__kim__options__reference.html#g4d00f4d070409ea90aa69a8ac5cb47cf" title="Create new options with default values.">kim_options_create()</a>, each option is filled in with a default value which can then be modified with the kim_options_set_*() APIs. If you only want to use the default values, you may pass <a class="el" href="group__kim__types__reference.html#ge0384d3f6d9108e3ec84e322c61235a7">KIM_OPTIONS_DEFAULT</a> into any KIM function that takes a kim_options_t.<p>
+Kerberos Identity Management Options (kim_options_t) allows you to control how the Kerberos library obtains credentials. When the options structure is initialized with <a class="el" href="group__kim__options__reference.html#ge36eb288b38f18491e4c903f008b1379" title="Create new options with default values.">kim_options_create()</a>, each option is filled in with a default value which can then be modified with the kim_options_set_*() APIs. If you only want to use the default values, you may pass <a class="el" href="group__kim__types__reference.html#ge0384d3f6d9108e3ec84e322c61235a7">KIM_OPTIONS_DEFAULT</a> into any KIM function that takes a kim_options_t.<p>
 KIM options fall into two major categories: options for controlling how credentials are acquired and options for controlling what properties the newly acquired credentials will have:<h2><a class="anchor" name="kim_options_credential_acquisition">
 Options for Controlling Credential Acquisition</a></h2>
 In order to acquire credentials, Kerberos needs to obtain one or more secrets from the user. These secrets may be a certificate, password, SecurID pin, or information from a smart card. If obtaining the secret requires interaction with the user, the Kerberos libraries call a "prompter callback" to display a dialog or command line prompt to request information from the user. If you want to provide your own custom dialogs or command line prompts, the KIM APIs provide a mechanism for replacing the default prompt callbacks with your own.<h3><a class="anchor" name="kim_options_custom_prompt_callback">
 Providing a Custom Prompt Callback</a></h3>
-All secrets are obtained from the user through a <a class="el" href="group__kim__types__reference.html#g3dc87ed0aa0847e5af0e4f410ba6d7dd">kim_prompt_callback_t</a>. By default, options use <a class="el" href="group__kim__types__reference.html#gd9cfd6a66e9bdcde30a285dc350eb370">kim_prompt_callback_default</a>, which presents an expanding dialog to request information from the user, or if no graphical access is available, a command line prompt.<p>
-KIM also provides three other callbacks: <a class="el" href="group__kim__types__reference.html#gcfbe7cd3e8716d58713a8475f6909908">kim_prompt_callback_gui</a> only presents a dialog and returns an error if there is no graphical access. <a class="el" href="group__kim__types__reference.html#g4b36d86709701623eb73e6d0b95d1dd4">kim_prompt_callback_cli</a> only presents a command line interface and returns an error if there is no controlling terminal available. <a class="el" href="group__kim__types__reference.html#g9699effd6079690c8b744ff96dff1914">kim_prompt_callback_none</a> always returns an error.<p>
-Using <a class="el" href="group__kim__options__reference.html#gb3342e60ebb03f901307fd605af5a684" title="Set the prompt callback for obtaining information from the user.">kim_options_set_prompt_callback()</a>, you can change the prompt callback to one of the above callbacks or a callback you have defined yourself. Callbacks are called in a loop, one for each prompt. Because network traffic may occur between calls to the prompt callback, your prompt interface should support time passing between calls to the prompter. If you are defining a callback yourself, you should also set your own options data with <a class="el" href="group__kim__options__reference.html#gf8836b9f6f8a8d4350a781b85f4017e5" title="Set caller-specific data for use in library callbacks.">kim_options_set_data()</a> for storing state between calls. Options data is a caller defined pointer value -- the Kerberos libaries make no use of it.<h3><a class="anchor" name="kim_options_preset_prompts">
-Prefetching Prompt Responses</a></h3>
-Sometimes you may have already collected some of the information needed to acquire Kerberos credentials. Rather than creating a prompt callback, you may also prefetch responses to the options directly with <a class="el" href="group__kim__options__reference.html#g55acd6378c0bdf5c534b9535a534c9bd" title="Set a response for a prompt for use when acquiring credentials.">kim_options_set_prompt_response()</a>. Once you have associated your response with a given prompt type, the Kerberos libraries will use this response for the first prompt of that type rather than calling the prompt callback to obtain it.<p>
-Note that even if you prefetch responses, the prompt callback may still be called if you did not provide all the information required for the identity. You may specify the <a class="el" href="group__kim__types__reference.html#g9699effd6079690c8b744ff96dff1914">kim_prompt_callback_none</a> prompt callback to prevent prompting from occuring entirely, however, doing so will tie your application to a particular Kerberos configuration. For example, if your application assumes that all identities only require a password, it will not be able to acquire credentials at sites using SecurID pins.<h2><a class="anchor" name="kim_options_credential_properties">
+All secrets are obtained from the user through a kim_prompt_callback_t. By default, options use <a class="el" href="group__kim__types__reference.html#gbacd03bffb1ba46e4d8e36d19d91a170">kim_prompt_callback_default</a>, which presents a dialog to request information from the user, or if no graphical access is available, a command line prompt.<p>
+KIM also provides three other callbacks: <a class="el" href="group__kim__types__reference.html#g5dc825b3083c371b1cd697efc19a1c22">kim_prompt_callback_gui</a> only presents a dialog and returns an error if there is no graphical access. <a class="el" href="group__kim__types__reference.html#g7e046e29e68cee691ac652e6b9c0ce93">kim_prompt_callback_cli</a> only presents a command line interface and returns an error if there is no controlling terminal available. <a class="el" href="group__kim__types__reference.html#gcc03830f3eece78fae04b722ca0687c3">kim_prompt_callback_none</a> always returns an error.<p>
+Using <a class="el" href="group__kim__options__reference.html#g645bfc7ee5e4d17e53d34964dee2a7d7" title="Set the prompt callback for obtaining information from the user.">kim_options_set_prompt_callback()</a>, you can change the prompt callback to one of the above callbacks or a callback you have defined yourself. Callbacks are called in a loop, one for each prompt. Because network traffic may occur between calls to the prompt callback, your prompt interface should support time passing between calls to the prompter. If you are defining a callback yourself, you should also set your own options data with <a class="el" href="group__kim__options__reference.html#g4b061cf6dc57624b91560b5d511a7c43" title="Set caller-specific data for use in library callbacks.">kim_options_set_data()</a> for storing state between calls. Options data is a caller defined pointer value -- the Kerberos libaries make no use of it.<h2><a class="anchor" name="kim_options_credential_properties">
 Options for Controlling Credential Properties</a></h2>
 Kerberos credentials have a number of different properties which can be requested when credentials are acquired. These properties control when and for how long the credentials are valid and what you can do with them.<p>
 Note that setting these properties in the KIM options only changes what the Kerberos libraries <em>request</em> from the KDC. The KDC itself may choose not to honor your requested properties if they violate the site security policy. For example, most sites place an upper bound on how long credentials may be valid. If you request a credential lifetime longer than this upper bound, the KDC may return credentials with a shorter lifetime than you requested.<h3><a class="anchor" name="kim_options_lifetimes">
 Credential Lifetime</a></h3>
 Kerberos credentials have start time and a lifetime during which they are valid. Once the lifetime has passed, credentials "expire" and can no longer be used.<p>
-The requested credential start time can be set with <a class="el" href="group__kim__options__reference.html#g2193de68adcec22df88069d86e2a145c" title="Set the date when a credential should become valid.">kim_options_set_start_time()</a> and examined with <a class="el" href="group__kim__options__reference.html#g587539ca61a06b5730ed688f914e9fa6" title="Get the date when a credential should become valid.">kim_options_get_start_time()</a>. The requested credential lifetime can be set with <a class="el" href="group__kim__options__reference.html#ga6058acd016b6387be19e0127606fcb1" title="Set the duration during which a credential should be valid.">kim_options_set_lifetime()</a> and examined with <a class="el" href="group__kim__options__reference.html#gc179cfff2a29eb0bbe4ac0b6dab8afad" title="Get the duration during which an acquired credential should be valid.">kim_options_get_lifetime()</a>.<h3><a class="anchor" name="kim_options_renewable">
+The requested credential start time can be set with <a class="el" href="group__kim__options__reference.html#gf7f6a8a82fedc547c8502ce09a419f91" title="Set the date when a credential should become valid.">kim_options_set_start_time()</a> and examined with <a class="el" href="group__kim__options__reference.html#gca63b972b41530c52bbe83bd974e6f9b" title="Get the date when a credential should become valid.">kim_options_get_start_time()</a>. The requested credential lifetime can be set with <a class="el" href="group__kim__options__reference.html#g392369e80bea0ea9c920d6de55e080ed" title="Set the duration during which a credential should be valid.">kim_options_set_lifetime()</a> and examined with <a class="el" href="group__kim__options__reference.html#gd7a886d6c0a33d0d872bf40420023ee2" title="Get the duration during which an acquired credential should be valid.">kim_options_get_lifetime()</a>.<h3><a class="anchor" name="kim_options_renewable">
 Renewable Credentials</a></h3>
 Credentials with very long lifetimes are more convenient since the user does not have authenticate as often. Unfortunately they are also a higher security risk: if credentials are stolen they can be used until they expire. Credential renewal exists to compromise between these two conflicting goals.<p>
 Renewable credentials are TGT credentials which can be used to obtain new TGT credentials without reauthenticating. By regularly renewing credentials the KDC has an opportunity to check to see if the client's credentials have been reported stolen and refuse to renew them. Renewable credentials have a "renewal lifetime" during which credentials can be renewed. This lifetime is relative to the original credential start time. If credentials are renewed shortly before the end of the renewal lifetime, their lifetime will be capped to the end of the renewal lifetime.<p>
 Note that credentials must be valid to be renewed and therefore may not be an appropriate solution for all use cases. Sites which use renewable credentials often create helper processes running as the user which will automatically renew the user's credentials when they get close to expiration.<p>
-Use <a class="el" href="group__kim__options__reference.html#g47a49dca419a7d7f1d79c5acd1f16b7a" title="Set whether or not to request a renewable credential.">kim_options_set_renewable()</a> to change whether or not the Kerberos libraries request renewable credentials and <a class="el" href="group__kim__options__reference.html#gefc2785f119f04379b20d381a79a45af" title="Get whether or not to request a renewable credential.">kim_options_get_renewable()</a> to find out the current setting. Use <a class="el" href="group__kim__options__reference.html#g035bd3841ff3581922cba91b043cd945" title="Set the duration during which a valid credential should be renewable.">kim_options_set_renewal_lifetime()</a> to change the requested renewal lifetime and <a class="el" href="group__kim__options__reference.html#g2a49d92912b6270357788436d2c6fd8f" title="Get the duration during which a valid credential should be renewable.">kim_options_get_renewal_lifetime()</a> to find out the current value.<h3><a class="anchor" name="kim_options_addressless">
+Use <a class="el" href="group__kim__options__reference.html#gcfa20d97d1643714a62b81077c1722ba" title="Set whether or not to request a renewable credential.">kim_options_set_renewable()</a> to change whether or not the Kerberos libraries request renewable credentials and <a class="el" href="group__kim__options__reference.html#g073245936d6086da6f1d3572872ecfe6" title="Get whether or not to request a renewable credential.">kim_options_get_renewable()</a> to find out the current setting. Use <a class="el" href="group__kim__options__reference.html#g604ed101fa538a6f042fe612d74b5ed2" title="Set the duration during which a valid credential should be renewable.">kim_options_set_renewal_lifetime()</a> to change the requested renewal lifetime and <a class="el" href="group__kim__options__reference.html#g34bcb26ba38f691c6f5d48ec97a49392" title="Get the duration during which a valid credential should be renewable.">kim_options_get_renewal_lifetime()</a> to find out the current value.<h3><a class="anchor" name="kim_options_addressless">
 Addressless Credentials</a></h3>
 Traditionally Kerberos used the host's IP address as a mechanism to restrict the user's credentials to a specific host, thus making it harder to use stolen credentials. When authenticating to a remote service with credentials containing addresses, the remote service verifies that the client's IP address is one of the addresses listed in the credential. Unfortunately, modern network technologies such as NAT rewrite the IP address in transit, making it difficult to use credentials with addresses in them. As a result, most Kerberos sites now obtain addressless credentials.<p>
-Use <a class="el" href="group__kim__options__reference.html#g673640ffd337c815cbc71cbef32b4156" title="Set whether or not to request an addressless credential.">kim_options_set_addressless()</a> to change whether or not the Kerberos libraries request addressless credentials. Use <a class="el" href="group__kim__options__reference.html#g8308f996ae22cad938ec4a4782a01322" title="Get whether or not to request an addressless credential.">kim_options_get_addressless()</a> to find out the current setting.<h3><a class="anchor" name="kim_options_forwardable">
+Use <a class="el" href="group__kim__options__reference.html#g4706fb2cc57109b8593f0b030218261a" title="Set whether or not to request an addressless credential.">kim_options_set_addressless()</a> to change whether or not the Kerberos libraries request addressless credentials. Use <a class="el" href="group__kim__options__reference.html#g50495f13e53c49a11729904038e7cdf9" title="Get whether or not to request an addressless credential.">kim_options_get_addressless()</a> to find out the current setting.<h3><a class="anchor" name="kim_options_forwardable">
 Forwardable Credentials</a></h3>
 Forwardable credentials are TGT credentials which can be forwarded to a service you have authenticated to. If the credentials contain IP addresses, the addresses are changed to reflect the service's IP address. Credential forwarding is most commonly used for Kerberos-authenticated remote login services. By forwarding TGT credentials through the remote login service, the user's credentials will appear on the remote host when the user logs in.<p>
 The forwardable flag only applies to TGT credentials.<p>
-Use <a class="el" href="group__kim__options__reference.html#gc055fb95bb39e93b276dc2380632cd6d" title="Set whether or not to request a forwardable credential.">kim_options_set_forwardable()</a> to change whether or not the Kerberos libraries request forwardable credentials. Use <a class="el" href="group__kim__options__reference.html#g6dc2e2ec0448d28ce847fc8880ce8561" title="Get whether or not to request a forwardable credential.">kim_options_get_forwardable()</a> to find out the current setting.<h3><a class="anchor" name="kim_options_proxiable">
+Use <a class="el" href="group__kim__options__reference.html#gc787d6b18febc22c86299d2668818513" title="Set whether or not to request a forwardable credential.">kim_options_set_forwardable()</a> to change whether or not the Kerberos libraries request forwardable credentials. Use <a class="el" href="group__kim__options__reference.html#g649b9ded186ec13915196a6f8ded7565" title="Get whether or not to request a forwardable credential.">kim_options_get_forwardable()</a> to find out the current setting.<h3><a class="anchor" name="kim_options_proxiable">
 Proxiable Credentials</a></h3>
 Proxiable credentials are similar to forwardable credentials except that instead of forwarding the a TGT credential itself, a service credential is forwarded instead. Using proxiable credentials, a user can permit a service to perform a specific task as the user using one of the user's service credentials.<p>
 Like forwardability, the proxiable flag only applies to TGT credentials. Unlike forwarded credentials, the IP address of proxiable credentials are not modified for the service when being proxied. This can be solved by also requesting addressless credentials.<p>
-Use <a class="el" href="group__kim__options__reference.html#g4ab6093bff1c28196e2886e146d5e0d0" title="Set whether or not to request a proxiable credential.">kim_options_set_proxiable()</a> to change whether or not the Kerberos libraries request proxiable credentials. Use <a class="el" href="group__kim__options__reference.html#ga36c948940f89e1cca4477b3d1869c84" title="Get whether or not to request a proxiable credential.">kim_options_get_proxiable()</a> to find out the current setting.<h3><a class="anchor" name="kim_options_service_name">
+Use <a class="el" href="group__kim__options__reference.html#g15ffe61f06334f4071e5b1ea6be62117" title="Set whether or not to request a proxiable credential.">kim_options_set_proxiable()</a> to change whether or not the Kerberos libraries request proxiable credentials. Use <a class="el" href="group__kim__options__reference.html#g0193dda96349a6e8d98d6154540a364e" title="Get whether or not to request a proxiable credential.">kim_options_get_proxiable()</a> to find out the current setting.<h3><a class="anchor" name="kim_options_service_name">
 Service Name</a></h3>
-Normally users acquire TGT credentials (ie "ticket granting tickets") and then use those credentials to acquire service credentials. This allows Kerberos to provide single sign-on while still providing mutual authentication to services. However, sometimes you just want an initial credential for a service. KIM options allows you to set the service name with <a class="el" href="group__kim__options__reference.html#g5914bd9caf4ba781c723d152bf5ddc05" title="Set the service name to request a credential for.">kim_options_set_service_name()</a> and query it with <a class="el" href="group__kim__options__reference.html#ge74278a56626df2ad5a60ed61d8a1836" title="Get the service name to request a credential for.">kim_options_get_service_name()</a>.<p>
-See <a class="el" href="group__kim__options__reference.html">KIM Options Reference Documentation</a> for information on specific APIs. <hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:19 2008 for Kerberos Identity Management by&nbsp;
+Normally users acquire TGT credentials (ie "ticket granting tickets") and then use those credentials to acquire service credentials. This allows Kerberos to provide single sign-on while still providing mutual authentication to services. However, sometimes you just want an initial credential for a service. KIM options allows you to set the service name with <a class="el" href="group__kim__options__reference.html#g6e31c69a65efe32a5860125083d0b803" title="Set the service name to request a credential for.">kim_options_set_service_name()</a> and query it with <a class="el" href="group__kim__options__reference.html#gdf70addbc8221c252b1223b5e99dfa94" title="Get the service name to request a credential for.">kim_options_get_service_name()</a>.<p>
+See <a class="el" href="group__kim__options__reference.html">KIM Options Reference Documentation</a> for information on specific APIs. <hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index b388729bb768f62b75e11fd809b5654cd37ca5d5..c42e0878ba49a85e6836ccf1566e3b33510feb2f 100644 (file)
@@ -9,19 +9,27 @@
 Introduction</a></h2>
 In addition to the site preferences stored in the Kerberos configuration, users may also want to have their own personal preferences for controlling credential acquisition. As a result, KIM provides user preferences for initial credential options and user interface behavior such as the default client identity and the favorite identities list.<h2><a class="anchor" name="kim_preferences_edit">
 Viewing and Editing the Preferences</a></h2>
-In order to view and edit the user's preferences, call <a class="el" href="group__kim__preferences__reference.html#g88fba2fb35d73c5905eb21dcfad57578" title="Create a new preferences object from the current user&#39;s preferences.">kim_preferences_create()</a> to acquire a preferences object containing the user's preferences. You can examine preferences with the functions starting with "kim_preferences_get_" and change preferences with the functions starting with "kim_preferences_set_". Once you are done making changes, you can write changes back out to the user's preferences with <a class="el" href="group__kim__preferences__reference.html#gd4548bdc2cd52ad21d7a3e1bb60edba0" title="Synchronize a preferences object with the user&#39;s preferences, writing pending...">kim_preferences_synchronize()</a>.<p>
+In order to view and edit the user's preferences, call <a class="el" href="group__kim__preferences__reference.html#gf1dc483fcb582add046d552da9b8485f" title="Create a new preferences object from the current user&#39;s preferences.">kim_preferences_create()</a> to acquire a preferences object containing the user's preferences. You can examine preferences with the functions starting with "kim_preferences_get_" and change preferences with the functions starting with "kim_preferences_set_". Once you are done making changes, you can write changes back out to the user's preferences with <a class="el" href="group__kim__preferences__reference.html#g6815e374d78e13714abcddc478145dd9" title="Synchronize a preferences object with the user&#39;s preferences, writing pending...">kim_preferences_synchronize()</a>.<p>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>The location of user preferences and the semantics of preference synchronization is platform-specific. Where possible KIM will use platform-specific preference mechanisms.</dd></dl>
 <h2><a class="anchor" name="kim_preferences_options">
 Initial Credential Options Preferences</a></h2>
-KIM provides user preferences for initial credential options. These are the options <a class="el" href="group__kim__options__reference.html#g4d00f4d070409ea90aa69a8ac5cb47cf" title="Create new options with default values.">kim_options_create()</a> will use when creating a new KIM options object. They are also the options specified by KIM_OPTIONS_DEFAULT. You can view and edit the initial credential options using <a class="el" href="group__kim__preferences__reference.html#g634a03cb1109362db8e4024b055afa71" title="Get the user&#39;s preferred options.">kim_preferences_get_options()</a> and <a class="el" href="group__kim__preferences__reference.html#ge7f0f13dd6d50e7730205abddb1a0127" title="Set the user&#39;s preferred options.">kim_preferences_set_options()</a>.<p>
+KIM provides user preferences for initial credential options. These are the options <a class="el" href="group__kim__options__reference.html#ge36eb288b38f18491e4c903f008b1379" title="Create new options with default values.">kim_options_create()</a> will use when creating a new KIM options object. They are also the options specified by KIM_OPTIONS_DEFAULT. You can view and edit the initial credential options using <a class="el" href="group__kim__preferences__reference.html#g68f6bb5bd97d85753d74e958e452560f" title="Get the user&#39;s preferred options.">kim_preferences_get_options()</a> and <a class="el" href="group__kim__preferences__reference.html#gc9c1f77fcf571c575664b44267f19fc3" title="Set the user&#39;s preferred options.">kim_preferences_set_options()</a>.<p>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>Not all credential options in the kim_options_t object have corresponding user preferences. For example, the prompt callback function is not stored in the user preferences since it has no meaning outside of the current application. Some options which are not currently stored in the preferences may be stored there in the future.</dd></dl>
-If you are implementing a user interface for credentials acquisition, you should be aware that KIM has a user preference to manage the initial credential options preferences. If the user successfully acquires credentials with non-default options and <a class="el" href="group__kim__preferences__reference.html#g804eb8078e5b5a1c73e7e27b0efdb66d" title="Get whether or not to remember the last options the user used to acquire a credential...">kim_preferences_get_remember_options()</a> is set to TRUE, you should store the options used to get credentials with <a class="el" href="group__kim__preferences__reference.html#ge7f0f13dd6d50e7730205abddb1a0127" title="Set the user&#39;s preferred options.">kim_preferences_set_options()</a>.<h2><a class="anchor" name="kim_preferences_client_identity">
+If you are implementing a user interface for credentials acquisition, you should be aware that KIM has a user preference to manage the initial credential options preferences. If the user successfully acquires credentials with non-default options and <a class="el" href="group__kim__preferences__reference.html#ga4b2b54310c0efb6bbba284395095c0f" title="Get whether or not to remember the last options the user used to acquire a credential...">kim_preferences_get_remember_options()</a> is set to TRUE, you should store the options used to get credentials with <a class="el" href="group__kim__preferences__reference.html#gc9c1f77fcf571c575664b44267f19fc3" title="Set the user&#39;s preferred options.">kim_preferences_set_options()</a>.<h2><a class="anchor" name="kim_preferences_client_identity">
 Client Identity Preferences</a></h2>
-KIM also provides user preferences for the default client identity. This identity is used whenever KIM needs to display a graphical dialog for credential acquisition but does not know what client identity to use. You can view and edit the default client identity using <a class="el" href="group__kim__preferences__reference.html#ga7bf4c87813bee177d2485d827c59943" title="Get the user&#39;s preferred client identity.">kim_preferences_get_client_identity()</a> and <a class="el" href="group__kim__preferences__reference.html#g70806a8dfdde27746f8c161b4f845ecb" title="Set the user&#39;s preferred client identity.">kim_preferences_set_client_identity()</a>.<p>
-If you are implementing a user interface for credentials acquisition, you should be aware that KIM has a user preference to manage the client identity preferences. If the user successfully acquires credentials with non-default options and <a class="el" href="group__kim__preferences__reference.html#gd24a4831e3664ae2ec69b2de2ccfca50" title="Get whether or not to remember the last client identity the user acquired a credential...">kim_preferences_get_remember_client_identity()</a> is set to TRUE, you should store the client identity for which credentials were acquired using <a class="el" href="group__kim__preferences__reference.html#g70806a8dfdde27746f8c161b4f845ecb" title="Set the user&#39;s preferred client identity.">kim_preferences_set_client_identity()</a>.<h2><a class="anchor" name="kim_preferences_favorite_identities">
+KIM also provides user preferences for the default client identity. This identity is used whenever KIM needs to display a graphical dialog for credential acquisition but does not know what client identity to use. You can view and edit the default client identity using <a class="el" href="group__kim__preferences__reference.html#g7e8243e83781035aef702b1882114e57" title="Get the user&#39;s preferred client identity.">kim_preferences_get_client_identity()</a> and <a class="el" href="group__kim__preferences__reference.html#g531087a0c7ec0e247eff326066e31b42" title="Set the user&#39;s preferred client identity.">kim_preferences_set_client_identity()</a>.<p>
+If you are implementing a user interface for credentials acquisition, you should be aware that KIM has a user preference to manage the client identity preferences. If the user successfully acquires credentials with non-default options and <a class="el" href="group__kim__preferences__reference.html#g9113eb1a092a9c745d9b724f7890ecb6" title="Get whether or not to remember the last client identity the user acquired a credential...">kim_preferences_get_remember_client_identity()</a> is set to TRUE, you should store the client identity for which credentials were acquired using <a class="el" href="group__kim__preferences__reference.html#g531087a0c7ec0e247eff326066e31b42" title="Set the user&#39;s preferred client identity.">kim_preferences_set_client_identity()</a>.<h2><a class="anchor" name="kim_preferences_favorite_identities">
 Favorite Identities Preferences</a></h2>
-When presenting a graphical interface for credential acquisition, KIM may need to display a list of identities for the user to select from. This list is generated by the user's favorite identities preference. You can view and edit the favorite identities preference using <a class="el" href="group__kim__preferences__reference.html#g4ce6a3e2d6b92eb335e7110bf43ef1ab" title="Get the user&#39;s preferred list of identities.">kim_preferences_get_favorite_identities()</a> and <a class="el" href="group__kim__preferences__reference.html#g2c0ee43f07affdeeec76624777e662d7" title="Set the user&#39;s preferred list of identities.">kim_preferences_set_favorite_identities()</a>. Please see the <a class="el" href="kim_favorite_identities_overview.html">KIM Favorite Identities Overview</a> for more information.<p>
-See <a class="el" href="group__kim__preferences__reference.html">KIM Preferences Documentation</a> for information on specific APIs. <hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:19 2008 for Kerberos Identity Management by&nbsp;
+As Kerberos becomes more widespread, the number of possible Kerberos identities and realms a user might want to use will become very large. Sites may list hundreds of realms in their Kerberos configuration files. In addition, sites may wish to use DNS SRV records to avoid having to list all the realms they use in their Kerberos configuration. As a result, the list of realms in the Kerberos configuration may be exceedingly large and/or incomplete. Users may also use multiple identities from the same realm.<p>
+On platforms which use a GUI to acquire credentials, the KIM would like to to display a list of identities for the user to select from. Depending on what is appropriate for the platform, identities may be displayed in a popup menu or other list.<p>
+To solve this problem, the KIM maintains a list of favorite identities specifically for identity selection. This list is a set of unique identities in alphabetical order (as appropriate for the user's language localization).<p>
+Each identity may optionally have its own options for ticket acquisition. This allows KIM UIs to remember what ticket options worked for a specific identity. For example if the user normally wants renewable tickets but they have one identity at a KDC which rejects requests for renewable tickets, the "not renewable" option can be associated with that identity without changing the user's default preference to get renewable tickets. If an identity should use the default options, just pass KIM_OPTIONS_DEFAULT.<p>
+Most callers will not need to use the favorite identities APIs. However if you are implementing your own graphical prompt callback or a credential management application, you may to view and/or edit the user's favorite identities.<h2><a class="anchor" name="kim_favorite_identities_edit">
+Viewing and Editing the Favorite Identities</a></h2>
+First, you need to acquire the Favorite Identities stored in the user's preferences using <a class="el" href="group__kim__preferences__reference.html#gf1dc483fcb582add046d552da9b8485f" title="Create a new preferences object from the current user&#39;s preferences.">kim_preferences_create()</a>.<p>
+Then use <a class="el" href="group__kim__preferences__reference.html#g39ff3407953fedfc861efda92f961f18" title="Get the number of favorite identities in a preferences object.">kim_preferences_get_number_of_favorite_identities()</a> and <a class="el" href="group__kim__preferences__reference.html#g3012077dfb1169ebbbf2d7bf17dbbfdf" title="Get the Nth favorite identity in a preferences object.">kim_preferences_get_favorite_identity_at_index()</a> to display the identities list. Use <a class="el" href="group__kim__preferences__reference.html#gd7ed54017b8d46414c550a87ab775a9d" title="Add a favorite identity to a preferences object.">kim_preferences_add_favorite_identity()</a> and <a class="el" href="group__kim__preferences__reference.html#g85a31ca25607660c9dc2b68527c71f52" title="Remove a favorite identity from a preferences object.">kim_preferences_remove_favorite_identity()</a> to change which identities are in the identities list. Identities are always stored in alphabetical order and duplicate identities are not permitted, so when you add or remove a identity you should redisplay the entire list. If you wish to replace the identities list entirely, use <a class="el" href="group__kim__preferences__reference.html#gc28596bde36d790f569af33d50feedb8" title="Remove all favorite identities in a preferences object.">kim_preferences_remove_all_favorite_identities()</a> to clear the list before adding your identities.<p>
+Once you are done editing the favorite identities list, store changes in the user's preference file using <a class="el" href="group__kim__preferences__reference.html#g6815e374d78e13714abcddc478145dd9" title="Synchronize a preferences object with the user&#39;s preferences, writing pending...">kim_preferences_synchronize()</a>.<p>
+See <a class="el" href="group__kim__preferences__reference.html">KIM Preferences Documentation</a> for information on specific APIs. <hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index d9be9d2603b2f77c7d4b0eae047b78ccf483c909..b8428b8852896a87a797f56812381ece9b940d2f 100644 (file)
@@ -29,26 +29,26 @@ For example, if you specify a service identity and a credential for that identit
 <dl class="note" compact><dt><b>Note:</b></dt><dd>Due to performance and information exposure concerns, currently all searching is done by examining the cache collection. In the future the KIM may also make network requests as part of its search algorithm. For example it might check to see if the TGT credentials in each ccache can obtain credentials for the service identity specified by the selection hints.</dd></dl>
 <h2><a class="anchor" name="kim_selection_hints_selecting">
 Selecting an Identity Using Selection Hints</a></h2>
-Once you have provided search criteria for selecting an identity, use <a class="el" href="group__kim__selection__hints__reference.html#g4c18a97d53150f0b3536e52ab884973d" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a> to obtain an identity object. You can then use <a class="el" href="group__kim__identity__reference.html#g445ddb044181a68fdbad8a63e614add5" title="Get the gss_name_t representation of an identity.">kim_identity_get_gss_name()</a> to obtain a gss_name_t for use in gss_acquire_cred() or use <a class="el" href="group__kim__ccache__reference.html#gfc1faee53dbb4b1dab1a5daf8f685f64" title="Find a ccache for a client identity in the cache collection.">kim_ccache_create_from_client_identity()</a> to obtain a ccache containing credentials for the identity.<p>
-<dl class="note" compact><dt><b>Note:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g4c18a97d53150f0b3536e52ab884973d" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a> obtains an identity based on the current state of the selection hints object. If you change the selection hints object you must call <a class="el" href="group__kim__selection__hints__reference.html#g4c18a97d53150f0b3536e52ab884973d" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a> again.</dd></dl>
+Once you have provided search criteria for selecting an identity, use <a class="el" href="group__kim__selection__hints__reference.html#g5f4130fa05e937b749d7cc5347531abe" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a> to obtain an identity object. You can then use kim_identity_get_gss_name() to obtain a gss_name_t for use in gss_acquire_cred() or use <a class="el" href="group__kim__ccache__reference.html#g6ecc14b94ffb57ca8008d0a407bb9c7d" title="Find a ccache for a client identity in the cache collection.">kim_ccache_create_from_client_identity()</a> to obtain a ccache containing credentials for the identity.<p>
+<dl class="note" compact><dt><b>Note:</b></dt><dd><a class="el" href="group__kim__selection__hints__reference.html#g5f4130fa05e937b749d7cc5347531abe" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a> obtains an identity based on the current state of the selection hints object. If you change the selection hints object you must call <a class="el" href="group__kim__selection__hints__reference.html#g5f4130fa05e937b749d7cc5347531abe" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a> again.</dd></dl>
 <h2><a class="anchor" name="kim_selection_hints_caching">
 Selection Hint Caching Behavior</a></h2>
 In addition to using selection hints to search for an appropriate client identity, KIM can also use them to remember which client identity worked. KIM maintains a per-user cache mapping selection hints to identities so that applications do not have to maintain their own caches or present user interface for selecting which cache to use.<p>
-When <a class="el" href="group__kim__selection__hints__reference.html#g4c18a97d53150f0b3536e52ab884973d" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a> is called KIM looks up in the cache and returns the identity which the selection hints map to. If there is not a preexisting cache entry for the selection hints then <a class="el" href="group__kim__selection__hints__reference.html#g4c18a97d53150f0b3536e52ab884973d" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a> will search for an identity and prompt the user if it cannot find an appropriate one.<p>
-If the client identity returned by KIM authenticates and passes authorization checks, you should tell KIM to cache the identity by calling <a class="el" href="group__kim__selection__hints__reference.html#ga35356161afa853700734a73ad9e027b" title="Add an entry for the selection hints to the selection hints cache, replacing any...">kim_selection_hints_remember_identity()</a>. This will create a cache entry for the mapping between your selection hints and the identity so that subsequent calls to <a class="el" href="group__kim__selection__hints__reference.html#g4c18a97d53150f0b3536e52ab884973d" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a> do not need to prompt the user.<p>
-If the client identity returned by KIM fails to authenticate or fails authorization checks, you must call <a class="el" href="group__kim__selection__hints__reference.html#g4550fb53331ba7424853bde07834aa76" title="Remove an entry for the selection hints from the selection hints cache.">kim_selection_hints_forget_identity()</a> to remove any mapping that already exists. After this function is called, future calls to <a class="el" href="group__kim__selection__hints__reference.html#g4c18a97d53150f0b3536e52ab884973d" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a> will search for an identity again. You may also wish to call this function if the user changes your application preferences such that the identity might be invalidated.<p>
-<dl class="note" compact><dt><b>Note:</b></dt><dd>It is very important that you call <a class="el" href="group__kim__selection__hints__reference.html#g4550fb53331ba7424853bde07834aa76" title="Remove an entry for the selection hints from the selection hints cache.">kim_selection_hints_forget_identity()</a> if your application fails to successfully establish a connection with the server. Otherwise the user can get "stuck" using the same non-working identity if they chose the wrong one accidentally or if their identity information changes. Because only your application understands the authorization checksof the protocol it uses, KIM cannot tell whether or not the identity worked.</dd></dl>
-If you wish to search and prompt for an identity without using the cached mappings, you can turn off the cached mapping lookups using <a class="el" href="group__kim__selection__hints__reference.html#gd5cf3d5ca0c2d902dbecd07d145631d8" title="Set whether or not KIM will use cached mappings for this selection hints object.">kim_selection_hints_set_remember_identity()</a>. This is not recommended for most applications since it will result in a lot of unnecessary searching and prompting for identities.<p>
+When <a class="el" href="group__kim__selection__hints__reference.html#g5f4130fa05e937b749d7cc5347531abe" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a> is called KIM looks up in the cache and returns the identity which the selection hints map to. If there is not a preexisting cache entry for the selection hints then <a class="el" href="group__kim__selection__hints__reference.html#g5f4130fa05e937b749d7cc5347531abe" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a> will search for an identity and prompt the user if it cannot find an appropriate one.<p>
+If the client identity returned by KIM authenticates and passes authorization checks, you should tell KIM to cache the identity by calling <a class="el" href="group__kim__selection__hints__reference.html#ge33ab4dcf213c7fcb43eea3f35aeef09" title="Add an entry for the selection hints to the selection hints cache, replacing any...">kim_selection_hints_remember_identity()</a>. This will create a cache entry for the mapping between your selection hints and the identity so that subsequent calls to <a class="el" href="group__kim__selection__hints__reference.html#g5f4130fa05e937b749d7cc5347531abe" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a> do not need to prompt the user.<p>
+If the client identity returned by KIM fails to authenticate or fails authorization checks, you must call <a class="el" href="group__kim__selection__hints__reference.html#g8bc79c133df171182813ca2a8773d19c" title="Remove an entry for the selection hints from the selection hints cache.">kim_selection_hints_forget_identity()</a> to remove any mapping that already exists. After this function is called, future calls to <a class="el" href="group__kim__selection__hints__reference.html#g5f4130fa05e937b749d7cc5347531abe" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a> will search for an identity again. You may also wish to call this function if the user changes your application preferences such that the identity might be invalidated.<p>
+<dl class="note" compact><dt><b>Note:</b></dt><dd>It is very important that you call <a class="el" href="group__kim__selection__hints__reference.html#g8bc79c133df171182813ca2a8773d19c" title="Remove an entry for the selection hints from the selection hints cache.">kim_selection_hints_forget_identity()</a> if your application fails to successfully establish a connection with the server. Otherwise the user can get "stuck" using the same non-working identity if they chose the wrong one accidentally or if their identity information changes. Because only your application understands the authorization checksof the protocol it uses, KIM cannot tell whether or not the identity worked.</dd></dl>
+If you wish to search and prompt for an identity without using the cached mappings, you can turn off the cached mapping lookups using <a class="el" href="group__kim__selection__hints__reference.html#ga036cbd405130142b460191dc5bf2c37" title="Set whether or not KIM will use cached mappings for this selection hints object.">kim_selection_hints_set_remember_identity()</a>. This is not recommended for most applications since it will result in a lot of unnecessary searching and prompting for identities.<p>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>Because cache entries key off of selection hints, it is important to always specify the same hints when contacting a particular service. Otherwise KIM will not always find the cache entries.</dd></dl>
 <h2><a class="anchor" name="kim_selection_hints_prompt">
 Selection Hint Prompting Behavior</a></h2>
-If valid credentials for identity in the selection hints cache are unavailable or if no identity could be found using searching or caching when <a class="el" href="group__kim__selection__hints__reference.html#g4c18a97d53150f0b3536e52ab884973d" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a> is called, KIM may present a GUI to ask the user to select an identity or acquire credentials for an identity.<p>
+If valid credentials for identity in the selection hints cache are unavailable or if no identity could be found using searching or caching when <a class="el" href="group__kim__selection__hints__reference.html#g5f4130fa05e937b749d7cc5347531abe" title="Choose a client identity based on selection hints.">kim_selection_hints_get_identity()</a> is called, KIM may present a GUI to ask the user to select an identity or acquire credentials for an identity.<p>
 <dl class="note" compact><dt><b>Note:</b></dt><dd>Because of the caching behavior described above the user will only be prompted to choose an identity when setting up the application or when their identity stops working.</dd></dl>
-In order to let the user know why Kerberos needs their assistance, KIM displays the name of the application which requested the identity selection. Unfortunately, some platforms do not provide a runtime mechanism for determining the name of the calling process. If your application runs on one of these platforms (or is cross-platform) you should provide a localized version of its name with <a class="el" href="group__kim__selection__hints__reference.html#g9904e1b83a1082fbb0752853b3c6ece0" title="Set the application name for use in user interaction.">kim_selection_hints_set_application_name()</a>. You can check what name will be used with <a class="el" href="group__kim__selection__hints__reference.html#ge254849dd3bf81a295e1e9054220002b" title="Get the application name for use in user interaction.">kim_selection_hints_get_application_name()</a>.<p>
-In many cases a single application may select different identities for different purposes. For example an email application might use different identities to check mail for different accounts. If your application has this property you may need to provide the user with a localized string describing how the identity will be used. You can specify this string with <a class="el" href="group__kim__selection__hints__reference.html#gca2b7379231b656f6ee2df551bb7972e" title="Get the strings used to prompt the user to select the identity.">kim_selection_hints_get_explanation()</a>. You can find out what string will be used with <a class="el" href="group__kim__selection__hints__reference.html#gdde1a442f7ab9913eed7855f06575f92" title="Set the strings used to prompt the user to select the identity.">kim_selection_hints_set_explanation()</a>.<p>
-Since the user may choose to acquire credentials when selection an identity, KIM also provides <a class="el" href="group__kim__selection__hints__reference.html#gae79cd94d2184c8ffe4c7144205fd813" title="Set the options which will be used if credentials need to be acquired.">kim_selection_hints_set_options()</a> to set what credential acquisition options are used. <a class="el" href="group__kim__selection__hints__reference.html#ge00f6f57e9d24d2e62694d72d43148a4" title="Get the options which will be used if credentials need to be acquired.">kim_selection_hints_get_options()</a> returns the options which will be used.<p>
-If you need to disable user interaction, use <a class="el" href="group__kim__selection__hints__reference.html#g8a4f9300250b27fec9b0da4b52f0a781" title="Set whether or not KIM may interact with the user to select an identity.">kim_selection_hints_set_allow_user_interaction()</a>. Use <a class="el" href="group__kim__selection__hints__reference.html#g255a01cf3f1e31390b213a802f8b27b4" title="Get whether or not KIM may interact with the user to select an identity.">kim_selection_hints_get_allow_user_interaction()</a> to find out whether or not user interaction is enabled. User interaction is enabled by default.<p>
-See <a class="el" href="group__kim__selection__hints__reference.html">KIM Selection Hints Reference Documentation</a> for information on specific APIs. <hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:19 2008 for Kerberos Identity Management by&nbsp;
+In order to let the user know why Kerberos needs their assistance, KIM displays the name of the application which requested the identity selection. Unfortunately, some platforms do not provide a runtime mechanism for determining the name of the calling process. If your application runs on one of these platforms (or is cross-platform) you should provide a localized version of its name with <a class="el" href="group__kim__selection__hints__reference.html#g8fe2f3a8723cacff9241d81a71f4532f" title="Set the application name for use in user interaction.">kim_selection_hints_set_application_name()</a>. You can check what name will be used with <a class="el" href="group__kim__selection__hints__reference.html#g21e88d5a8168ec7f7023faf171adb621" title="Get the application name for use in user interaction.">kim_selection_hints_get_application_name()</a>.<p>
+In many cases a single application may select different identities for different purposes. For example an email application might use different identities to check mail for different accounts. If your application has this property you may need to provide the user with a localized string describing how the identity will be used. You can specify this string with <a class="el" href="group__kim__selection__hints__reference.html#g8fce520fbadcdd10f8928fbea43083ee" title="Get the strings used to prompt the user to select the identity.">kim_selection_hints_get_explanation()</a>. You can find out what string will be used with <a class="el" href="group__kim__selection__hints__reference.html#gcc6ec35aa53cad7a2eca07ceea66a3c6" title="Set the strings used to prompt the user to select the identity.">kim_selection_hints_set_explanation()</a>.<p>
+Since the user may choose to acquire credentials when selection an identity, KIM also provides <a class="el" href="group__kim__selection__hints__reference.html#g2cbc1a52c6fa4c94aa85acf7abb205c4" title="Set the options which will be used if credentials need to be acquired.">kim_selection_hints_set_options()</a> to set what credential acquisition options are used. <a class="el" href="group__kim__selection__hints__reference.html#gb8c6aea4ac6b55d77585a5f3047dd3e7" title="Get the options which will be used if credentials need to be acquired.">kim_selection_hints_get_options()</a> returns the options which will be used.<p>
+If you need to disable user interaction, use <a class="el" href="group__kim__selection__hints__reference.html#g290210bc1cb57b49539cc7f8c0d8fa2c" title="Set whether or not KIM may interact with the user to select an identity.">kim_selection_hints_set_allow_user_interaction()</a>. Use <a class="el" href="group__kim__selection__hints__reference.html#g95691183f6a85b8208858bd948a64c55" title="Get whether or not KIM may interact with the user to select an identity.">kim_selection_hints_get_allow_user_interaction()</a> to find out whether or not user interaction is enabled. User interaction is enabled by default.<p>
+See <a class="el" href="group__kim__selection__hints__reference.html">KIM Selection Hints Reference Documentation</a> for information on specific APIs. <hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index 202d2e67988b2803331534e1f60056d79a8575ce..765b4d14e754b703366a48c1da8bf75418487448 100644 (file)
@@ -7,7 +7,7 @@
 <!-- Generated by Doxygen 1.5.3 -->
 <h1><a class="anchor" name="kim_string_overview">KIM String Overview</a></h1>A UTF8 string.<p>
 Memory management routines are provided for runtime consistency on operating systems with shared libraries and multiple runtimes.<p>
-See <a class="el" href="group__kim__string__reference.html">KIM String Reference Documentation</a> for information on specific APIs. <hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:19 2008 for Kerberos Identity Management by&nbsp;
+See <a class="el" href="group__kim__string__reference.html">KIM String Reference Documentation</a> for information on specific APIs. <hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index ee3e888cb511ba04435a2615f73ced2ff24364db..fb5fc339b60a27bdc9f67d269600f5dbe8a72df1 100644 (file)
 <li><a class="el" href="group__kim__error__reference.html">KIM Error Reference Documentation</a>
 <li><a class="el" href="group__kim__identity__reference.html">KIM Identity Reference Documentation</a>
 <li><a class="el" href="group__kim__options__reference.html">KIM Options Reference Documentation</a>
-<li><a class="el" href="group__kim__favorite__identities__reference.html">KIM Favorite Identities Documentation</a>
 <li><a class="el" href="group__kim__preferences__reference.html">KIM Preferences Documentation</a>
 <li><a class="el" href="group__kim__selection__hints__reference.html">KIM Selection Hints Reference Documentation</a>
 <li><a class="el" href="group__kim__string__reference.html">KIM String Reference Documentation</a>
 <li><a class="el" href="group__kim__types__reference.html">KIM Types and Constants</a>
 </ul>
-<hr size="1"><address style="text-align: right;"><small>Generated on Wed May 7 15:22:20 2008 for Kerberos Identity Management by&nbsp;
+<hr size="1"><address style="text-align: right;"><small>Generated on Thu Sep 18 10:55:28 2008 for Kerberos Identity Management by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.3 </small></address>
 </body>
index 8e3facada4d8cd625f2502eda6ee0cb216759e85..4461c3163f093c708067160398dc29e0f67498ed 100644 (file)
@@ -83,8 +83,6 @@ extern "C" {
  * \li #kim_identity_create_from_krb5_principal() generates an identity object from a krb5_principal object.
  * \li #kim_identity_get_krb5_principal() returns a krb5_principal object for an identity object.
  *
- * \li #kim_identity_get_gss_name() returns a gss_name_t object for use with gss_acquire_cred().
- *
  * \note If you need to know if two identity objects refer to the same entity, use #kim_identity_compare().
  *
  *
@@ -256,16 +254,6 @@ kim_error kim_identity_get_krb5_principal (kim_identity  in_identity,
                                              krb5_context    in_krb5_context,
                                              krb5_principal *out_krb5_principal);
 
-/*!
- * \param in_identity   an identity object.
- * \param out_gss_name  on exit, a gss_name_t representation of \a in_identity.
- *                      Must be freed with gss_release_name().
- * \return On success, #KIM_NO_ERROR.  On failure, an error code representing the failure.
- * \brief Get the gss_name_t representation of an identity.
- */
-kim_error kim_identity_get_gss_name (kim_identity  in_identity,
-                                       gss_name_t     *out_gss_name);
-
 /*!
  * \param in_identity  an identity object whose password will be changed.
  * \param in_options   initial credential options to be used if a new credential is obtained.
index db4279020cf36c11ce7b06ebfef3b87e2a30ccf8..2fd8579d0d08be4aa81f1d031b575c72352c8ed2 100644 (file)
@@ -471,7 +471,16 @@ kim_error kim_identity_get_krb5_principal (kim_identity    in_identity,
 }
 
 /* ------------------------------------------------------------------------ */
-
+/*!
+ * \param in_identity   an identity object.
+ * \param out_gss_name  on exit, a gss_name_t representation of \a in_identity.
+ *                      Must be freed with gss_release_name().
+ * \return On success, #KIM_NO_ERROR.  On failure, an error code representing the failure.
+ * \brief Get the gss_name_t representation of an identity.
+ */
+/*kim_error kim_identity_get_gss_name (kim_identity  in_identity,
+                                       gss_name_t     *out_gss_name);*/
+/*
 kim_error kim_identity_get_gss_name (kim_identity  in_identity,
                                      gss_name_t   *out_gss_name)
 {
@@ -485,7 +494,7 @@ kim_error kim_identity_get_gss_name (kim_identity  in_identity,
     }
     
     return check_error (err);
-}
+}*/
 
 /* ------------------------------------------------------------------------ */