1ae771770SStanislav Sedov<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2ae771770SStanislav Sedov<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 3ae771770SStanislav Sedov<title>HeimdalKerberos5library: Heimdal Kerberos 5 principal functions</title> 4ae771770SStanislav Sedov<link href="doxygen.css" rel="stylesheet" type="text/css"> 5ae771770SStanislav Sedov<link href="tabs.css" rel="stylesheet" type="text/css"> 6ae771770SStanislav Sedov</head><body> 7ae771770SStanislav Sedov<p> 8ae771770SStanislav Sedov<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a> 9ae771770SStanislav Sedov</p> 10ae771770SStanislav Sedov<!-- end of header marker --> 11ae771770SStanislav Sedov<!-- Generated by Doxygen 1.5.6 --> 12ae771770SStanislav Sedov<div class="navigation" id="top"> 13ae771770SStanislav Sedov <div class="tabs"> 14ae771770SStanislav Sedov <ul> 15ae771770SStanislav Sedov <li><a href="index.html"><span>Main Page</span></a></li> 16ae771770SStanislav Sedov <li><a href="pages.html"><span>Related Pages</span></a></li> 17ae771770SStanislav Sedov <li><a href="modules.html"><span>Modules</span></a></li> 18ae771770SStanislav Sedov <li><a href="annotated.html"><span>Data Structures</span></a></li> 19ae771770SStanislav Sedov </ul> 20ae771770SStanislav Sedov </div> 21ae771770SStanislav Sedov</div> 22ae771770SStanislav Sedov<div class="contents"> 23ae771770SStanislav Sedov<h1>Heimdal Kerberos 5 principal functions</h1><table border="0" cellpadding="0" cellspacing="0"> 24ae771770SStanislav Sedov<tr><td></td></tr> 25ae771770SStanislav Sedov<tr><td colspan="2"><br><h2>Functions</h2></td></tr> 26ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION void <br> 27ae771770SStanislav SedovKRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#g5bd3f620ebe8cd4fe44b5c858ba17d22">krb5_free_principal</a> (krb5_context context, krb5_principal p)</td></tr> 28ae771770SStanislav Sedov 29ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION void <br> 30ae771770SStanislav SedovKRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#g28b750b990452f02922bc74a6cac0313">krb5_principal_set_type</a> (krb5_context context, krb5_principal principal, int type)</td></tr> 31ae771770SStanislav Sedov 32ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION int KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#gf4a599c42592ff7485753e80b8de67b7">krb5_principal_get_type</a> (krb5_context context, krb5_const_principal principal)</td></tr> 33ae771770SStanislav Sedov 34ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION const char <br> 35ae771770SStanislav Sedov*KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#gccd23426798cf776a96c23a455576362">krb5_principal_get_realm</a> (krb5_context context, krb5_const_principal principal)</td></tr> 36ae771770SStanislav Sedov 37ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION unsigned int <br> 38ae771770SStanislav SedovKRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#g0138febd5414ace4835d3af78694833c">krb5_principal_get_num_comp</a> (krb5_context context, krb5_const_principal principal)</td></tr> 39ae771770SStanislav Sedov 40ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 41ae771770SStanislav Sedovkrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#g1f1c6a19e7ccffb3284545ed3c12b827">krb5_parse_name_flags</a> (krb5_context context, const char *name, int flags, krb5_principal *principal)</td></tr> 42ae771770SStanislav Sedov 43ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 44ae771770SStanislav Sedovkrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#gf0b0da913ab93d6e2577c0ccf4631f24">krb5_parse_name</a> (krb5_context context, const char *name, krb5_principal *principal)</td></tr> 45ae771770SStanislav Sedov 46ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 47ae771770SStanislav Sedovkrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#g6f173badfb37ad41fdab6db77bde7689">krb5_unparse_name_fixed</a> (krb5_context context, krb5_const_principal principal, char *name, size_t len)</td></tr> 48ae771770SStanislav Sedov 49ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 50ae771770SStanislav Sedovkrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#gcebe44e0685fc7b6c89a53eca71e7d24">krb5_unparse_name_fixed_short</a> (krb5_context context, krb5_const_principal principal, char *name, size_t len)</td></tr> 51ae771770SStanislav Sedov 52ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 53ae771770SStanislav Sedovkrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#gd9ba42e18d79aa27458338967b66693f">krb5_unparse_name_fixed_flags</a> (krb5_context context, krb5_const_principal principal, int flags, char *name, size_t len)</td></tr> 54ae771770SStanislav Sedov 55ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 56ae771770SStanislav Sedovkrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#gac881051ed59fe0dcd08cee62280b332">krb5_unparse_name</a> (krb5_context context, krb5_const_principal principal, char **name)</td></tr> 57ae771770SStanislav Sedov 58ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 59ae771770SStanislav Sedovkrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#gd46122cd0e543b6c1219abb8730378e7">krb5_unparse_name_flags</a> (krb5_context context, krb5_const_principal principal, int flags, char **name)</td></tr> 60ae771770SStanislav Sedov 61ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 62ae771770SStanislav Sedovkrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#g600247895edbde37e195c8b2089295a3">krb5_unparse_name_short</a> (krb5_context context, krb5_const_principal principal, char **name)</td></tr> 63ae771770SStanislav Sedov 64ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 65ae771770SStanislav Sedovkrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#gaacf06babb00b391f35a8468a0ec96f9">krb5_principal_set_realm</a> (krb5_context context, krb5_principal principal, krb5_const_realm realm)</td></tr> 66ae771770SStanislav Sedov 67ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 68ae771770SStanislav Sedovkrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#gb22638ec4ccdb648366653426708c1c5">krb5_build_principal</a> (krb5_context context, krb5_principal *principal, int rlen, krb5_const_realm realm,...)</td></tr> 69ae771770SStanislav Sedov 70ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 71ae771770SStanislav Sedovkrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#ge744b61285c2ed08317e6c7cc433dd48">krb5_make_principal</a> (krb5_context context, krb5_principal *principal, krb5_const_realm realm,...)</td></tr> 72ae771770SStanislav Sedov 73ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 74ae771770SStanislav Sedovkrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#gf8405ffca469a2fd936eb109cb3d9b16">krb5_copy_principal</a> (krb5_context context, krb5_const_principal inprinc, krb5_principal *outprinc)</td></tr> 75ae771770SStanislav Sedov 76ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION krb5_boolean <br> 77ae771770SStanislav SedovKRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#g3c49cc0c1dac96d31a91aa263d8cdb4a">krb5_principal_compare_any_realm</a> (krb5_context context, krb5_const_principal princ1, krb5_const_principal princ2)</td></tr> 78ae771770SStanislav Sedov 79ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION krb5_boolean <br> 80ae771770SStanislav SedovKRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#g13c84ce37f704c99353888eb03a19ea6">krb5_principal_compare</a> (krb5_context context, krb5_const_principal princ1, krb5_const_principal princ2)</td></tr> 81ae771770SStanislav Sedov 82ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION krb5_boolean <br> 83ae771770SStanislav SedovKRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#g15abb49ce86457827a66f4ddfdd5b60c">krb5_realm_compare</a> (krb5_context context, krb5_const_principal princ1, krb5_const_principal princ2)</td></tr> 84ae771770SStanislav Sedov 85ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION krb5_boolean <br> 86ae771770SStanislav SedovKRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#g6cf45d0f9cb4b0bf3b6ef574d9e5cc6a">krb5_principal_match</a> (krb5_context context, krb5_const_principal princ, krb5_const_principal pattern)</td></tr> 87ae771770SStanislav Sedov 88ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 89ae771770SStanislav Sedovkrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#g8be0f5000da6ee0d4bd5dcaf3cb01d08">krb5_sname_to_principal</a> (krb5_context context, const char *hostname, const char *sname, int32_t type, krb5_principal *ret_princ)</td></tr> 90ae771770SStanislav Sedov 91ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION <br> 92ae771770SStanislav Sedovkrb5_error_code KRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#gb044a3dca038ef4c61779cf1d0dc1e87">krb5_parse_nametype</a> (krb5_context context, const char *str, int32_t *nametype)</td></tr> 93ae771770SStanislav Sedov 94ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">KRB5_LIB_FUNCTION krb5_boolean <br> 95ae771770SStanislav SedovKRB5_LIB_CALL </td><td class="memItemRight" valign="bottom"><a class="el" href="group__krb5__principal.html#g9b24f6db481f24b86a93702eaa2755fc">krb5_principal_is_krbtgt</a> (krb5_context context, krb5_const_principal p)</td></tr> 96ae771770SStanislav Sedov 97ae771770SStanislav Sedov</table> 98ae771770SStanislav Sedov<hr><a name="_details"></a><h2>Detailed Description</h2> 99ae771770SStanislav Sedov<hr><h2>Function Documentation</h2> 100ae771770SStanislav Sedov<a class="anchor" name="gb22638ec4ccdb648366653426708c1c5"></a><!-- doxytag: member="principal.c::krb5_build_principal" ref="gb22638ec4ccdb648366653426708c1c5" args="(krb5_context context, krb5_principal *principal, int rlen, krb5_const_realm realm,...)" --> 101ae771770SStanislav Sedov<div class="memitem"> 102ae771770SStanislav Sedov<div class="memproto"> 103ae771770SStanislav Sedov <table class="memname"> 104ae771770SStanislav Sedov <tr> 105ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_build_principal </td> 106ae771770SStanislav Sedov <td>(</td> 107ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 108ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 109ae771770SStanislav Sedov </tr> 110ae771770SStanislav Sedov <tr> 111ae771770SStanislav Sedov <td class="paramkey"></td> 112ae771770SStanislav Sedov <td></td> 113ae771770SStanislav Sedov <td class="paramtype">krb5_principal * </td> 114ae771770SStanislav Sedov <td class="paramname"> <em>principal</em>, </td> 115ae771770SStanislav Sedov </tr> 116ae771770SStanislav Sedov <tr> 117ae771770SStanislav Sedov <td class="paramkey"></td> 118ae771770SStanislav Sedov <td></td> 119ae771770SStanislav Sedov <td class="paramtype">int </td> 120ae771770SStanislav Sedov <td class="paramname"> <em>rlen</em>, </td> 121ae771770SStanislav Sedov </tr> 122ae771770SStanislav Sedov <tr> 123ae771770SStanislav Sedov <td class="paramkey"></td> 124ae771770SStanislav Sedov <td></td> 125ae771770SStanislav Sedov <td class="paramtype">krb5_const_realm </td> 126ae771770SStanislav Sedov <td class="paramname"> <em>realm</em>, </td> 127ae771770SStanislav Sedov </tr> 128ae771770SStanislav Sedov <tr> 129ae771770SStanislav Sedov <td class="paramkey"></td> 130ae771770SStanislav Sedov <td></td> 131ae771770SStanislav Sedov <td class="paramtype"> </td> 132ae771770SStanislav Sedov <td class="paramname"> <em>...</em></td><td> </td> 133ae771770SStanislav Sedov </tr> 134ae771770SStanislav Sedov <tr> 135ae771770SStanislav Sedov <td></td> 136ae771770SStanislav Sedov <td>)</td> 137ae771770SStanislav Sedov <td></td><td></td><td></td> 138ae771770SStanislav Sedov </tr> 139ae771770SStanislav Sedov </table> 140ae771770SStanislav Sedov</div> 141ae771770SStanislav Sedov<div class="memdoc"> 142ae771770SStanislav Sedov 143ae771770SStanislav Sedov<p> 144ae771770SStanislav SedovBuild a principal using vararg style building<p> 145ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 146ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 147ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos context. </td></tr> 148ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>returned principal </td></tr> 149ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>rlen</em> </td><td>length of realm </td></tr> 150ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>realm</em> </td><td>realm name </td></tr> 151ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>...</em> </td><td>a list of components ended with NULL.</td></tr> 152ae771770SStanislav Sedov </table> 153ae771770SStanislav Sedov</dl> 154ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An krb5 error code, see krb5_get_error_message(). </dd></dl> 155ae771770SStanislav Sedov 156ae771770SStanislav Sedov</div> 157ae771770SStanislav Sedov</div><p> 158ae771770SStanislav Sedov<a class="anchor" name="gf8405ffca469a2fd936eb109cb3d9b16"></a><!-- doxytag: member="principal.c::krb5_copy_principal" ref="gf8405ffca469a2fd936eb109cb3d9b16" args="(krb5_context context, krb5_const_principal inprinc, krb5_principal *outprinc)" --> 159ae771770SStanislav Sedov<div class="memitem"> 160ae771770SStanislav Sedov<div class="memproto"> 161ae771770SStanislav Sedov <table class="memname"> 162ae771770SStanislav Sedov <tr> 163ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_copy_principal </td> 164ae771770SStanislav Sedov <td>(</td> 165ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 166ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 167ae771770SStanislav Sedov </tr> 168ae771770SStanislav Sedov <tr> 169ae771770SStanislav Sedov <td class="paramkey"></td> 170ae771770SStanislav Sedov <td></td> 171ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 172ae771770SStanislav Sedov <td class="paramname"> <em>inprinc</em>, </td> 173ae771770SStanislav Sedov </tr> 174ae771770SStanislav Sedov <tr> 175ae771770SStanislav Sedov <td class="paramkey"></td> 176ae771770SStanislav Sedov <td></td> 177ae771770SStanislav Sedov <td class="paramtype">krb5_principal * </td> 178ae771770SStanislav Sedov <td class="paramname"> <em>outprinc</em></td><td> </td> 179ae771770SStanislav Sedov </tr> 180ae771770SStanislav Sedov <tr> 181ae771770SStanislav Sedov <td></td> 182ae771770SStanislav Sedov <td>)</td> 183ae771770SStanislav Sedov <td></td><td></td><td></td> 184ae771770SStanislav Sedov </tr> 185ae771770SStanislav Sedov </table> 186ae771770SStanislav Sedov</div> 187ae771770SStanislav Sedov<div class="memdoc"> 188ae771770SStanislav Sedov 189ae771770SStanislav Sedov<p> 190ae771770SStanislav SedovCopy a principal<p> 191ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 192ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 193ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos context. </td></tr> 194ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>inprinc</em> </td><td>principal to copy </td></tr> 195ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>outprinc</em> </td><td>copied principal, free with <a class="el" href="group__krb5__principal.html#g5bd3f620ebe8cd4fe44b5c858ba17d22">krb5_free_principal()</a></td></tr> 196ae771770SStanislav Sedov </table> 197ae771770SStanislav Sedov</dl> 198ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An krb5 error code, see krb5_get_error_message(). </dd></dl> 199ae771770SStanislav Sedov 200ae771770SStanislav Sedov</div> 201ae771770SStanislav Sedov</div><p> 202ae771770SStanislav Sedov<a class="anchor" name="g5bd3f620ebe8cd4fe44b5c858ba17d22"></a><!-- doxytag: member="principal.c::krb5_free_principal" ref="g5bd3f620ebe8cd4fe44b5c858ba17d22" args="(krb5_context context, krb5_principal p)" --> 203ae771770SStanislav Sedov<div class="memitem"> 204ae771770SStanislav Sedov<div class="memproto"> 205ae771770SStanislav Sedov <table class="memname"> 206ae771770SStanislav Sedov <tr> 207ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_free_principal </td> 208ae771770SStanislav Sedov <td>(</td> 209ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 210ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 211ae771770SStanislav Sedov </tr> 212ae771770SStanislav Sedov <tr> 213ae771770SStanislav Sedov <td class="paramkey"></td> 214ae771770SStanislav Sedov <td></td> 215ae771770SStanislav Sedov <td class="paramtype">krb5_principal </td> 216ae771770SStanislav Sedov <td class="paramname"> <em>p</em></td><td> </td> 217ae771770SStanislav Sedov </tr> 218ae771770SStanislav Sedov <tr> 219ae771770SStanislav Sedov <td></td> 220ae771770SStanislav Sedov <td>)</td> 221ae771770SStanislav Sedov <td></td><td></td><td></td> 222ae771770SStanislav Sedov </tr> 223ae771770SStanislav Sedov </table> 224ae771770SStanislav Sedov</div> 225ae771770SStanislav Sedov<div class="memdoc"> 226ae771770SStanislav Sedov 227ae771770SStanislav Sedov<p> 228ae771770SStanislav SedovFrees a Kerberos principal allocated by the library with <a class="el" href="group__krb5__principal.html#gf0b0da913ab93d6e2577c0ccf4631f24">krb5_parse_name()</a>, <a class="el" href="group__krb5__principal.html#ge744b61285c2ed08317e6c7cc433dd48">krb5_make_principal()</a> or any other related principal functions.<p> 229ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 230ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 231ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos context. </td></tr> 232ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>a principal to free.</td></tr> 233ae771770SStanislav Sedov </table> 234ae771770SStanislav Sedov</dl> 235ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An krb5 error code, see krb5_get_error_message(). </dd></dl> 236ae771770SStanislav Sedov 237ae771770SStanislav Sedov</div> 238ae771770SStanislav Sedov</div><p> 239ae771770SStanislav Sedov<a class="anchor" name="ge744b61285c2ed08317e6c7cc433dd48"></a><!-- doxytag: member="principal.c::krb5_make_principal" ref="ge744b61285c2ed08317e6c7cc433dd48" args="(krb5_context context, krb5_principal *principal, krb5_const_realm realm,...)" --> 240ae771770SStanislav Sedov<div class="memitem"> 241ae771770SStanislav Sedov<div class="memproto"> 242ae771770SStanislav Sedov <table class="memname"> 243ae771770SStanislav Sedov <tr> 244ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_make_principal </td> 245ae771770SStanislav Sedov <td>(</td> 246ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 247ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 248ae771770SStanislav Sedov </tr> 249ae771770SStanislav Sedov <tr> 250ae771770SStanislav Sedov <td class="paramkey"></td> 251ae771770SStanislav Sedov <td></td> 252ae771770SStanislav Sedov <td class="paramtype">krb5_principal * </td> 253ae771770SStanislav Sedov <td class="paramname"> <em>principal</em>, </td> 254ae771770SStanislav Sedov </tr> 255ae771770SStanislav Sedov <tr> 256ae771770SStanislav Sedov <td class="paramkey"></td> 257ae771770SStanislav Sedov <td></td> 258ae771770SStanislav Sedov <td class="paramtype">krb5_const_realm </td> 259ae771770SStanislav Sedov <td class="paramname"> <em>realm</em>, </td> 260ae771770SStanislav Sedov </tr> 261ae771770SStanislav Sedov <tr> 262ae771770SStanislav Sedov <td class="paramkey"></td> 263ae771770SStanislav Sedov <td></td> 264ae771770SStanislav Sedov <td class="paramtype"> </td> 265ae771770SStanislav Sedov <td class="paramname"> <em>...</em></td><td> </td> 266ae771770SStanislav Sedov </tr> 267ae771770SStanislav Sedov <tr> 268ae771770SStanislav Sedov <td></td> 269ae771770SStanislav Sedov <td>)</td> 270ae771770SStanislav Sedov <td></td><td></td><td></td> 271ae771770SStanislav Sedov </tr> 272ae771770SStanislav Sedov </table> 273ae771770SStanislav Sedov</div> 274ae771770SStanislav Sedov<div class="memdoc"> 275ae771770SStanislav Sedov 276ae771770SStanislav Sedov<p> 277ae771770SStanislav SedovBuild a principal using vararg style building<p> 278ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 279ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 280ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos context. </td></tr> 281ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>returned principal </td></tr> 282ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>realm</em> </td><td>realm name </td></tr> 283ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>...</em> </td><td>a list of components ended with NULL.</td></tr> 284ae771770SStanislav Sedov </table> 285ae771770SStanislav Sedov</dl> 286ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An krb5 error code, see krb5_get_error_message(). </dd></dl> 287ae771770SStanislav Sedov 288ae771770SStanislav Sedov</div> 289ae771770SStanislav Sedov</div><p> 290ae771770SStanislav Sedov<a class="anchor" name="gf0b0da913ab93d6e2577c0ccf4631f24"></a><!-- doxytag: member="principal.c::krb5_parse_name" ref="gf0b0da913ab93d6e2577c0ccf4631f24" args="(krb5_context context, const char *name, krb5_principal *principal)" --> 291ae771770SStanislav Sedov<div class="memitem"> 292ae771770SStanislav Sedov<div class="memproto"> 293ae771770SStanislav Sedov <table class="memname"> 294ae771770SStanislav Sedov <tr> 295ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_parse_name </td> 296ae771770SStanislav Sedov <td>(</td> 297ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 298ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 299ae771770SStanislav Sedov </tr> 300ae771770SStanislav Sedov <tr> 301ae771770SStanislav Sedov <td class="paramkey"></td> 302ae771770SStanislav Sedov <td></td> 303ae771770SStanislav Sedov <td class="paramtype">const char * </td> 304ae771770SStanislav Sedov <td class="paramname"> <em>name</em>, </td> 305ae771770SStanislav Sedov </tr> 306ae771770SStanislav Sedov <tr> 307ae771770SStanislav Sedov <td class="paramkey"></td> 308ae771770SStanislav Sedov <td></td> 309ae771770SStanislav Sedov <td class="paramtype">krb5_principal * </td> 310ae771770SStanislav Sedov <td class="paramname"> <em>principal</em></td><td> </td> 311ae771770SStanislav Sedov </tr> 312ae771770SStanislav Sedov <tr> 313ae771770SStanislav Sedov <td></td> 314ae771770SStanislav Sedov <td>)</td> 315ae771770SStanislav Sedov <td></td><td></td><td></td> 316ae771770SStanislav Sedov </tr> 317ae771770SStanislav Sedov </table> 318ae771770SStanislav Sedov</div> 319ae771770SStanislav Sedov<div class="memdoc"> 320ae771770SStanislav Sedov 321ae771770SStanislav Sedov<p> 322ae771770SStanislav SedovParse a name into a krb5_principal structure<p> 323ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 324ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 325ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>Kerberos 5 context </td></tr> 326ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>name to parse into a Kerberos principal </td></tr> 327ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>returned principal, free with <a class="el" href="group__krb5__principal.html#g5bd3f620ebe8cd4fe44b5c858ba17d22">krb5_free_principal()</a>.</td></tr> 328ae771770SStanislav Sedov </table> 329ae771770SStanislav Sedov</dl> 330ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An krb5 error code, see krb5_get_error_message(). </dd></dl> 331ae771770SStanislav Sedov 332ae771770SStanislav Sedov</div> 333ae771770SStanislav Sedov</div><p> 334ae771770SStanislav Sedov<a class="anchor" name="g1f1c6a19e7ccffb3284545ed3c12b827"></a><!-- doxytag: member="principal.c::krb5_parse_name_flags" ref="g1f1c6a19e7ccffb3284545ed3c12b827" args="(krb5_context context, const char *name, int flags, krb5_principal *principal)" --> 335ae771770SStanislav Sedov<div class="memitem"> 336ae771770SStanislav Sedov<div class="memproto"> 337ae771770SStanislav Sedov <table class="memname"> 338ae771770SStanislav Sedov <tr> 339ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_parse_name_flags </td> 340ae771770SStanislav Sedov <td>(</td> 341ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 342ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 343ae771770SStanislav Sedov </tr> 344ae771770SStanislav Sedov <tr> 345ae771770SStanislav Sedov <td class="paramkey"></td> 346ae771770SStanislav Sedov <td></td> 347ae771770SStanislav Sedov <td class="paramtype">const char * </td> 348ae771770SStanislav Sedov <td class="paramname"> <em>name</em>, </td> 349ae771770SStanislav Sedov </tr> 350ae771770SStanislav Sedov <tr> 351ae771770SStanislav Sedov <td class="paramkey"></td> 352ae771770SStanislav Sedov <td></td> 353ae771770SStanislav Sedov <td class="paramtype">int </td> 354ae771770SStanislav Sedov <td class="paramname"> <em>flags</em>, </td> 355ae771770SStanislav Sedov </tr> 356ae771770SStanislav Sedov <tr> 357ae771770SStanislav Sedov <td class="paramkey"></td> 358ae771770SStanislav Sedov <td></td> 359ae771770SStanislav Sedov <td class="paramtype">krb5_principal * </td> 360ae771770SStanislav Sedov <td class="paramname"> <em>principal</em></td><td> </td> 361ae771770SStanislav Sedov </tr> 362ae771770SStanislav Sedov <tr> 363ae771770SStanislav Sedov <td></td> 364ae771770SStanislav Sedov <td>)</td> 365ae771770SStanislav Sedov <td></td><td></td><td></td> 366ae771770SStanislav Sedov </tr> 367ae771770SStanislav Sedov </table> 368ae771770SStanislav Sedov</div> 369ae771770SStanislav Sedov<div class="memdoc"> 370ae771770SStanislav Sedov 371ae771770SStanislav Sedov<p> 372ae771770SStanislav SedovParse a name into a krb5_principal structure, flags controls the behavior.<p> 373ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 374ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 375ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>Kerberos 5 context </td></tr> 376ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>name to parse into a Kerberos principal </td></tr> 377ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>flags</em> </td><td>flags to control the behavior </td></tr> 378ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>returned principal, free with <a class="el" href="group__krb5__principal.html#g5bd3f620ebe8cd4fe44b5c858ba17d22">krb5_free_principal()</a>.</td></tr> 379ae771770SStanislav Sedov </table> 380ae771770SStanislav Sedov</dl> 381ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An krb5 error code, see krb5_get_error_message(). </dd></dl> 382ae771770SStanislav Sedov 383ae771770SStanislav Sedov</div> 384ae771770SStanislav Sedov</div><p> 385ae771770SStanislav Sedov<a class="anchor" name="gb044a3dca038ef4c61779cf1d0dc1e87"></a><!-- doxytag: member="principal.c::krb5_parse_nametype" ref="gb044a3dca038ef4c61779cf1d0dc1e87" args="(krb5_context context, const char *str, int32_t *nametype)" --> 386ae771770SStanislav Sedov<div class="memitem"> 387ae771770SStanislav Sedov<div class="memproto"> 388ae771770SStanislav Sedov <table class="memname"> 389ae771770SStanislav Sedov <tr> 390ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_parse_nametype </td> 391ae771770SStanislav Sedov <td>(</td> 392ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 393ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 394ae771770SStanislav Sedov </tr> 395ae771770SStanislav Sedov <tr> 396ae771770SStanislav Sedov <td class="paramkey"></td> 397ae771770SStanislav Sedov <td></td> 398ae771770SStanislav Sedov <td class="paramtype">const char * </td> 399ae771770SStanislav Sedov <td class="paramname"> <em>str</em>, </td> 400ae771770SStanislav Sedov </tr> 401ae771770SStanislav Sedov <tr> 402ae771770SStanislav Sedov <td class="paramkey"></td> 403ae771770SStanislav Sedov <td></td> 404ae771770SStanislav Sedov <td class="paramtype">int32_t * </td> 405ae771770SStanislav Sedov <td class="paramname"> <em>nametype</em></td><td> </td> 406ae771770SStanislav Sedov </tr> 407ae771770SStanislav Sedov <tr> 408ae771770SStanislav Sedov <td></td> 409ae771770SStanislav Sedov <td>)</td> 410ae771770SStanislav Sedov <td></td><td></td><td></td> 411ae771770SStanislav Sedov </tr> 412ae771770SStanislav Sedov </table> 413ae771770SStanislav Sedov</div> 414ae771770SStanislav Sedov<div class="memdoc"> 415ae771770SStanislav Sedov 416ae771770SStanislav Sedov<p> 417ae771770SStanislav SedovParse nametype string and return a nametype integer 418ae771770SStanislav Sedov</div> 419ae771770SStanislav Sedov</div><p> 420ae771770SStanislav Sedov<a class="anchor" name="g13c84ce37f704c99353888eb03a19ea6"></a><!-- doxytag: member="principal.c::krb5_principal_compare" ref="g13c84ce37f704c99353888eb03a19ea6" args="(krb5_context context, krb5_const_principal princ1, krb5_const_principal princ2)" --> 421ae771770SStanislav Sedov<div class="memitem"> 422ae771770SStanislav Sedov<div class="memproto"> 423ae771770SStanislav Sedov <table class="memname"> 424ae771770SStanislav Sedov <tr> 425ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL krb5_principal_compare </td> 426ae771770SStanislav Sedov <td>(</td> 427ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 428ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 429ae771770SStanislav Sedov </tr> 430ae771770SStanislav Sedov <tr> 431ae771770SStanislav Sedov <td class="paramkey"></td> 432ae771770SStanislav Sedov <td></td> 433ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 434ae771770SStanislav Sedov <td class="paramname"> <em>princ1</em>, </td> 435ae771770SStanislav Sedov </tr> 436ae771770SStanislav Sedov <tr> 437ae771770SStanislav Sedov <td class="paramkey"></td> 438ae771770SStanislav Sedov <td></td> 439ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 440ae771770SStanislav Sedov <td class="paramname"> <em>princ2</em></td><td> </td> 441ae771770SStanislav Sedov </tr> 442ae771770SStanislav Sedov <tr> 443ae771770SStanislav Sedov <td></td> 444ae771770SStanislav Sedov <td>)</td> 445ae771770SStanislav Sedov <td></td><td></td><td></td> 446ae771770SStanislav Sedov </tr> 447ae771770SStanislav Sedov </table> 448ae771770SStanislav Sedov</div> 449ae771770SStanislav Sedov<div class="memdoc"> 450ae771770SStanislav Sedov 451ae771770SStanislav Sedov<p> 452ae771770SStanislav SedovCompares the two principals, including realm of the principals and returns TRUE if they are the same and FALSE if not.<p> 453ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 454ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 455ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>Kerberos 5 context </td></tr> 456ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>princ1</em> </td><td>first principal to compare </td></tr> 457ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>princ2</em> </td><td>second principal to compare</td></tr> 458ae771770SStanislav Sedov </table> 459ae771770SStanislav Sedov</dl> 460ae771770SStanislav Sedov<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__krb5__principal.html#g3c49cc0c1dac96d31a91aa263d8cdb4a">krb5_principal_compare_any_realm()</a> <p> 461ae771770SStanislav Sedov<a class="el" href="group__krb5__principal.html#g15abb49ce86457827a66f4ddfdd5b60c">krb5_realm_compare()</a> </dd></dl> 462ae771770SStanislav Sedov 463ae771770SStanislav Sedov</div> 464ae771770SStanislav Sedov</div><p> 465ae771770SStanislav Sedov<a class="anchor" name="g3c49cc0c1dac96d31a91aa263d8cdb4a"></a><!-- doxytag: member="principal.c::krb5_principal_compare_any_realm" ref="g3c49cc0c1dac96d31a91aa263d8cdb4a" args="(krb5_context context, krb5_const_principal princ1, krb5_const_principal princ2)" --> 466ae771770SStanislav Sedov<div class="memitem"> 467ae771770SStanislav Sedov<div class="memproto"> 468ae771770SStanislav Sedov <table class="memname"> 469ae771770SStanislav Sedov <tr> 470ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL krb5_principal_compare_any_realm </td> 471ae771770SStanislav Sedov <td>(</td> 472ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 473ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 474ae771770SStanislav Sedov </tr> 475ae771770SStanislav Sedov <tr> 476ae771770SStanislav Sedov <td class="paramkey"></td> 477ae771770SStanislav Sedov <td></td> 478ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 479ae771770SStanislav Sedov <td class="paramname"> <em>princ1</em>, </td> 480ae771770SStanislav Sedov </tr> 481ae771770SStanislav Sedov <tr> 482ae771770SStanislav Sedov <td class="paramkey"></td> 483ae771770SStanislav Sedov <td></td> 484ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 485ae771770SStanislav Sedov <td class="paramname"> <em>princ2</em></td><td> </td> 486ae771770SStanislav Sedov </tr> 487ae771770SStanislav Sedov <tr> 488ae771770SStanislav Sedov <td></td> 489ae771770SStanislav Sedov <td>)</td> 490ae771770SStanislav Sedov <td></td><td></td><td></td> 491ae771770SStanislav Sedov </tr> 492ae771770SStanislav Sedov </table> 493ae771770SStanislav Sedov</div> 494ae771770SStanislav Sedov<div class="memdoc"> 495ae771770SStanislav Sedov 496ae771770SStanislav Sedov<p> 497ae771770SStanislav SedovReturn TRUE iff princ1 == princ2 (without considering the realm)<p> 498ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 499ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 500ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>Kerberos 5 context </td></tr> 501ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>princ1</em> </td><td>first principal to compare </td></tr> 502ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>princ2</em> </td><td>second principal to compare</td></tr> 503ae771770SStanislav Sedov </table> 504ae771770SStanislav Sedov</dl> 505ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>non zero if equal, 0 if not</dd></dl> 506ae771770SStanislav Sedov<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__krb5__principal.html#g13c84ce37f704c99353888eb03a19ea6">krb5_principal_compare()</a> <p> 507ae771770SStanislav Sedov<a class="el" href="group__krb5__principal.html#g15abb49ce86457827a66f4ddfdd5b60c">krb5_realm_compare()</a> </dd></dl> 508ae771770SStanislav Sedov 509ae771770SStanislav Sedov</div> 510ae771770SStanislav Sedov</div><p> 511ae771770SStanislav Sedov<a class="anchor" name="g0138febd5414ace4835d3af78694833c"></a><!-- doxytag: member="principal.c::krb5_principal_get_num_comp" ref="g0138febd5414ace4835d3af78694833c" args="(krb5_context context, krb5_const_principal principal)" --> 512ae771770SStanislav Sedov<div class="memitem"> 513ae771770SStanislav Sedov<div class="memproto"> 514ae771770SStanislav Sedov <table class="memname"> 515ae771770SStanislav Sedov <tr> 516ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION unsigned int KRB5_LIB_CALL krb5_principal_get_num_comp </td> 517ae771770SStanislav Sedov <td>(</td> 518ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 519ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 520ae771770SStanislav Sedov </tr> 521ae771770SStanislav Sedov <tr> 522ae771770SStanislav Sedov <td class="paramkey"></td> 523ae771770SStanislav Sedov <td></td> 524ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 525ae771770SStanislav Sedov <td class="paramname"> <em>principal</em></td><td> </td> 526ae771770SStanislav Sedov </tr> 527ae771770SStanislav Sedov <tr> 528ae771770SStanislav Sedov <td></td> 529ae771770SStanislav Sedov <td>)</td> 530ae771770SStanislav Sedov <td></td><td></td><td></td> 531ae771770SStanislav Sedov </tr> 532ae771770SStanislav Sedov </table> 533ae771770SStanislav Sedov</div> 534ae771770SStanislav Sedov<div class="memdoc"> 535ae771770SStanislav Sedov 536ae771770SStanislav Sedov<p> 537ae771770SStanislav SedovGet number of component is principal.<p> 538ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 539ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 540ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>Kerberos 5 context </td></tr> 541ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>principal to query</td></tr> 542ae771770SStanislav Sedov </table> 543ae771770SStanislav Sedov</dl> 544ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>number of components in string </dd></dl> 545ae771770SStanislav Sedov 546ae771770SStanislav Sedov</div> 547ae771770SStanislav Sedov</div><p> 548ae771770SStanislav Sedov<a class="anchor" name="gccd23426798cf776a96c23a455576362"></a><!-- doxytag: member="principal.c::krb5_principal_get_realm" ref="gccd23426798cf776a96c23a455576362" args="(krb5_context context, krb5_const_principal principal)" --> 549ae771770SStanislav Sedov<div class="memitem"> 550ae771770SStanislav Sedov<div class="memproto"> 551ae771770SStanislav Sedov <table class="memname"> 552ae771770SStanislav Sedov <tr> 553ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION const char* KRB5_LIB_CALL krb5_principal_get_realm </td> 554ae771770SStanislav Sedov <td>(</td> 555ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 556ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 557ae771770SStanislav Sedov </tr> 558ae771770SStanislav Sedov <tr> 559ae771770SStanislav Sedov <td class="paramkey"></td> 560ae771770SStanislav Sedov <td></td> 561ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 562ae771770SStanislav Sedov <td class="paramname"> <em>principal</em></td><td> </td> 563ae771770SStanislav Sedov </tr> 564ae771770SStanislav Sedov <tr> 565ae771770SStanislav Sedov <td></td> 566ae771770SStanislav Sedov <td>)</td> 567ae771770SStanislav Sedov <td></td><td></td><td></td> 568ae771770SStanislav Sedov </tr> 569ae771770SStanislav Sedov </table> 570ae771770SStanislav Sedov</div> 571ae771770SStanislav Sedov<div class="memdoc"> 572ae771770SStanislav Sedov 573ae771770SStanislav Sedov<p> 574ae771770SStanislav SedovGet the realm of the principal<p> 575ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 576ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 577ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos context. </td></tr> 578ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>principal to get the realm for</td></tr> 579ae771770SStanislav Sedov </table> 580ae771770SStanislav Sedov</dl> 581ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>realm of the principal, don't free or use after krb5_principal is freed </dd></dl> 582ae771770SStanislav Sedov 583ae771770SStanislav Sedov</div> 584ae771770SStanislav Sedov</div><p> 585ae771770SStanislav Sedov<a class="anchor" name="gf4a599c42592ff7485753e80b8de67b7"></a><!-- doxytag: member="principal.c::krb5_principal_get_type" ref="gf4a599c42592ff7485753e80b8de67b7" args="(krb5_context context, krb5_const_principal principal)" --> 586ae771770SStanislav Sedov<div class="memitem"> 587ae771770SStanislav Sedov<div class="memproto"> 588ae771770SStanislav Sedov <table class="memname"> 589ae771770SStanislav Sedov <tr> 590ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION int KRB5_LIB_CALL krb5_principal_get_type </td> 591ae771770SStanislav Sedov <td>(</td> 592ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 593ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 594ae771770SStanislav Sedov </tr> 595ae771770SStanislav Sedov <tr> 596ae771770SStanislav Sedov <td class="paramkey"></td> 597ae771770SStanislav Sedov <td></td> 598ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 599ae771770SStanislav Sedov <td class="paramname"> <em>principal</em></td><td> </td> 600ae771770SStanislav Sedov </tr> 601ae771770SStanislav Sedov <tr> 602ae771770SStanislav Sedov <td></td> 603ae771770SStanislav Sedov <td>)</td> 604ae771770SStanislav Sedov <td></td><td></td><td></td> 605ae771770SStanislav Sedov </tr> 606ae771770SStanislav Sedov </table> 607ae771770SStanislav Sedov</div> 608ae771770SStanislav Sedov<div class="memdoc"> 609ae771770SStanislav Sedov 610ae771770SStanislav Sedov<p> 611ae771770SStanislav SedovGet the type of the principal<p> 612ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 613ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 614ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos context. </td></tr> 615ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>principal to get the type for</td></tr> 616ae771770SStanislav Sedov </table> 617ae771770SStanislav Sedov</dl> 618ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>the type of principal </dd></dl> 619ae771770SStanislav Sedov 620ae771770SStanislav Sedov</div> 621ae771770SStanislav Sedov</div><p> 622ae771770SStanislav Sedov<a class="anchor" name="g9b24f6db481f24b86a93702eaa2755fc"></a><!-- doxytag: member="principal.c::krb5_principal_is_krbtgt" ref="g9b24f6db481f24b86a93702eaa2755fc" args="(krb5_context context, krb5_const_principal p)" --> 623ae771770SStanislav Sedov<div class="memitem"> 624ae771770SStanislav Sedov<div class="memproto"> 625ae771770SStanislav Sedov <table class="memname"> 626ae771770SStanislav Sedov <tr> 627ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL krb5_principal_is_krbtgt </td> 628ae771770SStanislav Sedov <td>(</td> 629ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 630ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 631ae771770SStanislav Sedov </tr> 632ae771770SStanislav Sedov <tr> 633ae771770SStanislav Sedov <td class="paramkey"></td> 634ae771770SStanislav Sedov <td></td> 635ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 636ae771770SStanislav Sedov <td class="paramname"> <em>p</em></td><td> </td> 637ae771770SStanislav Sedov </tr> 638ae771770SStanislav Sedov <tr> 639ae771770SStanislav Sedov <td></td> 640ae771770SStanislav Sedov <td>)</td> 641ae771770SStanislav Sedov <td></td><td></td><td></td> 642ae771770SStanislav Sedov </tr> 643ae771770SStanislav Sedov </table> 644ae771770SStanislav Sedov</div> 645ae771770SStanislav Sedov<div class="memdoc"> 646ae771770SStanislav Sedov 647ae771770SStanislav Sedov<p> 648ae771770SStanislav SedovCheck if the cname part of the principal is a krbtgt principal 649ae771770SStanislav Sedov</div> 650ae771770SStanislav Sedov</div><p> 651ae771770SStanislav Sedov<a class="anchor" name="g6cf45d0f9cb4b0bf3b6ef574d9e5cc6a"></a><!-- doxytag: member="principal.c::krb5_principal_match" ref="g6cf45d0f9cb4b0bf3b6ef574d9e5cc6a" args="(krb5_context context, krb5_const_principal princ, krb5_const_principal pattern)" --> 652ae771770SStanislav Sedov<div class="memitem"> 653ae771770SStanislav Sedov<div class="memproto"> 654ae771770SStanislav Sedov <table class="memname"> 655ae771770SStanislav Sedov <tr> 656ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL krb5_principal_match </td> 657ae771770SStanislav Sedov <td>(</td> 658ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 659ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 660ae771770SStanislav Sedov </tr> 661ae771770SStanislav Sedov <tr> 662ae771770SStanislav Sedov <td class="paramkey"></td> 663ae771770SStanislav Sedov <td></td> 664ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 665ae771770SStanislav Sedov <td class="paramname"> <em>princ</em>, </td> 666ae771770SStanislav Sedov </tr> 667ae771770SStanislav Sedov <tr> 668ae771770SStanislav Sedov <td class="paramkey"></td> 669ae771770SStanislav Sedov <td></td> 670ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 671ae771770SStanislav Sedov <td class="paramname"> <em>pattern</em></td><td> </td> 672ae771770SStanislav Sedov </tr> 673ae771770SStanislav Sedov <tr> 674ae771770SStanislav Sedov <td></td> 675ae771770SStanislav Sedov <td>)</td> 676ae771770SStanislav Sedov <td></td><td></td><td></td> 677ae771770SStanislav Sedov </tr> 678ae771770SStanislav Sedov </table> 679ae771770SStanislav Sedov</div> 680ae771770SStanislav Sedov<div class="memdoc"> 681ae771770SStanislav Sedov 682ae771770SStanislav Sedov<p> 683ae771770SStanislav Sedovreturn TRUE iff princ matches pattern 684ae771770SStanislav Sedov</div> 685ae771770SStanislav Sedov</div><p> 686ae771770SStanislav Sedov<a class="anchor" name="gaacf06babb00b391f35a8468a0ec96f9"></a><!-- doxytag: member="principal.c::krb5_principal_set_realm" ref="gaacf06babb00b391f35a8468a0ec96f9" args="(krb5_context context, krb5_principal principal, krb5_const_realm realm)" --> 687ae771770SStanislav Sedov<div class="memitem"> 688ae771770SStanislav Sedov<div class="memproto"> 689ae771770SStanislav Sedov <table class="memname"> 690ae771770SStanislav Sedov <tr> 691ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_principal_set_realm </td> 692ae771770SStanislav Sedov <td>(</td> 693ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 694ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 695ae771770SStanislav Sedov </tr> 696ae771770SStanislav Sedov <tr> 697ae771770SStanislav Sedov <td class="paramkey"></td> 698ae771770SStanislav Sedov <td></td> 699ae771770SStanislav Sedov <td class="paramtype">krb5_principal </td> 700ae771770SStanislav Sedov <td class="paramname"> <em>principal</em>, </td> 701ae771770SStanislav Sedov </tr> 702ae771770SStanislav Sedov <tr> 703ae771770SStanislav Sedov <td class="paramkey"></td> 704ae771770SStanislav Sedov <td></td> 705ae771770SStanislav Sedov <td class="paramtype">krb5_const_realm </td> 706ae771770SStanislav Sedov <td class="paramname"> <em>realm</em></td><td> </td> 707ae771770SStanislav Sedov </tr> 708ae771770SStanislav Sedov <tr> 709ae771770SStanislav Sedov <td></td> 710ae771770SStanislav Sedov <td>)</td> 711ae771770SStanislav Sedov <td></td><td></td><td></td> 712ae771770SStanislav Sedov </tr> 713ae771770SStanislav Sedov </table> 714ae771770SStanislav Sedov</div> 715ae771770SStanislav Sedov<div class="memdoc"> 716ae771770SStanislav Sedov 717ae771770SStanislav Sedov<p> 718ae771770SStanislav SedovSet a new realm for a principal, and as a side-effect free the previous realm.<p> 719ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 720ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 721ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos context. </td></tr> 722ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>principal set the realm for </td></tr> 723ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>realm</em> </td><td>the new realm to set</td></tr> 724ae771770SStanislav Sedov </table> 725ae771770SStanislav Sedov</dl> 726ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An krb5 error code, see krb5_get_error_message(). </dd></dl> 727ae771770SStanislav Sedov 728ae771770SStanislav Sedov</div> 729ae771770SStanislav Sedov</div><p> 730ae771770SStanislav Sedov<a class="anchor" name="g28b750b990452f02922bc74a6cac0313"></a><!-- doxytag: member="principal.c::krb5_principal_set_type" ref="g28b750b990452f02922bc74a6cac0313" args="(krb5_context context, krb5_principal principal, int type)" --> 731ae771770SStanislav Sedov<div class="memitem"> 732ae771770SStanislav Sedov<div class="memproto"> 733ae771770SStanislav Sedov <table class="memname"> 734ae771770SStanislav Sedov <tr> 735ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_principal_set_type </td> 736ae771770SStanislav Sedov <td>(</td> 737ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 738ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 739ae771770SStanislav Sedov </tr> 740ae771770SStanislav Sedov <tr> 741ae771770SStanislav Sedov <td class="paramkey"></td> 742ae771770SStanislav Sedov <td></td> 743ae771770SStanislav Sedov <td class="paramtype">krb5_principal </td> 744ae771770SStanislav Sedov <td class="paramname"> <em>principal</em>, </td> 745ae771770SStanislav Sedov </tr> 746ae771770SStanislav Sedov <tr> 747ae771770SStanislav Sedov <td class="paramkey"></td> 748ae771770SStanislav Sedov <td></td> 749ae771770SStanislav Sedov <td class="paramtype">int </td> 750ae771770SStanislav Sedov <td class="paramname"> <em>type</em></td><td> </td> 751ae771770SStanislav Sedov </tr> 752ae771770SStanislav Sedov <tr> 753ae771770SStanislav Sedov <td></td> 754ae771770SStanislav Sedov <td>)</td> 755ae771770SStanislav Sedov <td></td><td></td><td></td> 756ae771770SStanislav Sedov </tr> 757ae771770SStanislav Sedov </table> 758ae771770SStanislav Sedov</div> 759ae771770SStanislav Sedov<div class="memdoc"> 760ae771770SStanislav Sedov 761ae771770SStanislav Sedov<p> 762ae771770SStanislav SedovSet the type of the principal<p> 763ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 764ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 765ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos context. </td></tr> 766ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>principal to set the type for </td></tr> 767ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>type</em> </td><td>the new type</td></tr> 768ae771770SStanislav Sedov </table> 769ae771770SStanislav Sedov</dl> 770ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An krb5 error code, see krb5_get_error_message(). </dd></dl> 771ae771770SStanislav Sedov 772ae771770SStanislav Sedov</div> 773ae771770SStanislav Sedov</div><p> 774ae771770SStanislav Sedov<a class="anchor" name="g15abb49ce86457827a66f4ddfdd5b60c"></a><!-- doxytag: member="principal.c::krb5_realm_compare" ref="g15abb49ce86457827a66f4ddfdd5b60c" args="(krb5_context context, krb5_const_principal princ1, krb5_const_principal princ2)" --> 775ae771770SStanislav Sedov<div class="memitem"> 776ae771770SStanislav Sedov<div class="memproto"> 777ae771770SStanislav Sedov <table class="memname"> 778ae771770SStanislav Sedov <tr> 779ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL krb5_realm_compare </td> 780ae771770SStanislav Sedov <td>(</td> 781ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 782ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 783ae771770SStanislav Sedov </tr> 784ae771770SStanislav Sedov <tr> 785ae771770SStanislav Sedov <td class="paramkey"></td> 786ae771770SStanislav Sedov <td></td> 787ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 788ae771770SStanislav Sedov <td class="paramname"> <em>princ1</em>, </td> 789ae771770SStanislav Sedov </tr> 790ae771770SStanislav Sedov <tr> 791ae771770SStanislav Sedov <td class="paramkey"></td> 792ae771770SStanislav Sedov <td></td> 793ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 794ae771770SStanislav Sedov <td class="paramname"> <em>princ2</em></td><td> </td> 795ae771770SStanislav Sedov </tr> 796ae771770SStanislav Sedov <tr> 797ae771770SStanislav Sedov <td></td> 798ae771770SStanislav Sedov <td>)</td> 799ae771770SStanislav Sedov <td></td><td></td><td></td> 800ae771770SStanislav Sedov </tr> 801ae771770SStanislav Sedov </table> 802ae771770SStanislav Sedov</div> 803ae771770SStanislav Sedov<div class="memdoc"> 804ae771770SStanislav Sedov 805ae771770SStanislav Sedov<p> 806ae771770SStanislav Sedovreturn TRUE iff realm(princ1) == realm(princ2)<p> 807ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 808ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 809ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>Kerberos 5 context </td></tr> 810ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>princ1</em> </td><td>first principal to compare </td></tr> 811ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>princ2</em> </td><td>second principal to compare</td></tr> 812ae771770SStanislav Sedov </table> 813ae771770SStanislav Sedov</dl> 814ae771770SStanislav Sedov<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="group__krb5__principal.html#g3c49cc0c1dac96d31a91aa263d8cdb4a">krb5_principal_compare_any_realm()</a> <p> 815ae771770SStanislav Sedov<a class="el" href="group__krb5__principal.html#g13c84ce37f704c99353888eb03a19ea6">krb5_principal_compare()</a> </dd></dl> 816ae771770SStanislav Sedov 817ae771770SStanislav Sedov</div> 818ae771770SStanislav Sedov</div><p> 819ae771770SStanislav Sedov<a class="anchor" name="g8be0f5000da6ee0d4bd5dcaf3cb01d08"></a><!-- doxytag: member="principal.c::krb5_sname_to_principal" ref="g8be0f5000da6ee0d4bd5dcaf3cb01d08" args="(krb5_context context, const char *hostname, const char *sname, int32_t type, krb5_principal *ret_princ)" --> 820ae771770SStanislav Sedov<div class="memitem"> 821ae771770SStanislav Sedov<div class="memproto"> 822ae771770SStanislav Sedov <table class="memname"> 823ae771770SStanislav Sedov <tr> 824ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_sname_to_principal </td> 825ae771770SStanislav Sedov <td>(</td> 826ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 827ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 828ae771770SStanislav Sedov </tr> 829ae771770SStanislav Sedov <tr> 830ae771770SStanislav Sedov <td class="paramkey"></td> 831ae771770SStanislav Sedov <td></td> 832ae771770SStanislav Sedov <td class="paramtype">const char * </td> 833ae771770SStanislav Sedov <td class="paramname"> <em>hostname</em>, </td> 834ae771770SStanislav Sedov </tr> 835ae771770SStanislav Sedov <tr> 836ae771770SStanislav Sedov <td class="paramkey"></td> 837ae771770SStanislav Sedov <td></td> 838ae771770SStanislav Sedov <td class="paramtype">const char * </td> 839ae771770SStanislav Sedov <td class="paramname"> <em>sname</em>, </td> 840ae771770SStanislav Sedov </tr> 841ae771770SStanislav Sedov <tr> 842ae771770SStanislav Sedov <td class="paramkey"></td> 843ae771770SStanislav Sedov <td></td> 844ae771770SStanislav Sedov <td class="paramtype">int32_t </td> 845ae771770SStanislav Sedov <td class="paramname"> <em>type</em>, </td> 846ae771770SStanislav Sedov </tr> 847ae771770SStanislav Sedov <tr> 848ae771770SStanislav Sedov <td class="paramkey"></td> 849ae771770SStanislav Sedov <td></td> 850ae771770SStanislav Sedov <td class="paramtype">krb5_principal * </td> 851ae771770SStanislav Sedov <td class="paramname"> <em>ret_princ</em></td><td> </td> 852ae771770SStanislav Sedov </tr> 853ae771770SStanislav Sedov <tr> 854ae771770SStanislav Sedov <td></td> 855ae771770SStanislav Sedov <td>)</td> 856ae771770SStanislav Sedov <td></td><td></td><td></td> 857ae771770SStanislav Sedov </tr> 858ae771770SStanislav Sedov </table> 859ae771770SStanislav Sedov</div> 860ae771770SStanislav Sedov<div class="memdoc"> 861ae771770SStanislav Sedov 862ae771770SStanislav Sedov<p> 863ae771770SStanislav SedovCreate a principal for the service running on hostname. If KRB5_NT_SRV_HST is used, the hostname is canonization using DNS (or some other service), this is potentially insecure.<p> 864ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 865ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 866ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos context. </td></tr> 867ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>hostname</em> </td><td>hostname to use </td></tr> 868ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>sname</em> </td><td>Service name to use </td></tr> 869ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>type</em> </td><td>name type of pricipal, use KRB5_NT_SRV_HST or KRB5_NT_UNKNOWN. </td></tr> 870ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>ret_princ</em> </td><td>return principal, free with <a class="el" href="group__krb5__principal.html#g5bd3f620ebe8cd4fe44b5c858ba17d22">krb5_free_principal()</a>.</td></tr> 871ae771770SStanislav Sedov </table> 872ae771770SStanislav Sedov</dl> 873ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An krb5 error code, see krb5_get_error_message(). </dd></dl> 874ae771770SStanislav Sedov 875ae771770SStanislav Sedov</div> 876ae771770SStanislav Sedov</div><p> 877ae771770SStanislav Sedov<a class="anchor" name="gac881051ed59fe0dcd08cee62280b332"></a><!-- doxytag: member="principal.c::krb5_unparse_name" ref="gac881051ed59fe0dcd08cee62280b332" args="(krb5_context context, krb5_const_principal principal, char **name)" --> 878ae771770SStanislav Sedov<div class="memitem"> 879ae771770SStanislav Sedov<div class="memproto"> 880ae771770SStanislav Sedov <table class="memname"> 881ae771770SStanislav Sedov <tr> 882ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_unparse_name </td> 883ae771770SStanislav Sedov <td>(</td> 884ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 885ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 886ae771770SStanislav Sedov </tr> 887ae771770SStanislav Sedov <tr> 888ae771770SStanislav Sedov <td class="paramkey"></td> 889ae771770SStanislav Sedov <td></td> 890ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 891ae771770SStanislav Sedov <td class="paramname"> <em>principal</em>, </td> 892ae771770SStanislav Sedov </tr> 893ae771770SStanislav Sedov <tr> 894ae771770SStanislav Sedov <td class="paramkey"></td> 895ae771770SStanislav Sedov <td></td> 896ae771770SStanislav Sedov <td class="paramtype">char ** </td> 897ae771770SStanislav Sedov <td class="paramname"> <em>name</em></td><td> </td> 898ae771770SStanislav Sedov </tr> 899ae771770SStanislav Sedov <tr> 900ae771770SStanislav Sedov <td></td> 901ae771770SStanislav Sedov <td>)</td> 902ae771770SStanislav Sedov <td></td><td></td><td></td> 903ae771770SStanislav Sedov </tr> 904ae771770SStanislav Sedov </table> 905ae771770SStanislav Sedov</div> 906ae771770SStanislav Sedov<div class="memdoc"> 907ae771770SStanislav Sedov 908ae771770SStanislav Sedov<p> 909ae771770SStanislav SedovUnparse the Kerberos name into a string<p> 910ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 911ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 912ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>Kerberos 5 context </td></tr> 913ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>principal to query </td></tr> 914ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>resulting string, free with krb5_xfree()</td></tr> 915ae771770SStanislav Sedov </table> 916ae771770SStanislav Sedov</dl> 917ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An krb5 error code, see krb5_get_error_message(). </dd></dl> 918ae771770SStanislav Sedov 919ae771770SStanislav Sedov</div> 920ae771770SStanislav Sedov</div><p> 921ae771770SStanislav Sedov<a class="anchor" name="g6f173badfb37ad41fdab6db77bde7689"></a><!-- doxytag: member="principal.c::krb5_unparse_name_fixed" ref="g6f173badfb37ad41fdab6db77bde7689" args="(krb5_context context, krb5_const_principal principal, char *name, size_t len)" --> 922ae771770SStanislav Sedov<div class="memitem"> 923ae771770SStanislav Sedov<div class="memproto"> 924ae771770SStanislav Sedov <table class="memname"> 925ae771770SStanislav Sedov <tr> 926ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_unparse_name_fixed </td> 927ae771770SStanislav Sedov <td>(</td> 928ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 929ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 930ae771770SStanislav Sedov </tr> 931ae771770SStanislav Sedov <tr> 932ae771770SStanislav Sedov <td class="paramkey"></td> 933ae771770SStanislav Sedov <td></td> 934ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 935ae771770SStanislav Sedov <td class="paramname"> <em>principal</em>, </td> 936ae771770SStanislav Sedov </tr> 937ae771770SStanislav Sedov <tr> 938ae771770SStanislav Sedov <td class="paramkey"></td> 939ae771770SStanislav Sedov <td></td> 940ae771770SStanislav Sedov <td class="paramtype">char * </td> 941ae771770SStanislav Sedov <td class="paramname"> <em>name</em>, </td> 942ae771770SStanislav Sedov </tr> 943ae771770SStanislav Sedov <tr> 944ae771770SStanislav Sedov <td class="paramkey"></td> 945ae771770SStanislav Sedov <td></td> 946ae771770SStanislav Sedov <td class="paramtype">size_t </td> 947ae771770SStanislav Sedov <td class="paramname"> <em>len</em></td><td> </td> 948ae771770SStanislav Sedov </tr> 949ae771770SStanislav Sedov <tr> 950ae771770SStanislav Sedov <td></td> 951ae771770SStanislav Sedov <td>)</td> 952ae771770SStanislav Sedov <td></td><td></td><td></td> 953ae771770SStanislav Sedov </tr> 954ae771770SStanislav Sedov </table> 955ae771770SStanislav Sedov</div> 956ae771770SStanislav Sedov<div class="memdoc"> 957ae771770SStanislav Sedov 958ae771770SStanislav Sedov<p> 959ae771770SStanislav SedovUnparse the principal name to a fixed buffer<p> 960ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 961ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 962ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos context. </td></tr> 963ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>principal to unparse </td></tr> 964ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>buffer to write name to </td></tr> 965ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>len</em> </td><td>length of buffer</td></tr> 966ae771770SStanislav Sedov </table> 967ae771770SStanislav Sedov</dl> 968ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An krb5 error code, see krb5_get_error_message(). </dd></dl> 969ae771770SStanislav Sedov 970ae771770SStanislav Sedov</div> 971ae771770SStanislav Sedov</div><p> 972ae771770SStanislav Sedov<a class="anchor" name="gd9ba42e18d79aa27458338967b66693f"></a><!-- doxytag: member="principal.c::krb5_unparse_name_fixed_flags" ref="gd9ba42e18d79aa27458338967b66693f" args="(krb5_context context, krb5_const_principal principal, int flags, char *name, size_t len)" --> 973ae771770SStanislav Sedov<div class="memitem"> 974ae771770SStanislav Sedov<div class="memproto"> 975ae771770SStanislav Sedov <table class="memname"> 976ae771770SStanislav Sedov <tr> 977ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_unparse_name_fixed_flags </td> 978ae771770SStanislav Sedov <td>(</td> 979ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 980ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 981ae771770SStanislav Sedov </tr> 982ae771770SStanislav Sedov <tr> 983ae771770SStanislav Sedov <td class="paramkey"></td> 984ae771770SStanislav Sedov <td></td> 985ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 986ae771770SStanislav Sedov <td class="paramname"> <em>principal</em>, </td> 987ae771770SStanislav Sedov </tr> 988ae771770SStanislav Sedov <tr> 989ae771770SStanislav Sedov <td class="paramkey"></td> 990ae771770SStanislav Sedov <td></td> 991ae771770SStanislav Sedov <td class="paramtype">int </td> 992ae771770SStanislav Sedov <td class="paramname"> <em>flags</em>, </td> 993ae771770SStanislav Sedov </tr> 994ae771770SStanislav Sedov <tr> 995ae771770SStanislav Sedov <td class="paramkey"></td> 996ae771770SStanislav Sedov <td></td> 997ae771770SStanislav Sedov <td class="paramtype">char * </td> 998ae771770SStanislav Sedov <td class="paramname"> <em>name</em>, </td> 999ae771770SStanislav Sedov </tr> 1000ae771770SStanislav Sedov <tr> 1001ae771770SStanislav Sedov <td class="paramkey"></td> 1002ae771770SStanislav Sedov <td></td> 1003ae771770SStanislav Sedov <td class="paramtype">size_t </td> 1004ae771770SStanislav Sedov <td class="paramname"> <em>len</em></td><td> </td> 1005ae771770SStanislav Sedov </tr> 1006ae771770SStanislav Sedov <tr> 1007ae771770SStanislav Sedov <td></td> 1008ae771770SStanislav Sedov <td>)</td> 1009ae771770SStanislav Sedov <td></td><td></td><td></td> 1010ae771770SStanislav Sedov </tr> 1011ae771770SStanislav Sedov </table> 1012ae771770SStanislav Sedov</div> 1013ae771770SStanislav Sedov<div class="memdoc"> 1014ae771770SStanislav Sedov 1015ae771770SStanislav Sedov<p> 1016ae771770SStanislav SedovUnparse the principal name with unparse flags to a fixed buffer.<p> 1017ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 1018ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 1019ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos context. </td></tr> 1020ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>principal to unparse </td></tr> 1021ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>flags</em> </td><td>unparse flags </td></tr> 1022ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>buffer to write name to </td></tr> 1023ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>len</em> </td><td>length of buffer</td></tr> 1024ae771770SStanislav Sedov </table> 1025ae771770SStanislav Sedov</dl> 1026ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An krb5 error code, see krb5_get_error_message(). </dd></dl> 1027ae771770SStanislav Sedov 1028ae771770SStanislav Sedov</div> 1029ae771770SStanislav Sedov</div><p> 1030ae771770SStanislav Sedov<a class="anchor" name="gcebe44e0685fc7b6c89a53eca71e7d24"></a><!-- doxytag: member="principal.c::krb5_unparse_name_fixed_short" ref="gcebe44e0685fc7b6c89a53eca71e7d24" args="(krb5_context context, krb5_const_principal principal, char *name, size_t len)" --> 1031ae771770SStanislav Sedov<div class="memitem"> 1032ae771770SStanislav Sedov<div class="memproto"> 1033ae771770SStanislav Sedov <table class="memname"> 1034ae771770SStanislav Sedov <tr> 1035ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_unparse_name_fixed_short </td> 1036ae771770SStanislav Sedov <td>(</td> 1037ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 1038ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 1039ae771770SStanislav Sedov </tr> 1040ae771770SStanislav Sedov <tr> 1041ae771770SStanislav Sedov <td class="paramkey"></td> 1042ae771770SStanislav Sedov <td></td> 1043ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 1044ae771770SStanislav Sedov <td class="paramname"> <em>principal</em>, </td> 1045ae771770SStanislav Sedov </tr> 1046ae771770SStanislav Sedov <tr> 1047ae771770SStanislav Sedov <td class="paramkey"></td> 1048ae771770SStanislav Sedov <td></td> 1049ae771770SStanislav Sedov <td class="paramtype">char * </td> 1050ae771770SStanislav Sedov <td class="paramname"> <em>name</em>, </td> 1051ae771770SStanislav Sedov </tr> 1052ae771770SStanislav Sedov <tr> 1053ae771770SStanislav Sedov <td class="paramkey"></td> 1054ae771770SStanislav Sedov <td></td> 1055ae771770SStanislav Sedov <td class="paramtype">size_t </td> 1056ae771770SStanislav Sedov <td class="paramname"> <em>len</em></td><td> </td> 1057ae771770SStanislav Sedov </tr> 1058ae771770SStanislav Sedov <tr> 1059ae771770SStanislav Sedov <td></td> 1060ae771770SStanislav Sedov <td>)</td> 1061ae771770SStanislav Sedov <td></td><td></td><td></td> 1062ae771770SStanislav Sedov </tr> 1063ae771770SStanislav Sedov </table> 1064ae771770SStanislav Sedov</div> 1065ae771770SStanislav Sedov<div class="memdoc"> 1066ae771770SStanislav Sedov 1067ae771770SStanislav Sedov<p> 1068ae771770SStanislav SedovUnparse the principal name to a fixed buffer. The realm is skipped if its a default realm.<p> 1069ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 1070ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 1071ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos context. </td></tr> 1072ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>principal to unparse </td></tr> 1073ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>buffer to write name to </td></tr> 1074ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>len</em> </td><td>length of buffer</td></tr> 1075ae771770SStanislav Sedov </table> 1076ae771770SStanislav Sedov</dl> 1077ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An krb5 error code, see krb5_get_error_message(). </dd></dl> 1078ae771770SStanislav Sedov 1079ae771770SStanislav Sedov</div> 1080ae771770SStanislav Sedov</div><p> 1081ae771770SStanislav Sedov<a class="anchor" name="gd46122cd0e543b6c1219abb8730378e7"></a><!-- doxytag: member="principal.c::krb5_unparse_name_flags" ref="gd46122cd0e543b6c1219abb8730378e7" args="(krb5_context context, krb5_const_principal principal, int flags, char **name)" --> 1082ae771770SStanislav Sedov<div class="memitem"> 1083ae771770SStanislav Sedov<div class="memproto"> 1084ae771770SStanislav Sedov <table class="memname"> 1085ae771770SStanislav Sedov <tr> 1086ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_unparse_name_flags </td> 1087ae771770SStanislav Sedov <td>(</td> 1088ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 1089ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 1090ae771770SStanislav Sedov </tr> 1091ae771770SStanislav Sedov <tr> 1092ae771770SStanislav Sedov <td class="paramkey"></td> 1093ae771770SStanislav Sedov <td></td> 1094ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 1095ae771770SStanislav Sedov <td class="paramname"> <em>principal</em>, </td> 1096ae771770SStanislav Sedov </tr> 1097ae771770SStanislav Sedov <tr> 1098ae771770SStanislav Sedov <td class="paramkey"></td> 1099ae771770SStanislav Sedov <td></td> 1100ae771770SStanislav Sedov <td class="paramtype">int </td> 1101ae771770SStanislav Sedov <td class="paramname"> <em>flags</em>, </td> 1102ae771770SStanislav Sedov </tr> 1103ae771770SStanislav Sedov <tr> 1104ae771770SStanislav Sedov <td class="paramkey"></td> 1105ae771770SStanislav Sedov <td></td> 1106ae771770SStanislav Sedov <td class="paramtype">char ** </td> 1107ae771770SStanislav Sedov <td class="paramname"> <em>name</em></td><td> </td> 1108ae771770SStanislav Sedov </tr> 1109ae771770SStanislav Sedov <tr> 1110ae771770SStanislav Sedov <td></td> 1111ae771770SStanislav Sedov <td>)</td> 1112ae771770SStanislav Sedov <td></td><td></td><td></td> 1113ae771770SStanislav Sedov </tr> 1114ae771770SStanislav Sedov </table> 1115ae771770SStanislav Sedov</div> 1116ae771770SStanislav Sedov<div class="memdoc"> 1117ae771770SStanislav Sedov 1118ae771770SStanislav Sedov<p> 1119ae771770SStanislav SedovUnparse the Kerberos name into a string<p> 1120ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 1121ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 1122ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>Kerberos 5 context </td></tr> 1123ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>principal to query </td></tr> 1124ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>flags</em> </td><td>flag to determine the behavior </td></tr> 1125ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>resulting string, free with krb5_xfree()</td></tr> 1126ae771770SStanislav Sedov </table> 1127ae771770SStanislav Sedov</dl> 1128ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An krb5 error code, see krb5_get_error_message(). </dd></dl> 1129ae771770SStanislav Sedov 1130ae771770SStanislav Sedov</div> 1131ae771770SStanislav Sedov</div><p> 1132ae771770SStanislav Sedov<a class="anchor" name="g600247895edbde37e195c8b2089295a3"></a><!-- doxytag: member="principal.c::krb5_unparse_name_short" ref="g600247895edbde37e195c8b2089295a3" args="(krb5_context context, krb5_const_principal principal, char **name)" --> 1133ae771770SStanislav Sedov<div class="memitem"> 1134ae771770SStanislav Sedov<div class="memproto"> 1135ae771770SStanislav Sedov <table class="memname"> 1136ae771770SStanislav Sedov <tr> 1137ae771770SStanislav Sedov <td class="memname">KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_unparse_name_short </td> 1138ae771770SStanislav Sedov <td>(</td> 1139ae771770SStanislav Sedov <td class="paramtype">krb5_context </td> 1140ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 1141ae771770SStanislav Sedov </tr> 1142ae771770SStanislav Sedov <tr> 1143ae771770SStanislav Sedov <td class="paramkey"></td> 1144ae771770SStanislav Sedov <td></td> 1145ae771770SStanislav Sedov <td class="paramtype">krb5_const_principal </td> 1146ae771770SStanislav Sedov <td class="paramname"> <em>principal</em>, </td> 1147ae771770SStanislav Sedov </tr> 1148ae771770SStanislav Sedov <tr> 1149ae771770SStanislav Sedov <td class="paramkey"></td> 1150ae771770SStanislav Sedov <td></td> 1151ae771770SStanislav Sedov <td class="paramtype">char ** </td> 1152ae771770SStanislav Sedov <td class="paramname"> <em>name</em></td><td> </td> 1153ae771770SStanislav Sedov </tr> 1154ae771770SStanislav Sedov <tr> 1155ae771770SStanislav Sedov <td></td> 1156ae771770SStanislav Sedov <td>)</td> 1157ae771770SStanislav Sedov <td></td><td></td><td></td> 1158ae771770SStanislav Sedov </tr> 1159ae771770SStanislav Sedov </table> 1160ae771770SStanislav Sedov</div> 1161ae771770SStanislav Sedov<div class="memdoc"> 1162ae771770SStanislav Sedov 1163ae771770SStanislav Sedov<p> 1164ae771770SStanislav SedovUnparse the principal name to a allocated buffer. The realm is skipped if its a default realm.<p> 1165ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 1166ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 1167ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A Kerberos context. </td></tr> 1168ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>principal</em> </td><td>principal to unparse </td></tr> 1169ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>returned buffer, free with krb5_xfree()</td></tr> 1170ae771770SStanislav Sedov </table> 1171ae771770SStanislav Sedov</dl> 1172ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An krb5 error code, see krb5_get_error_message(). </dd></dl> 1173ae771770SStanislav Sedov 1174ae771770SStanislav Sedov</div> 1175ae771770SStanislav Sedov</div><p> 1176ae771770SStanislav Sedov</div> 1177ae771770SStanislav Sedov<hr size="1"><address style="text-align: right;"><small> 1178*cf771f22SStanislav SedovGenerated on Wed Jan 11 14:07:48 2012 for HeimdalKerberos5library by <a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address> 1179ae771770SStanislav Sedov</body> 1180ae771770SStanislav Sedov</html> 1181