1226031Sstas<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2226031Sstas<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 3226031Sstas<title>HeimdalKerberos5library: Heimdal Kerberos 5 keytab handling functions</title> 4226031Sstas<link href="doxygen.css" rel="stylesheet" type="text/css"> 5226031Sstas<link href="tabs.css" rel="stylesheet" type="text/css"> 6226031Sstas</head><body> 7226031Sstas<p> 8226031Sstas<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a> 9226031Sstas</p> 10226031Sstas<!-- end of header marker --> 11226031Sstas<!-- Generated by Doxygen 1.5.6 --> 12226031Sstas<div class="navigation" id="top"> 13226031Sstas <div class="tabs"> 14226031Sstas <ul> 15226031Sstas <li><a href="index.html"><span>Main Page</span></a></li> 16226031Sstas <li><a href="pages.html"><span>Related Pages</span></a></li> 17226031Sstas <li><a href="modules.html"><span>Modules</span></a></li> 18226031Sstas <li><a href="annotated.html"><span>Data Structures</span></a></li> 19226031Sstas </ul> 20226031Sstas </div> 21226031Sstas</div> 22226031Sstas<div class="contents"> 23226031Sstas<h1>Heimdal Kerberos 5 keytab handling functions</h1><table border="0" cellpadding="0" cellspacing="0"> 24226031Sstas<tr><td></td></tr> 25226031Sstas<tr><td colspan="2"><br><h2>Functions</h2></td></tr> 26226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 27226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#g0b54b479db89c76e46d6edae8328848e">krb5_kt_register</a> (krb5_context context, const krb5_kt_ops *ops)</td></tr> 28226031Sstas 29226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 30226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#gc57fead58fb1baa003d6438613731901">krb5_kt_resolve</a> (krb5_context context, const char *name, krb5_keytab *id)</td></tr> 31226031Sstas 32226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 33226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#g3fdc1c60208dc99c1f0ebec18e2a7a52">krb5_kt_default_name</a> (krb5_context context, char *name, size_t namesize)</td></tr> 34226031Sstas 35226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 36226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#gaaff7211e887e908d909d75febf33200">krb5_kt_default_modify_name</a> (krb5_context context, char *name, size_t namesize)</td></tr> 37226031Sstas 38226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 39226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#gfcd059883c79dbd99a179bc4225d16b5">krb5_kt_default</a> (krb5_context context, krb5_keytab *id)</td></tr> 40226031Sstas 41226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 42226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#g6040b238ff8adeb346ca35e5530bdeff">krb5_kt_read_service_key</a> (krb5_context context, krb5_pointer keyprocarg, krb5_principal principal, krb5_kvno vno, krb5_enctype enctype, krb5_keyblock **key)</td></tr> 43226031Sstas 44226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 45226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#g632921a4b144a4eb656968d836efd9bb">krb5_kt_get_type</a> (krb5_context context, krb5_keytab keytab, char *prefix, size_t prefixsize)</td></tr> 46226031Sstas 47226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 48226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#ga10348fa20bbae806d652aa4adb44bdd">krb5_kt_get_name</a> (krb5_context context, krb5_keytab keytab, char *name, size_t namesize)</td></tr> 49226031Sstas 50226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 51226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#g40744ad6c5d9eed2b76d26f5e698d1f3">krb5_kt_get_full_name</a> (krb5_context context, krb5_keytab keytab, char **str)</td></tr> 52226031Sstas 53226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 54226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#gb67f5ae0a7c4b87d193218b842cad590">krb5_kt_close</a> (krb5_context context, krb5_keytab id)</td></tr> 55226031Sstas 56226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 57226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#g23f1f8d506d680564ff0c783b903abf9">krb5_kt_destroy</a> (krb5_context context, krb5_keytab id)</td></tr> 58226031Sstas 59226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION krb5_boolean <br> 60226031SstasKRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#g688d397ec30b48e5edc5a59567bc8010">krb5_kt_compare</a> (krb5_context context, krb5_keytab_entry *entry, krb5_const_principal principal, krb5_kvno vno, krb5_enctype enctype)</td></tr> 61226031Sstas 62226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 63226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#gd7183b9573330db0575118057b3a02a5">krb5_kt_get_entry</a> (krb5_context context, krb5_keytab id, krb5_const_principal principal, krb5_kvno kvno, krb5_enctype enctype, krb5_keytab_entry *entry)</td></tr> 64226031Sstas 65226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 66226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#g6c6c4233517bd5b12f5c3a99ed31b058">krb5_kt_copy_entry_contents</a> (krb5_context context, const krb5_keytab_entry *in, krb5_keytab_entry *out)</td></tr> 67226031Sstas 68226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 69226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#gc0774ab1407eaaaa0e5998478de246e2">krb5_kt_free_entry</a> (krb5_context context, krb5_keytab_entry *entry)</td></tr> 70226031Sstas 71226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 72226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#g1efd8ee48d6e3caa31cad475423b8917">krb5_kt_start_seq_get</a> (krb5_context context, krb5_keytab id, krb5_kt_cursor *cursor)</td></tr> 73226031Sstas 74226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 75226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#gc40140c41333a86d3c40426f50b4e1b0">krb5_kt_next_entry</a> (krb5_context context, krb5_keytab id, krb5_keytab_entry *entry, krb5_kt_cursor *cursor)</td></tr> 76226031Sstas 77226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 78226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#g11289efb407d93a1f84d5c64731a4bd1">krb5_kt_end_seq_get</a> (krb5_context context, krb5_keytab id, krb5_kt_cursor *cursor)</td></tr> 79226031Sstas 80226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 81226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#g68d16c2a59d10dc3ca84bf8cbf6a4731">krb5_kt_add_entry</a> (krb5_context context, krb5_keytab id, krb5_keytab_entry *entry)</td></tr> 82226031Sstas 83226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 84226031Sstaskrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#g0f3e7f55fd97a595c961f0ffc49bebac">krb5_kt_remove_entry</a> (krb5_context context, krb5_keytab id, krb5_keytab_entry *entry)</td></tr> 85226031Sstas 86226031Sstas<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION krb5_boolean <br> 87226031SstasKRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__keytab.html#gf0947f9089022eaf4c83a463cad10ed3">krb5_kt_have_content</a> (krb5_context context, krb5_keytab id)</td></tr> 88226031Sstas 89226031Sstas</table> 90226031Sstas<hr><a name="_details"></a><h2>Detailed Description</h2> 91226031Sstas<hr><h2>Function Documentation</h2> 92226031Sstas<a class="anchor" name="g68d16c2a59d10dc3ca84bf8cbf6a4731"></a><!-- doxytag: member="keytab.c::krb5_kt_add_entry" ref="g68d16c2a59d10dc3ca84bf8cbf6a4731" args="(krb5_context context, krb5_keytab id, krb5_keytab_entry *entry)" --> 93226031Sstas<div class="memitem"> 94226031Sstas<div class="memproto"> 95226031Sstas <table class="memname"> 96226031Sstas <tr> 97226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_add_entry </td> 98226031Sstas <td>(</td> 99226031Sstas <td class="paramtype">krb5_context </td> 100226031Sstas <td class="paramname"> <em>context</em>, </td> 101226031Sstas </tr> 102226031Sstas <tr> 103226031Sstas <td class="paramkey"></td> 104226031Sstas <td></td> 105226031Sstas <td class="paramtype">krb5_keytab </td> 106226031Sstas <td class="paramname"> <em>id</em>, </td> 107226031Sstas </tr> 108226031Sstas <tr> 109226031Sstas <td class="paramkey"></td> 110226031Sstas <td></td> 111226031Sstas <td class="paramtype">krb5_keytab_entry * </td> 112226031Sstas <td class="paramname"> <em>entry</em></td><td> </td> 113226031Sstas </tr> 114226031Sstas <tr> 115226031Sstas <td></td> 116226031Sstas <td>)</td> 117226031Sstas <td></td><td></td><td></td> 118226031Sstas </tr> 119226031Sstas </table> 120226031Sstas</div> 121226031Sstas<div class="memdoc"> 122226031Sstas 123226031Sstas<p> 124226031SstasAdd the entry in `entry' to the keytab `id'.<p> 125226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 126226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 127226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 128226031Sstas <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>a keytab. </td></tr> 129226031Sstas <tr><td valign="top"></td><td valign="top"><em>entry</em> </td><td>the entry to add</td></tr> 130226031Sstas </table> 131226031Sstas</dl> 132226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 133226031Sstas 134226031Sstas</div> 135226031Sstas</div><p> 136226031Sstas<a class="anchor" name="gb67f5ae0a7c4b87d193218b842cad590"></a><!-- doxytag: member="keytab.c::krb5_kt_close" ref="gb67f5ae0a7c4b87d193218b842cad590" args="(krb5_context context, krb5_keytab id)" --> 137226031Sstas<div class="memitem"> 138226031Sstas<div class="memproto"> 139226031Sstas <table class="memname"> 140226031Sstas <tr> 141226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_close </td> 142226031Sstas <td>(</td> 143226031Sstas <td class="paramtype">krb5_context </td> 144226031Sstas <td class="paramname"> <em>context</em>, </td> 145226031Sstas </tr> 146226031Sstas <tr> 147226031Sstas <td class="paramkey"></td> 148226031Sstas <td></td> 149226031Sstas <td class="paramtype">krb5_keytab </td> 150226031Sstas <td class="paramname"> <em>id</em></td><td> </td> 151226031Sstas </tr> 152226031Sstas <tr> 153226031Sstas <td></td> 154226031Sstas <td>)</td> 155226031Sstas <td></td><td></td><td></td> 156226031Sstas </tr> 157226031Sstas </table> 158226031Sstas</div> 159226031Sstas<div class="memdoc"> 160226031Sstas 161226031Sstas<p> 162226031SstasFinish using the keytab in `id'. All resources will be released, even on errors.<p> 163226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 164226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 165226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 166226031Sstas <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>keytab to close.</td></tr> 167226031Sstas </table> 168226031Sstas</dl> 169226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 170226031Sstas 171226031Sstas</div> 172226031Sstas</div><p> 173226031Sstas<a class="anchor" name="g688d397ec30b48e5edc5a59567bc8010"></a><!-- doxytag: member="keytab.c::krb5_kt_compare" ref="g688d397ec30b48e5edc5a59567bc8010" args="(krb5_context context, krb5_keytab_entry *entry, krb5_const_principal principal, krb5_kvno vno, krb5_enctype enctype)" --> 174226031Sstas<div class="memitem"> 175226031Sstas<div class="memproto"> 176226031Sstas <table class="memname"> 177226031Sstas <tr> 178226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL krb5_kt_compare </td> 179226031Sstas <td>(</td> 180226031Sstas <td class="paramtype">krb5_context </td> 181226031Sstas <td class="paramname"> <em>context</em>, </td> 182226031Sstas </tr> 183226031Sstas <tr> 184226031Sstas <td class="paramkey"></td> 185226031Sstas <td></td> 186226031Sstas <td class="paramtype">krb5_keytab_entry * </td> 187226031Sstas <td class="paramname"> <em>entry</em>, </td> 188226031Sstas </tr> 189226031Sstas <tr> 190226031Sstas <td class="paramkey"></td> 191226031Sstas <td></td> 192226031Sstas <td class="paramtype">krb5_const_principal </td> 193226031Sstas <td class="paramname"> <em>principal</em>, </td> 194226031Sstas </tr> 195226031Sstas <tr> 196226031Sstas <td class="paramkey"></td> 197226031Sstas <td></td> 198226031Sstas <td class="paramtype">krb5_kvno </td> 199226031Sstas <td class="paramname"> <em>vno</em>, </td> 200226031Sstas </tr> 201226031Sstas <tr> 202226031Sstas <td class="paramkey"></td> 203226031Sstas <td></td> 204226031Sstas <td class="paramtype">krb5_enctype </td> 205226031Sstas <td class="paramname"> <em>enctype</em></td><td> </td> 206226031Sstas </tr> 207226031Sstas <tr> 208226031Sstas <td></td> 209226031Sstas <td>)</td> 210226031Sstas <td></td><td></td><td></td> 211226031Sstas </tr> 212226031Sstas </table> 213226031Sstas</div> 214226031Sstas<div class="memdoc"> 215226031Sstas 216226031Sstas<p> 217226031SstasCompare `entry' against `principal, vno, enctype'. Any of `principal, vno, enctype' might be 0 which acts as a wildcard. Return TRUE if they compare the same, FALSE otherwise.<p> 218226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 219226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 220226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 221226031Sstas <tr><td valign="top"></td><td valign="top"><em>entry</em> </td><td>an entry to match with. </td></tr> 222226031Sstas <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>principal to match, NULL matches all principals. </td></tr> 223226031Sstas <tr><td valign="top"></td><td valign="top"><em>vno</em> </td><td>key version to match, 0 matches all key version numbers. </td></tr> 224226031Sstas <tr><td valign="top"></td><td valign="top"><em>enctype</em> </td><td>encryption type to match, 0 matches all encryption types.</td></tr> 225226031Sstas </table> 226226031Sstas</dl> 227226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return TRUE or match, FALSE if not matched. </dd></dl> 228226031Sstas 229226031Sstas</div> 230226031Sstas</div><p> 231226031Sstas<a class="anchor" name="g6c6c4233517bd5b12f5c3a99ed31b058"></a><!-- doxytag: member="keytab.c::krb5_kt_copy_entry_contents" ref="g6c6c4233517bd5b12f5c3a99ed31b058" args="(krb5_context context, const krb5_keytab_entry *in, krb5_keytab_entry *out)" --> 232226031Sstas<div class="memitem"> 233226031Sstas<div class="memproto"> 234226031Sstas <table class="memname"> 235226031Sstas <tr> 236226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_copy_entry_contents </td> 237226031Sstas <td>(</td> 238226031Sstas <td class="paramtype">krb5_context </td> 239226031Sstas <td class="paramname"> <em>context</em>, </td> 240226031Sstas </tr> 241226031Sstas <tr> 242226031Sstas <td class="paramkey"></td> 243226031Sstas <td></td> 244226031Sstas <td class="paramtype">const krb5_keytab_entry * </td> 245226031Sstas <td class="paramname"> <em>in</em>, </td> 246226031Sstas </tr> 247226031Sstas <tr> 248226031Sstas <td class="paramkey"></td> 249226031Sstas <td></td> 250226031Sstas <td class="paramtype">krb5_keytab_entry * </td> 251226031Sstas <td class="paramname"> <em>out</em></td><td> </td> 252226031Sstas </tr> 253226031Sstas <tr> 254226031Sstas <td></td> 255226031Sstas <td>)</td> 256226031Sstas <td></td><td></td><td></td> 257226031Sstas </tr> 258226031Sstas </table> 259226031Sstas</div> 260226031Sstas<div class="memdoc"> 261226031Sstas 262226031Sstas<p> 263226031SstasCopy the contents of `in' into `out'.<p> 264226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 265226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 266226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 267226031Sstas <tr><td valign="top"></td><td valign="top"><em>in</em> </td><td>the keytab entry to copy. </td></tr> 268226031Sstas <tr><td valign="top"></td><td valign="top"><em>out</em> </td><td>the copy of the keytab entry, free with <a class="el" href="group__krb5__keytab.html#gc0774ab1407eaaaa0e5998478de246e2">krb5_kt_free_entry()</a>.</td></tr> 269226031Sstas </table> 270226031Sstas</dl> 271226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 272226031Sstas 273226031Sstas</div> 274226031Sstas</div><p> 275226031Sstas<a class="anchor" name="gfcd059883c79dbd99a179bc4225d16b5"></a><!-- doxytag: member="keytab.c::krb5_kt_default" ref="gfcd059883c79dbd99a179bc4225d16b5" args="(krb5_context context, krb5_keytab *id)" --> 276226031Sstas<div class="memitem"> 277226031Sstas<div class="memproto"> 278226031Sstas <table class="memname"> 279226031Sstas <tr> 280226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_default </td> 281226031Sstas <td>(</td> 282226031Sstas <td class="paramtype">krb5_context </td> 283226031Sstas <td class="paramname"> <em>context</em>, </td> 284226031Sstas </tr> 285226031Sstas <tr> 286226031Sstas <td class="paramkey"></td> 287226031Sstas <td></td> 288226031Sstas <td class="paramtype">krb5_keytab * </td> 289226031Sstas <td class="paramname"> <em>id</em></td><td> </td> 290226031Sstas </tr> 291226031Sstas <tr> 292226031Sstas <td></td> 293226031Sstas <td>)</td> 294226031Sstas <td></td><td></td><td></td> 295226031Sstas </tr> 296226031Sstas </table> 297226031Sstas</div> 298226031Sstas<div class="memdoc"> 299226031Sstas 300226031Sstas<p> 301226031SstasSet `id' to the default keytab.<p> 302226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 303226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 304226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 305226031Sstas <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>the new default keytab.</td></tr> 306226031Sstas </table> 307226031Sstas</dl> 308226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 309226031Sstas 310226031Sstas</div> 311226031Sstas</div><p> 312226031Sstas<a class="anchor" name="gaaff7211e887e908d909d75febf33200"></a><!-- doxytag: member="keytab.c::krb5_kt_default_modify_name" ref="gaaff7211e887e908d909d75febf33200" args="(krb5_context context, char *name, size_t namesize)" --> 313226031Sstas<div class="memitem"> 314226031Sstas<div class="memproto"> 315226031Sstas <table class="memname"> 316226031Sstas <tr> 317226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_default_modify_name </td> 318226031Sstas <td>(</td> 319226031Sstas <td class="paramtype">krb5_context </td> 320226031Sstas <td class="paramname"> <em>context</em>, </td> 321226031Sstas </tr> 322226031Sstas <tr> 323226031Sstas <td class="paramkey"></td> 324226031Sstas <td></td> 325226031Sstas <td class="paramtype">char * </td> 326226031Sstas <td class="paramname"> <em>name</em>, </td> 327226031Sstas </tr> 328226031Sstas <tr> 329226031Sstas <td class="paramkey"></td> 330226031Sstas <td></td> 331226031Sstas <td class="paramtype">size_t </td> 332226031Sstas <td class="paramname"> <em>namesize</em></td><td> </td> 333226031Sstas </tr> 334226031Sstas <tr> 335226031Sstas <td></td> 336226031Sstas <td>)</td> 337226031Sstas <td></td><td></td><td></td> 338226031Sstas </tr> 339226031Sstas </table> 340226031Sstas</div> 341226031Sstas<div class="memdoc"> 342226031Sstas 343226031Sstas<p> 344226031SstasCopy the name of the default modify keytab into `name'.<p> 345226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 346226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 347226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 348226031Sstas <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>buffer where the name will be written </td></tr> 349226031Sstas <tr><td valign="top"></td><td valign="top"><em>namesize</em> </td><td>length of name</td></tr> 350226031Sstas </table> 351226031Sstas</dl> 352226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 353226031Sstas 354226031Sstas</div> 355226031Sstas</div><p> 356226031Sstas<a class="anchor" name="g3fdc1c60208dc99c1f0ebec18e2a7a52"></a><!-- doxytag: member="keytab.c::krb5_kt_default_name" ref="g3fdc1c60208dc99c1f0ebec18e2a7a52" args="(krb5_context context, char *name, size_t namesize)" --> 357226031Sstas<div class="memitem"> 358226031Sstas<div class="memproto"> 359226031Sstas <table class="memname"> 360226031Sstas <tr> 361226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_default_name </td> 362226031Sstas <td>(</td> 363226031Sstas <td class="paramtype">krb5_context </td> 364226031Sstas <td class="paramname"> <em>context</em>, </td> 365226031Sstas </tr> 366226031Sstas <tr> 367226031Sstas <td class="paramkey"></td> 368226031Sstas <td></td> 369226031Sstas <td class="paramtype">char * </td> 370226031Sstas <td class="paramname"> <em>name</em>, </td> 371226031Sstas </tr> 372226031Sstas <tr> 373226031Sstas <td class="paramkey"></td> 374226031Sstas <td></td> 375226031Sstas <td class="paramtype">size_t </td> 376226031Sstas <td class="paramname"> <em>namesize</em></td><td> </td> 377226031Sstas </tr> 378226031Sstas <tr> 379226031Sstas <td></td> 380226031Sstas <td>)</td> 381226031Sstas <td></td><td></td><td></td> 382226031Sstas </tr> 383226031Sstas </table> 384226031Sstas</div> 385226031Sstas<div class="memdoc"> 386226031Sstas 387226031Sstas<p> 388226031Sstascopy the name of the default keytab into `name'.<p> 389226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 390226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 391226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 392226031Sstas <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>buffer where the name will be written </td></tr> 393226031Sstas <tr><td valign="top"></td><td valign="top"><em>namesize</em> </td><td>length of name</td></tr> 394226031Sstas </table> 395226031Sstas</dl> 396226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 397226031Sstas 398226031Sstas</div> 399226031Sstas</div><p> 400226031Sstas<a class="anchor" name="g23f1f8d506d680564ff0c783b903abf9"></a><!-- doxytag: member="keytab.c::krb5_kt_destroy" ref="g23f1f8d506d680564ff0c783b903abf9" args="(krb5_context context, krb5_keytab id)" --> 401226031Sstas<div class="memitem"> 402226031Sstas<div class="memproto"> 403226031Sstas <table class="memname"> 404226031Sstas <tr> 405226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_destroy </td> 406226031Sstas <td>(</td> 407226031Sstas <td class="paramtype">krb5_context </td> 408226031Sstas <td class="paramname"> <em>context</em>, </td> 409226031Sstas </tr> 410226031Sstas <tr> 411226031Sstas <td class="paramkey"></td> 412226031Sstas <td></td> 413226031Sstas <td class="paramtype">krb5_keytab </td> 414226031Sstas <td class="paramname"> <em>id</em></td><td> </td> 415226031Sstas </tr> 416226031Sstas <tr> 417226031Sstas <td></td> 418226031Sstas <td>)</td> 419226031Sstas <td></td><td></td><td></td> 420226031Sstas </tr> 421226031Sstas </table> 422226031Sstas</div> 423226031Sstas<div class="memdoc"> 424226031Sstas 425226031Sstas<p> 426226031SstasDestroy (remove) the keytab in `id'. All resources will be released, even on errors, does the equvalment of <a class="el" href="group__krb5__keytab.html#gb67f5ae0a7c4b87d193218b842cad590">krb5_kt_close()</a> on the resources.<p> 427226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 428226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 429226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 430226031Sstas <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>keytab to destroy.</td></tr> 431226031Sstas </table> 432226031Sstas</dl> 433226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 434226031Sstas 435226031Sstas</div> 436226031Sstas</div><p> 437226031Sstas<a class="anchor" name="g11289efb407d93a1f84d5c64731a4bd1"></a><!-- doxytag: member="keytab.c::krb5_kt_end_seq_get" ref="g11289efb407d93a1f84d5c64731a4bd1" args="(krb5_context context, krb5_keytab id, krb5_kt_cursor *cursor)" --> 438226031Sstas<div class="memitem"> 439226031Sstas<div class="memproto"> 440226031Sstas <table class="memname"> 441226031Sstas <tr> 442226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_end_seq_get </td> 443226031Sstas <td>(</td> 444226031Sstas <td class="paramtype">krb5_context </td> 445226031Sstas <td class="paramname"> <em>context</em>, </td> 446226031Sstas </tr> 447226031Sstas <tr> 448226031Sstas <td class="paramkey"></td> 449226031Sstas <td></td> 450226031Sstas <td class="paramtype">krb5_keytab </td> 451226031Sstas <td class="paramname"> <em>id</em>, </td> 452226031Sstas </tr> 453226031Sstas <tr> 454226031Sstas <td class="paramkey"></td> 455226031Sstas <td></td> 456226031Sstas <td class="paramtype">krb5_kt_cursor * </td> 457226031Sstas <td class="paramname"> <em>cursor</em></td><td> </td> 458226031Sstas </tr> 459226031Sstas <tr> 460226031Sstas <td></td> 461226031Sstas <td>)</td> 462226031Sstas <td></td><td></td><td></td> 463226031Sstas </tr> 464226031Sstas </table> 465226031Sstas</div> 466226031Sstas<div class="memdoc"> 467226031Sstas 468226031Sstas<p> 469226031SstasRelease all resources associated with `cursor'.<p> 470226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 471226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 472226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 473226031Sstas <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>a keytab. </td></tr> 474226031Sstas <tr><td valign="top"></td><td valign="top"><em>cursor</em> </td><td>the cursor to free.</td></tr> 475226031Sstas </table> 476226031Sstas</dl> 477226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 478226031Sstas 479226031Sstas</div> 480226031Sstas</div><p> 481226031Sstas<a class="anchor" name="gc0774ab1407eaaaa0e5998478de246e2"></a><!-- doxytag: member="keytab.c::krb5_kt_free_entry" ref="gc0774ab1407eaaaa0e5998478de246e2" args="(krb5_context context, krb5_keytab_entry *entry)" --> 482226031Sstas<div class="memitem"> 483226031Sstas<div class="memproto"> 484226031Sstas <table class="memname"> 485226031Sstas <tr> 486226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_free_entry </td> 487226031Sstas <td>(</td> 488226031Sstas <td class="paramtype">krb5_context </td> 489226031Sstas <td class="paramname"> <em>context</em>, </td> 490226031Sstas </tr> 491226031Sstas <tr> 492226031Sstas <td class="paramkey"></td> 493226031Sstas <td></td> 494226031Sstas <td class="paramtype">krb5_keytab_entry * </td> 495226031Sstas <td class="paramname"> <em>entry</em></td><td> </td> 496226031Sstas </tr> 497226031Sstas <tr> 498226031Sstas <td></td> 499226031Sstas <td>)</td> 500226031Sstas <td></td><td></td><td></td> 501226031Sstas </tr> 502226031Sstas </table> 503226031Sstas</div> 504226031Sstas<div class="memdoc"> 505226031Sstas 506226031Sstas<p> 507226031SstasFree the contents of `entry'.<p> 508226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 509226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 510226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 511226031Sstas <tr><td valign="top"></td><td valign="top"><em>entry</em> </td><td>the entry to free</td></tr> 512226031Sstas </table> 513226031Sstas</dl> 514226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 515226031Sstas 516226031Sstas</div> 517226031Sstas</div><p> 518226031Sstas<a class="anchor" name="gd7183b9573330db0575118057b3a02a5"></a><!-- doxytag: member="keytab.c::krb5_kt_get_entry" ref="gd7183b9573330db0575118057b3a02a5" args="(krb5_context context, krb5_keytab id, krb5_const_principal principal, krb5_kvno kvno, krb5_enctype enctype, krb5_keytab_entry *entry)" --> 519226031Sstas<div class="memitem"> 520226031Sstas<div class="memproto"> 521226031Sstas <table class="memname"> 522226031Sstas <tr> 523226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_get_entry </td> 524226031Sstas <td>(</td> 525226031Sstas <td class="paramtype">krb5_context </td> 526226031Sstas <td class="paramname"> <em>context</em>, </td> 527226031Sstas </tr> 528226031Sstas <tr> 529226031Sstas <td class="paramkey"></td> 530226031Sstas <td></td> 531226031Sstas <td class="paramtype">krb5_keytab </td> 532226031Sstas <td class="paramname"> <em>id</em>, </td> 533226031Sstas </tr> 534226031Sstas <tr> 535226031Sstas <td class="paramkey"></td> 536226031Sstas <td></td> 537226031Sstas <td class="paramtype">krb5_const_principal </td> 538226031Sstas <td class="paramname"> <em>principal</em>, </td> 539226031Sstas </tr> 540226031Sstas <tr> 541226031Sstas <td class="paramkey"></td> 542226031Sstas <td></td> 543226031Sstas <td class="paramtype">krb5_kvno </td> 544226031Sstas <td class="paramname"> <em>kvno</em>, </td> 545226031Sstas </tr> 546226031Sstas <tr> 547226031Sstas <td class="paramkey"></td> 548226031Sstas <td></td> 549226031Sstas <td class="paramtype">krb5_enctype </td> 550226031Sstas <td class="paramname"> <em>enctype</em>, </td> 551226031Sstas </tr> 552226031Sstas <tr> 553226031Sstas <td class="paramkey"></td> 554226031Sstas <td></td> 555226031Sstas <td class="paramtype">krb5_keytab_entry * </td> 556226031Sstas <td class="paramname"> <em>entry</em></td><td> </td> 557226031Sstas </tr> 558226031Sstas <tr> 559226031Sstas <td></td> 560226031Sstas <td>)</td> 561226031Sstas <td></td><td></td><td></td> 562226031Sstas </tr> 563226031Sstas </table> 564226031Sstas</div> 565226031Sstas<div class="memdoc"> 566226031Sstas 567226031Sstas<p> 568226031SstasRetrieve the keytab entry for `principal, kvno, enctype' into `entry' from the keytab `id'. Matching is done like <a class="el" href="group__krb5__keytab.html#g688d397ec30b48e5edc5a59567bc8010">krb5_kt_compare()</a>.<p> 569226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 570226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 571226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 572226031Sstas <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>a keytab. </td></tr> 573226031Sstas <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>principal to match, NULL matches all principals. </td></tr> 574226031Sstas <tr><td valign="top"></td><td valign="top"><em>kvno</em> </td><td>key version to match, 0 matches all key version numbers. </td></tr> 575226031Sstas <tr><td valign="top"></td><td valign="top"><em>enctype</em> </td><td>encryption type to match, 0 matches all encryption types. </td></tr> 576226031Sstas <tr><td valign="top"></td><td valign="top"><em>entry</em> </td><td>the returned entry, free with <a class="el" href="group__krb5__keytab.html#gc0774ab1407eaaaa0e5998478de246e2">krb5_kt_free_entry()</a>.</td></tr> 577226031Sstas </table> 578226031Sstas</dl> 579226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 580226031Sstas 581226031Sstas</div> 582226031Sstas</div><p> 583226031Sstas<a class="anchor" name="g40744ad6c5d9eed2b76d26f5e698d1f3"></a><!-- doxytag: member="keytab.c::krb5_kt_get_full_name" ref="g40744ad6c5d9eed2b76d26f5e698d1f3" args="(krb5_context context, krb5_keytab keytab, char **str)" --> 584226031Sstas<div class="memitem"> 585226031Sstas<div class="memproto"> 586226031Sstas <table class="memname"> 587226031Sstas <tr> 588226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_get_full_name </td> 589226031Sstas <td>(</td> 590226031Sstas <td class="paramtype">krb5_context </td> 591226031Sstas <td class="paramname"> <em>context</em>, </td> 592226031Sstas </tr> 593226031Sstas <tr> 594226031Sstas <td class="paramkey"></td> 595226031Sstas <td></td> 596226031Sstas <td class="paramtype">krb5_keytab </td> 597226031Sstas <td class="paramname"> <em>keytab</em>, </td> 598226031Sstas </tr> 599226031Sstas <tr> 600226031Sstas <td class="paramkey"></td> 601226031Sstas <td></td> 602226031Sstas <td class="paramtype">char ** </td> 603226031Sstas <td class="paramname"> <em>str</em></td><td> </td> 604226031Sstas </tr> 605226031Sstas <tr> 606226031Sstas <td></td> 607226031Sstas <td>)</td> 608226031Sstas <td></td><td></td><td></td> 609226031Sstas </tr> 610226031Sstas </table> 611226031Sstas</div> 612226031Sstas<div class="memdoc"> 613226031Sstas 614226031Sstas<p> 615226031SstasRetrieve the full name of the keytab `keytab' and store the name in `str'.<p> 616226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 617226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 618226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 619226031Sstas <tr><td valign="top"></td><td valign="top"><em>keytab</em> </td><td>keytab to get name for. </td></tr> 620226031Sstas <tr><td valign="top"></td><td valign="top"><em>str</em> </td><td>the name of the keytab name, usee krb5_xfree() to free the string. On error, *str is set to NULL.</td></tr> 621226031Sstas </table> 622226031Sstas</dl> 623226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 624226031Sstas 625226031Sstas</div> 626226031Sstas</div><p> 627226031Sstas<a class="anchor" name="ga10348fa20bbae806d652aa4adb44bdd"></a><!-- doxytag: member="keytab.c::krb5_kt_get_name" ref="ga10348fa20bbae806d652aa4adb44bdd" args="(krb5_context context, krb5_keytab keytab, char *name, size_t namesize)" --> 628226031Sstas<div class="memitem"> 629226031Sstas<div class="memproto"> 630226031Sstas <table class="memname"> 631226031Sstas <tr> 632226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_get_name </td> 633226031Sstas <td>(</td> 634226031Sstas <td class="paramtype">krb5_context </td> 635226031Sstas <td class="paramname"> <em>context</em>, </td> 636226031Sstas </tr> 637226031Sstas <tr> 638226031Sstas <td class="paramkey"></td> 639226031Sstas <td></td> 640226031Sstas <td class="paramtype">krb5_keytab </td> 641226031Sstas <td class="paramname"> <em>keytab</em>, </td> 642226031Sstas </tr> 643226031Sstas <tr> 644226031Sstas <td class="paramkey"></td> 645226031Sstas <td></td> 646226031Sstas <td class="paramtype">char * </td> 647226031Sstas <td class="paramname"> <em>name</em>, </td> 648226031Sstas </tr> 649226031Sstas <tr> 650226031Sstas <td class="paramkey"></td> 651226031Sstas <td></td> 652226031Sstas <td class="paramtype">size_t </td> 653226031Sstas <td class="paramname"> <em>namesize</em></td><td> </td> 654226031Sstas </tr> 655226031Sstas <tr> 656226031Sstas <td></td> 657226031Sstas <td>)</td> 658226031Sstas <td></td><td></td><td></td> 659226031Sstas </tr> 660226031Sstas </table> 661226031Sstas</div> 662226031Sstas<div class="memdoc"> 663226031Sstas 664226031Sstas<p> 665226031SstasRetrieve the name of the keytab `keytab' into `name', `namesize'<p> 666226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 667226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 668226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 669226031Sstas <tr><td valign="top"></td><td valign="top"><em>keytab</em> </td><td>the keytab to get the name for. </td></tr> 670226031Sstas <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>name buffer. </td></tr> 671226031Sstas <tr><td valign="top"></td><td valign="top"><em>namesize</em> </td><td>size of name buffer.</td></tr> 672226031Sstas </table> 673226031Sstas</dl> 674226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 675226031Sstas 676226031Sstas</div> 677226031Sstas</div><p> 678226031Sstas<a class="anchor" name="g632921a4b144a4eb656968d836efd9bb"></a><!-- doxytag: member="keytab.c::krb5_kt_get_type" ref="g632921a4b144a4eb656968d836efd9bb" args="(krb5_context context, krb5_keytab keytab, char *prefix, size_t prefixsize)" --> 679226031Sstas<div class="memitem"> 680226031Sstas<div class="memproto"> 681226031Sstas <table class="memname"> 682226031Sstas <tr> 683226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_get_type </td> 684226031Sstas <td>(</td> 685226031Sstas <td class="paramtype">krb5_context </td> 686226031Sstas <td class="paramname"> <em>context</em>, </td> 687226031Sstas </tr> 688226031Sstas <tr> 689226031Sstas <td class="paramkey"></td> 690226031Sstas <td></td> 691226031Sstas <td class="paramtype">krb5_keytab </td> 692226031Sstas <td class="paramname"> <em>keytab</em>, </td> 693226031Sstas </tr> 694226031Sstas <tr> 695226031Sstas <td class="paramkey"></td> 696226031Sstas <td></td> 697226031Sstas <td class="paramtype">char * </td> 698226031Sstas <td class="paramname"> <em>prefix</em>, </td> 699226031Sstas </tr> 700226031Sstas <tr> 701226031Sstas <td class="paramkey"></td> 702226031Sstas <td></td> 703226031Sstas <td class="paramtype">size_t </td> 704226031Sstas <td class="paramname"> <em>prefixsize</em></td><td> </td> 705226031Sstas </tr> 706226031Sstas <tr> 707226031Sstas <td></td> 708226031Sstas <td>)</td> 709226031Sstas <td></td><td></td><td></td> 710226031Sstas </tr> 711226031Sstas </table> 712226031Sstas</div> 713226031Sstas<div class="memdoc"> 714226031Sstas 715226031Sstas<p> 716226031SstasReturn the type of the `keytab' in the string `prefix of length `prefixsize'.<p> 717226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 718226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 719226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 720226031Sstas <tr><td valign="top"></td><td valign="top"><em>keytab</em> </td><td>the keytab to get the prefix for </td></tr> 721226031Sstas <tr><td valign="top"></td><td valign="top"><em>prefix</em> </td><td>prefix buffer </td></tr> 722226031Sstas <tr><td valign="top"></td><td valign="top"><em>prefixsize</em> </td><td>length of prefix buffer</td></tr> 723226031Sstas </table> 724226031Sstas</dl> 725226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 726226031Sstas 727226031Sstas</div> 728226031Sstas</div><p> 729226031Sstas<a class="anchor" name="gf0947f9089022eaf4c83a463cad10ed3"></a><!-- doxytag: member="keytab.c::krb5_kt_have_content" ref="gf0947f9089022eaf4c83a463cad10ed3" args="(krb5_context context, krb5_keytab id)" --> 730226031Sstas<div class="memitem"> 731226031Sstas<div class="memproto"> 732226031Sstas <table class="memname"> 733226031Sstas <tr> 734226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL krb5_kt_have_content </td> 735226031Sstas <td>(</td> 736226031Sstas <td class="paramtype">krb5_context </td> 737226031Sstas <td class="paramname"> <em>context</em>, </td> 738226031Sstas </tr> 739226031Sstas <tr> 740226031Sstas <td class="paramkey"></td> 741226031Sstas <td></td> 742226031Sstas <td class="paramtype">krb5_keytab </td> 743226031Sstas <td class="paramname"> <em>id</em></td><td> </td> 744226031Sstas </tr> 745226031Sstas <tr> 746226031Sstas <td></td> 747226031Sstas <td>)</td> 748226031Sstas <td></td><td></td><td></td> 749226031Sstas </tr> 750226031Sstas </table> 751226031Sstas</div> 752226031Sstas<div class="memdoc"> 753226031Sstas 754226031Sstas<p> 755226031SstasReturn true if the keytab exists and have entries<p> 756226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 757226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 758226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 759226031Sstas <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>a keytab.</td></tr> 760226031Sstas </table> 761226031Sstas</dl> 762226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 763226031Sstas 764226031Sstas</div> 765226031Sstas</div><p> 766226031Sstas<a class="anchor" name="gc40140c41333a86d3c40426f50b4e1b0"></a><!-- doxytag: member="keytab.c::krb5_kt_next_entry" ref="gc40140c41333a86d3c40426f50b4e1b0" args="(krb5_context context, krb5_keytab id, krb5_keytab_entry *entry, krb5_kt_cursor *cursor)" --> 767226031Sstas<div class="memitem"> 768226031Sstas<div class="memproto"> 769226031Sstas <table class="memname"> 770226031Sstas <tr> 771226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_next_entry </td> 772226031Sstas <td>(</td> 773226031Sstas <td class="paramtype">krb5_context </td> 774226031Sstas <td class="paramname"> <em>context</em>, </td> 775226031Sstas </tr> 776226031Sstas <tr> 777226031Sstas <td class="paramkey"></td> 778226031Sstas <td></td> 779226031Sstas <td class="paramtype">krb5_keytab </td> 780226031Sstas <td class="paramname"> <em>id</em>, </td> 781226031Sstas </tr> 782226031Sstas <tr> 783226031Sstas <td class="paramkey"></td> 784226031Sstas <td></td> 785226031Sstas <td class="paramtype">krb5_keytab_entry * </td> 786226031Sstas <td class="paramname"> <em>entry</em>, </td> 787226031Sstas </tr> 788226031Sstas <tr> 789226031Sstas <td class="paramkey"></td> 790226031Sstas <td></td> 791226031Sstas <td class="paramtype">krb5_kt_cursor * </td> 792226031Sstas <td class="paramname"> <em>cursor</em></td><td> </td> 793226031Sstas </tr> 794226031Sstas <tr> 795226031Sstas <td></td> 796226031Sstas <td>)</td> 797226031Sstas <td></td><td></td><td></td> 798226031Sstas </tr> 799226031Sstas </table> 800226031Sstas</div> 801226031Sstas<div class="memdoc"> 802226031Sstas 803226031Sstas<p> 804226031SstasGet the next entry from keytab, advance the cursor. On last entry the function will return KRB5_KT_END.<p> 805226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 806226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 807226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 808226031Sstas <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>a keytab. </td></tr> 809226031Sstas <tr><td valign="top"></td><td valign="top"><em>entry</em> </td><td>the returned entry, free with <a class="el" href="group__krb5__keytab.html#gc0774ab1407eaaaa0e5998478de246e2">krb5_kt_free_entry()</a>. </td></tr> 810226031Sstas <tr><td valign="top"></td><td valign="top"><em>cursor</em> </td><td>the cursor of the iteration.</td></tr> 811226031Sstas </table> 812226031Sstas</dl> 813226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 814226031Sstas 815226031Sstas</div> 816226031Sstas</div><p> 817226031Sstas<a class="anchor" name="g6040b238ff8adeb346ca35e5530bdeff"></a><!-- doxytag: member="keytab.c::krb5_kt_read_service_key" ref="g6040b238ff8adeb346ca35e5530bdeff" args="(krb5_context context, krb5_pointer keyprocarg, krb5_principal principal, krb5_kvno vno, krb5_enctype enctype, krb5_keyblock **key)" --> 818226031Sstas<div class="memitem"> 819226031Sstas<div class="memproto"> 820226031Sstas <table class="memname"> 821226031Sstas <tr> 822226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_read_service_key </td> 823226031Sstas <td>(</td> 824226031Sstas <td class="paramtype">krb5_context </td> 825226031Sstas <td class="paramname"> <em>context</em>, </td> 826226031Sstas </tr> 827226031Sstas <tr> 828226031Sstas <td class="paramkey"></td> 829226031Sstas <td></td> 830226031Sstas <td class="paramtype">krb5_pointer </td> 831226031Sstas <td class="paramname"> <em>keyprocarg</em>, </td> 832226031Sstas </tr> 833226031Sstas <tr> 834226031Sstas <td class="paramkey"></td> 835226031Sstas <td></td> 836226031Sstas <td class="paramtype">krb5_principal </td> 837226031Sstas <td class="paramname"> <em>principal</em>, </td> 838226031Sstas </tr> 839226031Sstas <tr> 840226031Sstas <td class="paramkey"></td> 841226031Sstas <td></td> 842226031Sstas <td class="paramtype">krb5_kvno </td> 843226031Sstas <td class="paramname"> <em>vno</em>, </td> 844226031Sstas </tr> 845226031Sstas <tr> 846226031Sstas <td class="paramkey"></td> 847226031Sstas <td></td> 848226031Sstas <td class="paramtype">krb5_enctype </td> 849226031Sstas <td class="paramname"> <em>enctype</em>, </td> 850226031Sstas </tr> 851226031Sstas <tr> 852226031Sstas <td class="paramkey"></td> 853226031Sstas <td></td> 854226031Sstas <td class="paramtype">krb5_keyblock ** </td> 855226031Sstas <td class="paramname"> <em>key</em></td><td> </td> 856226031Sstas </tr> 857226031Sstas <tr> 858226031Sstas <td></td> 859226031Sstas <td>)</td> 860226031Sstas <td></td><td></td><td></td> 861226031Sstas </tr> 862226031Sstas </table> 863226031Sstas</div> 864226031Sstas<div class="memdoc"> 865226031Sstas 866226031Sstas<p> 867226031SstasRead the key identified by `(principal, vno, enctype)' from the keytab in `keyprocarg' (the default if == NULL) into `*key'.<p> 868226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 869226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 870226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 871226031Sstas <tr><td valign="top"></td><td valign="top"><em>keyprocarg</em> </td><td></td></tr> 872226031Sstas <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td></td></tr> 873226031Sstas <tr><td valign="top"></td><td valign="top"><em>vno</em> </td><td></td></tr> 874226031Sstas <tr><td valign="top"></td><td valign="top"><em>enctype</em> </td><td></td></tr> 875226031Sstas <tr><td valign="top"></td><td valign="top"><em>key</em> </td><td></td></tr> 876226031Sstas </table> 877226031Sstas</dl> 878226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 879226031Sstas 880226031Sstas</div> 881226031Sstas</div><p> 882226031Sstas<a class="anchor" name="g0b54b479db89c76e46d6edae8328848e"></a><!-- doxytag: member="keytab.c::krb5_kt_register" ref="g0b54b479db89c76e46d6edae8328848e" args="(krb5_context context, const krb5_kt_ops *ops)" --> 883226031Sstas<div class="memitem"> 884226031Sstas<div class="memproto"> 885226031Sstas <table class="memname"> 886226031Sstas <tr> 887226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_register </td> 888226031Sstas <td>(</td> 889226031Sstas <td class="paramtype">krb5_context </td> 890226031Sstas <td class="paramname"> <em>context</em>, </td> 891226031Sstas </tr> 892226031Sstas <tr> 893226031Sstas <td class="paramkey"></td> 894226031Sstas <td></td> 895226031Sstas <td class="paramtype">const krb5_kt_ops * </td> 896226031Sstas <td class="paramname"> <em>ops</em></td><td> </td> 897226031Sstas </tr> 898226031Sstas <tr> 899226031Sstas <td></td> 900226031Sstas <td>)</td> 901226031Sstas <td></td><td></td><td></td> 902226031Sstas </tr> 903226031Sstas </table> 904226031Sstas</div> 905226031Sstas<div class="memdoc"> 906226031Sstas 907226031Sstas<p> 908226031SstasRegister a new keytab backend.<p> 909226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 910226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 911226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 912226031Sstas <tr><td valign="top"></td><td valign="top"><em>ops</em> </td><td>a backend to register.</td></tr> 913226031Sstas </table> 914226031Sstas</dl> 915226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 916226031Sstas 917226031Sstas</div> 918226031Sstas</div><p> 919226031Sstas<a class="anchor" name="g0f3e7f55fd97a595c961f0ffc49bebac"></a><!-- doxytag: member="keytab.c::krb5_kt_remove_entry" ref="g0f3e7f55fd97a595c961f0ffc49bebac" args="(krb5_context context, krb5_keytab id, krb5_keytab_entry *entry)" --> 920226031Sstas<div class="memitem"> 921226031Sstas<div class="memproto"> 922226031Sstas <table class="memname"> 923226031Sstas <tr> 924226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_remove_entry </td> 925226031Sstas <td>(</td> 926226031Sstas <td class="paramtype">krb5_context </td> 927226031Sstas <td class="paramname"> <em>context</em>, </td> 928226031Sstas </tr> 929226031Sstas <tr> 930226031Sstas <td class="paramkey"></td> 931226031Sstas <td></td> 932226031Sstas <td class="paramtype">krb5_keytab </td> 933226031Sstas <td class="paramname"> <em>id</em>, </td> 934226031Sstas </tr> 935226031Sstas <tr> 936226031Sstas <td class="paramkey"></td> 937226031Sstas <td></td> 938226031Sstas <td class="paramtype">krb5_keytab_entry * </td> 939226031Sstas <td class="paramname"> <em>entry</em></td><td> </td> 940226031Sstas </tr> 941226031Sstas <tr> 942226031Sstas <td></td> 943226031Sstas <td>)</td> 944226031Sstas <td></td><td></td><td></td> 945226031Sstas </tr> 946226031Sstas </table> 947226031Sstas</div> 948226031Sstas<div class="memdoc"> 949226031Sstas 950226031Sstas<p> 951226031SstasRemove an entry from the keytab, matching is done using <a class="el" href="group__krb5__keytab.html#g688d397ec30b48e5edc5a59567bc8010">krb5_kt_compare()</a>.<p> 952226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 953226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 954226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 955226031Sstas <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>a keytab. </td></tr> 956226031Sstas <tr><td valign="top"></td><td valign="top"><em>entry</em> </td><td>the entry to remove</td></tr> 957226031Sstas </table> 958226031Sstas</dl> 959226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 960226031Sstas 961226031Sstas</div> 962226031Sstas</div><p> 963226031Sstas<a class="anchor" name="gc57fead58fb1baa003d6438613731901"></a><!-- doxytag: member="keytab.c::krb5_kt_resolve" ref="gc57fead58fb1baa003d6438613731901" args="(krb5_context context, const char *name, krb5_keytab *id)" --> 964226031Sstas<div class="memitem"> 965226031Sstas<div class="memproto"> 966226031Sstas <table class="memname"> 967226031Sstas <tr> 968226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_resolve </td> 969226031Sstas <td>(</td> 970226031Sstas <td class="paramtype">krb5_context </td> 971226031Sstas <td class="paramname"> <em>context</em>, </td> 972226031Sstas </tr> 973226031Sstas <tr> 974226031Sstas <td class="paramkey"></td> 975226031Sstas <td></td> 976226031Sstas <td class="paramtype">const char * </td> 977226031Sstas <td class="paramname"> <em>name</em>, </td> 978226031Sstas </tr> 979226031Sstas <tr> 980226031Sstas <td class="paramkey"></td> 981226031Sstas <td></td> 982226031Sstas <td class="paramtype">krb5_keytab * </td> 983226031Sstas <td class="paramname"> <em>id</em></td><td> </td> 984226031Sstas </tr> 985226031Sstas <tr> 986226031Sstas <td></td> 987226031Sstas <td>)</td> 988226031Sstas <td></td><td></td><td></td> 989226031Sstas </tr> 990226031Sstas </table> 991226031Sstas</div> 992226031Sstas<div class="memdoc"> 993226031Sstas 994226031Sstas<p> 995226031SstasResolve the keytab name (of the form `type:residual') in `name' into a keytab in `id'.<p> 996226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 997226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 998226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 999226031Sstas <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>name to resolve </td></tr> 1000226031Sstas <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>resulting keytab, free with <a class="el" href="group__krb5__keytab.html#gb67f5ae0a7c4b87d193218b842cad590">krb5_kt_close()</a>.</td></tr> 1001226031Sstas </table> 1002226031Sstas</dl> 1003226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 1004226031Sstas 1005226031Sstas</div> 1006226031Sstas</div><p> 1007226031Sstas<a class="anchor" name="g1efd8ee48d6e3caa31cad475423b8917"></a><!-- doxytag: member="keytab.c::krb5_kt_start_seq_get" ref="g1efd8ee48d6e3caa31cad475423b8917" args="(krb5_context context, krb5_keytab id, krb5_kt_cursor *cursor)" --> 1008226031Sstas<div class="memitem"> 1009226031Sstas<div class="memproto"> 1010226031Sstas <table class="memname"> 1011226031Sstas <tr> 1012226031Sstas <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_kt_start_seq_get </td> 1013226031Sstas <td>(</td> 1014226031Sstas <td class="paramtype">krb5_context </td> 1015226031Sstas <td class="paramname"> <em>context</em>, </td> 1016226031Sstas </tr> 1017226031Sstas <tr> 1018226031Sstas <td class="paramkey"></td> 1019226031Sstas <td></td> 1020226031Sstas <td class="paramtype">krb5_keytab </td> 1021226031Sstas <td class="paramname"> <em>id</em>, </td> 1022226031Sstas </tr> 1023226031Sstas <tr> 1024226031Sstas <td class="paramkey"></td> 1025226031Sstas <td></td> 1026226031Sstas <td class="paramtype">krb5_kt_cursor * </td> 1027226031Sstas <td class="paramname"> <em>cursor</em></td><td> </td> 1028226031Sstas </tr> 1029226031Sstas <tr> 1030226031Sstas <td></td> 1031226031Sstas <td>)</td> 1032226031Sstas <td></td><td></td><td></td> 1033226031Sstas </tr> 1034226031Sstas </table> 1035226031Sstas</div> 1036226031Sstas<div class="memdoc"> 1037226031Sstas 1038226031Sstas<p> 1039226031SstasSet `cursor' to point at the beginning of `id'.<p> 1040226031Sstas<dl compact><dt><b>Parameters:</b></dt><dd> 1041226031Sstas <table border="0" cellspacing="2" cellpadding="0"> 1042226031Sstas <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>a Keberos context. </td></tr> 1043226031Sstas <tr><td valign="top"></td><td valign="top"><em>id</em> </td><td>a keytab. </td></tr> 1044226031Sstas <tr><td valign="top"></td><td valign="top"><em>cursor</em> </td><td>a newly allocated cursor, free with <a class="el" href="group__krb5__keytab.html#g11289efb407d93a1f84d5c64731a4bd1">krb5_kt_end_seq_get()</a>.</td></tr> 1045226031Sstas </table> 1046226031Sstas</dl> 1047226031Sstas<dl class="return" compact><dt><b>Returns:</b></dt><dd>Return an error code or 0, see krb5_get_error_message(). </dd></dl> 1048226031Sstas 1049226031Sstas</div> 1050226031Sstas</div><p> 1051226031Sstas</div> 1052226031Sstas<hr size="1"><address style="text-align: right;"><small> 1053234027SstasGenerated on Wed Jan 11 14:07:49 2012 for HeimdalKerberos5library by <a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address> 1054226031Sstas</body> 1055226031Sstas</html> 1056