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>Heimdalx509library: hx509 name 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 </ul> 19ae771770SStanislav Sedov </div> 20ae771770SStanislav Sedov</div> 21ae771770SStanislav Sedov<div class="contents"> 22ae771770SStanislav Sedov<h1>hx509 name functions</h1><table border="0" cellpadding="0" cellspacing="0"> 23ae771770SStanislav Sedov<tr><td></td></tr> 24ae771770SStanislav Sedov<tr><td colspan="2"><br><h2>Functions</h2></td></tr> 25ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#g1bd74b34e0aa88b083678ba231d38718">hx509_name_to_string</a> (const hx509_name name, char **str)</td></tr> 26ae771770SStanislav Sedov 27ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#gbd49c49301d601bc53371b867a7eac54">hx509_name_cmp</a> (hx509_name n1, hx509_name n2)</td></tr> 28ae771770SStanislav Sedov 29ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#g0565f607a4e57d0911ee7081ad9548c5">hx509_parse_name</a> (hx509_context context, const char *str, hx509_name *name)</td></tr> 30ae771770SStanislav Sedov 31ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#gcf9b6bfcdd810bed71e98f7e04d918ca">hx509_name_copy</a> (hx509_context context, const hx509_name from, hx509_name *to)</td></tr> 32ae771770SStanislav Sedov 33ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#g6e65dc67aa48bb87e4fb98ecfe512fbd">hx509_name_to_Name</a> (const hx509_name from, Name *to)</td></tr> 34ae771770SStanislav Sedov 35ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#g42015083c70b6aa29c4f082998dbbece">hx509_name_expand</a> (hx509_context context, hx509_name name, hx509_env env)</td></tr> 36ae771770SStanislav Sedov 37ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#gaf351931efb02fc7aea736af9977155e">hx509_name_free</a> (hx509_name *name)</td></tr> 38ae771770SStanislav Sedov 39ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#gf8f73e0a75da2189b1815d8c968750df">hx509_unparse_der_name</a> (const void *data, size_t length, char **str)</td></tr> 40ae771770SStanislav Sedov 41ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#g1838777e576422c1cb17093bbf7fa018">hx509_name_binary</a> (const hx509_name name, heim_octet_string *os)</td></tr> 42ae771770SStanislav Sedov 43ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#g4f6715dcabbbcb5d48512e504eae8352">hx509_name_is_null_p</a> (const hx509_name name)</td></tr> 44ae771770SStanislav Sedov 45ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__name.html#g678a0bf7676746ea1827efe951042f1e">hx509_general_name_unparse</a> (GeneralName *name, char **str)</td></tr> 46ae771770SStanislav Sedov 47ae771770SStanislav Sedov</table> 48ae771770SStanislav Sedov<hr><a name="_details"></a><h2>Detailed Description</h2> 49ae771770SStanislav SedovSee the <a class="el" href="page_name.html">PKIX/X.509 Names</a> for description and examples. <hr><h2>Function Documentation</h2> 50ae771770SStanislav Sedov<a class="anchor" name="g678a0bf7676746ea1827efe951042f1e"></a><!-- doxytag: member="name.c::hx509_general_name_unparse" ref="g678a0bf7676746ea1827efe951042f1e" args="(GeneralName *name, char **str)" --> 51ae771770SStanislav Sedov<div class="memitem"> 52ae771770SStanislav Sedov<div class="memproto"> 53ae771770SStanislav Sedov <table class="memname"> 54ae771770SStanislav Sedov <tr> 55ae771770SStanislav Sedov <td class="memname">int hx509_general_name_unparse </td> 56ae771770SStanislav Sedov <td>(</td> 57ae771770SStanislav Sedov <td class="paramtype">GeneralName * </td> 58ae771770SStanislav Sedov <td class="paramname"> <em>name</em>, </td> 59ae771770SStanislav Sedov </tr> 60ae771770SStanislav Sedov <tr> 61ae771770SStanislav Sedov <td class="paramkey"></td> 62ae771770SStanislav Sedov <td></td> 63ae771770SStanislav Sedov <td class="paramtype">char ** </td> 64ae771770SStanislav Sedov <td class="paramname"> <em>str</em></td><td> </td> 65ae771770SStanislav Sedov </tr> 66ae771770SStanislav Sedov <tr> 67ae771770SStanislav Sedov <td></td> 68ae771770SStanislav Sedov <td>)</td> 69ae771770SStanislav Sedov <td></td><td></td><td></td> 70ae771770SStanislav Sedov </tr> 71ae771770SStanislav Sedov </table> 72ae771770SStanislav Sedov</div> 73ae771770SStanislav Sedov<div class="memdoc"> 74ae771770SStanislav Sedov 75ae771770SStanislav Sedov<p> 76ae771770SStanislav SedovUnparse the hx509 name in name into a string.<p> 77ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 78ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 79ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>the name to print </td></tr> 80ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>str</em> </td><td>an allocated string returns the name in string form</td></tr> 81ae771770SStanislav Sedov </table> 82ae771770SStanislav Sedov</dl> 83ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl> 84ae771770SStanislav Sedov 85ae771770SStanislav Sedov</div> 86ae771770SStanislav Sedov</div><p> 87ae771770SStanislav Sedov<a class="anchor" name="g1838777e576422c1cb17093bbf7fa018"></a><!-- doxytag: member="name.c::hx509_name_binary" ref="g1838777e576422c1cb17093bbf7fa018" args="(const hx509_name name, heim_octet_string *os)" --> 88ae771770SStanislav Sedov<div class="memitem"> 89ae771770SStanislav Sedov<div class="memproto"> 90ae771770SStanislav Sedov <table class="memname"> 91ae771770SStanislav Sedov <tr> 92ae771770SStanislav Sedov <td class="memname">int hx509_name_binary </td> 93ae771770SStanislav Sedov <td>(</td> 94ae771770SStanislav Sedov <td class="paramtype">const hx509_name </td> 95ae771770SStanislav Sedov <td class="paramname"> <em>name</em>, </td> 96ae771770SStanislav Sedov </tr> 97ae771770SStanislav Sedov <tr> 98ae771770SStanislav Sedov <td class="paramkey"></td> 99ae771770SStanislav Sedov <td></td> 100ae771770SStanislav Sedov <td class="paramtype">heim_octet_string * </td> 101ae771770SStanislav Sedov <td class="paramname"> <em>os</em></td><td> </td> 102ae771770SStanislav Sedov </tr> 103ae771770SStanislav Sedov <tr> 104ae771770SStanislav Sedov <td></td> 105ae771770SStanislav Sedov <td>)</td> 106ae771770SStanislav Sedov <td></td><td></td><td></td> 107ae771770SStanislav Sedov </tr> 108ae771770SStanislav Sedov </table> 109ae771770SStanislav Sedov</div> 110ae771770SStanislav Sedov<div class="memdoc"> 111ae771770SStanislav Sedov 112ae771770SStanislav Sedov<p> 113ae771770SStanislav SedovConvert a hx509_name object to DER encoded name.<p> 114ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 115ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 116ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>name to concert </td></tr> 117ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>os</em> </td><td>data to a DER encoded name, free the resulting octet string with hx509_xfree(os->data).</td></tr> 118ae771770SStanislav Sedov </table> 119ae771770SStanislav Sedov</dl> 120ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl> 121ae771770SStanislav Sedov 122ae771770SStanislav Sedov</div> 123ae771770SStanislav Sedov</div><p> 124ae771770SStanislav Sedov<a class="anchor" name="gbd49c49301d601bc53371b867a7eac54"></a><!-- doxytag: member="name.c::hx509_name_cmp" ref="gbd49c49301d601bc53371b867a7eac54" args="(hx509_name n1, hx509_name n2)" --> 125ae771770SStanislav Sedov<div class="memitem"> 126ae771770SStanislav Sedov<div class="memproto"> 127ae771770SStanislav Sedov <table class="memname"> 128ae771770SStanislav Sedov <tr> 129ae771770SStanislav Sedov <td class="memname">int hx509_name_cmp </td> 130ae771770SStanislav Sedov <td>(</td> 131ae771770SStanislav Sedov <td class="paramtype">hx509_name </td> 132ae771770SStanislav Sedov <td class="paramname"> <em>n1</em>, </td> 133ae771770SStanislav Sedov </tr> 134ae771770SStanislav Sedov <tr> 135ae771770SStanislav Sedov <td class="paramkey"></td> 136ae771770SStanislav Sedov <td></td> 137ae771770SStanislav Sedov <td class="paramtype">hx509_name </td> 138ae771770SStanislav Sedov <td class="paramname"> <em>n2</em></td><td> </td> 139ae771770SStanislav Sedov </tr> 140ae771770SStanislav Sedov <tr> 141ae771770SStanislav Sedov <td></td> 142ae771770SStanislav Sedov <td>)</td> 143ae771770SStanislav Sedov <td></td><td></td><td></td> 144ae771770SStanislav Sedov </tr> 145ae771770SStanislav Sedov </table> 146ae771770SStanislav Sedov</div> 147ae771770SStanislav Sedov<div class="memdoc"> 148ae771770SStanislav Sedov 149ae771770SStanislav Sedov<p> 150ae771770SStanislav SedovCompare to hx509 name object, useful for sorting.<p> 151ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 152ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 153ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>n1</em> </td><td>a hx509 name object. </td></tr> 154ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>n2</em> </td><td>a hx509 name object.</td></tr> 155ae771770SStanislav Sedov </table> 156ae771770SStanislav Sedov</dl> 157ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 the objects are the same, returns > 0 is n2 is "larger" then n2, < 0 if n1 is "smaller" then n2. </dd></dl> 158ae771770SStanislav Sedov 159ae771770SStanislav Sedov</div> 160ae771770SStanislav Sedov</div><p> 161ae771770SStanislav Sedov<a class="anchor" name="gcf9b6bfcdd810bed71e98f7e04d918ca"></a><!-- doxytag: member="name.c::hx509_name_copy" ref="gcf9b6bfcdd810bed71e98f7e04d918ca" args="(hx509_context context, const hx509_name from, hx509_name *to)" --> 162ae771770SStanislav Sedov<div class="memitem"> 163ae771770SStanislav Sedov<div class="memproto"> 164ae771770SStanislav Sedov <table class="memname"> 165ae771770SStanislav Sedov <tr> 166ae771770SStanislav Sedov <td class="memname">int hx509_name_copy </td> 167ae771770SStanislav Sedov <td>(</td> 168ae771770SStanislav Sedov <td class="paramtype">hx509_context </td> 169ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 170ae771770SStanislav Sedov </tr> 171ae771770SStanislav Sedov <tr> 172ae771770SStanislav Sedov <td class="paramkey"></td> 173ae771770SStanislav Sedov <td></td> 174ae771770SStanislav Sedov <td class="paramtype">const hx509_name </td> 175ae771770SStanislav Sedov <td class="paramname"> <em>from</em>, </td> 176ae771770SStanislav Sedov </tr> 177ae771770SStanislav Sedov <tr> 178ae771770SStanislav Sedov <td class="paramkey"></td> 179ae771770SStanislav Sedov <td></td> 180ae771770SStanislav Sedov <td class="paramtype">hx509_name * </td> 181ae771770SStanislav Sedov <td class="paramname"> <em>to</em></td><td> </td> 182ae771770SStanislav Sedov </tr> 183ae771770SStanislav Sedov <tr> 184ae771770SStanislav Sedov <td></td> 185ae771770SStanislav Sedov <td>)</td> 186ae771770SStanislav Sedov <td></td><td></td><td></td> 187ae771770SStanislav Sedov </tr> 188ae771770SStanislav Sedov </table> 189ae771770SStanislav Sedov</div> 190ae771770SStanislav Sedov<div class="memdoc"> 191ae771770SStanislav Sedov 192ae771770SStanislav Sedov<p> 193ae771770SStanislav SedovCopy a hx509 name object.<p> 194ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 195ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 196ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A hx509 cotext. </td></tr> 197ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>from</em> </td><td>the name to copy from </td></tr> 198ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>to</em> </td><td>the name to copy to</td></tr> 199ae771770SStanislav Sedov </table> 200ae771770SStanislav Sedov</dl> 201ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl> 202ae771770SStanislav Sedov 203ae771770SStanislav Sedov</div> 204ae771770SStanislav Sedov</div><p> 205ae771770SStanislav Sedov<a class="anchor" name="g42015083c70b6aa29c4f082998dbbece"></a><!-- doxytag: member="name.c::hx509_name_expand" ref="g42015083c70b6aa29c4f082998dbbece" args="(hx509_context context, hx509_name name, hx509_env env)" --> 206ae771770SStanislav Sedov<div class="memitem"> 207ae771770SStanislav Sedov<div class="memproto"> 208ae771770SStanislav Sedov <table class="memname"> 209ae771770SStanislav Sedov <tr> 210ae771770SStanislav Sedov <td class="memname">int hx509_name_expand </td> 211ae771770SStanislav Sedov <td>(</td> 212ae771770SStanislav Sedov <td class="paramtype">hx509_context </td> 213ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 214ae771770SStanislav Sedov </tr> 215ae771770SStanislav Sedov <tr> 216ae771770SStanislav Sedov <td class="paramkey"></td> 217ae771770SStanislav Sedov <td></td> 218ae771770SStanislav Sedov <td class="paramtype">hx509_name </td> 219ae771770SStanislav Sedov <td class="paramname"> <em>name</em>, </td> 220ae771770SStanislav Sedov </tr> 221ae771770SStanislav Sedov <tr> 222ae771770SStanislav Sedov <td class="paramkey"></td> 223ae771770SStanislav Sedov <td></td> 224ae771770SStanislav Sedov <td class="paramtype">hx509_env </td> 225ae771770SStanislav Sedov <td class="paramname"> <em>env</em></td><td> </td> 226ae771770SStanislav Sedov </tr> 227ae771770SStanislav Sedov <tr> 228ae771770SStanislav Sedov <td></td> 229ae771770SStanislav Sedov <td>)</td> 230ae771770SStanislav Sedov <td></td><td></td><td></td> 231ae771770SStanislav Sedov </tr> 232ae771770SStanislav Sedov </table> 233ae771770SStanislav Sedov</div> 234ae771770SStanislav Sedov<div class="memdoc"> 235ae771770SStanislav Sedov 236ae771770SStanislav Sedov<p> 237ae771770SStanislav SedovExpands variables in the name using env. Variables are on the form ${name}. Useful when dealing with certificate templates.<p> 238ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 239ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 240ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A hx509 cotext. </td></tr> 241ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>the name to expand. </td></tr> 242ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>env</em> </td><td>environment variable to expand.</td></tr> 243ae771770SStanislav Sedov </table> 244ae771770SStanislav Sedov</dl> 245ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl> 246ae771770SStanislav Sedov 247ae771770SStanislav Sedov<p> 248ae771770SStanislav SedovOnly UTF8String rdnSequence names are allowed 249ae771770SStanislav Sedov</div> 250ae771770SStanislav Sedov</div><p> 251ae771770SStanislav Sedov<a class="anchor" name="gaf351931efb02fc7aea736af9977155e"></a><!-- doxytag: member="name.c::hx509_name_free" ref="gaf351931efb02fc7aea736af9977155e" args="(hx509_name *name)" --> 252ae771770SStanislav Sedov<div class="memitem"> 253ae771770SStanislav Sedov<div class="memproto"> 254ae771770SStanislav Sedov <table class="memname"> 255ae771770SStanislav Sedov <tr> 256ae771770SStanislav Sedov <td class="memname">void hx509_name_free </td> 257ae771770SStanislav Sedov <td>(</td> 258ae771770SStanislav Sedov <td class="paramtype">hx509_name * </td> 259ae771770SStanislav Sedov <td class="paramname"> <em>name</em> </td> 260ae771770SStanislav Sedov <td> ) </td> 261ae771770SStanislav Sedov <td></td> 262ae771770SStanislav Sedov </tr> 263ae771770SStanislav Sedov </table> 264ae771770SStanislav Sedov</div> 265ae771770SStanislav Sedov<div class="memdoc"> 266ae771770SStanislav Sedov 267ae771770SStanislav Sedov<p> 268ae771770SStanislav SedovFree a hx509 name object, upond return *name will be NULL.<p> 269ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 270ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 271ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>a hx509 name object to be freed. </td></tr> 272ae771770SStanislav Sedov </table> 273ae771770SStanislav Sedov</dl> 274ae771770SStanislav Sedov 275ae771770SStanislav Sedov</div> 276ae771770SStanislav Sedov</div><p> 277ae771770SStanislav Sedov<a class="anchor" name="g4f6715dcabbbcb5d48512e504eae8352"></a><!-- doxytag: member="name.c::hx509_name_is_null_p" ref="g4f6715dcabbbcb5d48512e504eae8352" args="(const hx509_name name)" --> 278ae771770SStanislav Sedov<div class="memitem"> 279ae771770SStanislav Sedov<div class="memproto"> 280ae771770SStanislav Sedov <table class="memname"> 281ae771770SStanislav Sedov <tr> 282ae771770SStanislav Sedov <td class="memname">int hx509_name_is_null_p </td> 283ae771770SStanislav Sedov <td>(</td> 284ae771770SStanislav Sedov <td class="paramtype">const hx509_name </td> 285ae771770SStanislav Sedov <td class="paramname"> <em>name</em> </td> 286ae771770SStanislav Sedov <td> ) </td> 287ae771770SStanislav Sedov <td></td> 288ae771770SStanislav Sedov </tr> 289ae771770SStanislav Sedov </table> 290ae771770SStanislav Sedov</div> 291ae771770SStanislav Sedov<div class="memdoc"> 292ae771770SStanislav Sedov 293ae771770SStanislav Sedov<p> 294ae771770SStanislav SedovUnparse the hx509 name in name into a string.<p> 295ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 296ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 297ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>the name to check if its empty/null.</td></tr> 298ae771770SStanislav Sedov </table> 299ae771770SStanislav Sedov</dl> 300ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>non zero if the name is empty/null. </dd></dl> 301ae771770SStanislav Sedov 302ae771770SStanislav Sedov</div> 303ae771770SStanislav Sedov</div><p> 304ae771770SStanislav Sedov<a class="anchor" name="g6e65dc67aa48bb87e4fb98ecfe512fbd"></a><!-- doxytag: member="name.c::hx509_name_to_Name" ref="g6e65dc67aa48bb87e4fb98ecfe512fbd" args="(const hx509_name from, Name *to)" --> 305ae771770SStanislav Sedov<div class="memitem"> 306ae771770SStanislav Sedov<div class="memproto"> 307ae771770SStanislav Sedov <table class="memname"> 308ae771770SStanislav Sedov <tr> 309ae771770SStanislav Sedov <td class="memname">int hx509_name_to_Name </td> 310ae771770SStanislav Sedov <td>(</td> 311ae771770SStanislav Sedov <td class="paramtype">const hx509_name </td> 312ae771770SStanislav Sedov <td class="paramname"> <em>from</em>, </td> 313ae771770SStanislav Sedov </tr> 314ae771770SStanislav Sedov <tr> 315ae771770SStanislav Sedov <td class="paramkey"></td> 316ae771770SStanislav Sedov <td></td> 317ae771770SStanislav Sedov <td class="paramtype">Name * </td> 318ae771770SStanislav Sedov <td class="paramname"> <em>to</em></td><td> </td> 319ae771770SStanislav Sedov </tr> 320ae771770SStanislav Sedov <tr> 321ae771770SStanislav Sedov <td></td> 322ae771770SStanislav Sedov <td>)</td> 323ae771770SStanislav Sedov <td></td><td></td><td></td> 324ae771770SStanislav Sedov </tr> 325ae771770SStanislav Sedov </table> 326ae771770SStanislav Sedov</div> 327ae771770SStanislav Sedov<div class="memdoc"> 328ae771770SStanislav Sedov 329ae771770SStanislav Sedov<p> 330ae771770SStanislav SedovConvert a hx509_name into a Name.<p> 331ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 332ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 333ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>from</em> </td><td>the name to copy from </td></tr> 334ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>to</em> </td><td>the name to copy to</td></tr> 335ae771770SStanislav Sedov </table> 336ae771770SStanislav Sedov</dl> 337ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl> 338ae771770SStanislav Sedov 339ae771770SStanislav Sedov</div> 340ae771770SStanislav Sedov</div><p> 341ae771770SStanislav Sedov<a class="anchor" name="g1bd74b34e0aa88b083678ba231d38718"></a><!-- doxytag: member="name.c::hx509_name_to_string" ref="g1bd74b34e0aa88b083678ba231d38718" args="(const hx509_name name, char **str)" --> 342ae771770SStanislav Sedov<div class="memitem"> 343ae771770SStanislav Sedov<div class="memproto"> 344ae771770SStanislav Sedov <table class="memname"> 345ae771770SStanislav Sedov <tr> 346ae771770SStanislav Sedov <td class="memname">int hx509_name_to_string </td> 347ae771770SStanislav Sedov <td>(</td> 348ae771770SStanislav Sedov <td class="paramtype">const hx509_name </td> 349ae771770SStanislav Sedov <td class="paramname"> <em>name</em>, </td> 350ae771770SStanislav Sedov </tr> 351ae771770SStanislav Sedov <tr> 352ae771770SStanislav Sedov <td class="paramkey"></td> 353ae771770SStanislav Sedov <td></td> 354ae771770SStanislav Sedov <td class="paramtype">char ** </td> 355ae771770SStanislav Sedov <td class="paramname"> <em>str</em></td><td> </td> 356ae771770SStanislav Sedov </tr> 357ae771770SStanislav Sedov <tr> 358ae771770SStanislav Sedov <td></td> 359ae771770SStanislav Sedov <td>)</td> 360ae771770SStanislav Sedov <td></td><td></td><td></td> 361ae771770SStanislav Sedov </tr> 362ae771770SStanislav Sedov </table> 363ae771770SStanislav Sedov</div> 364ae771770SStanislav Sedov<div class="memdoc"> 365ae771770SStanislav Sedov 366ae771770SStanislav Sedov<p> 367ae771770SStanislav SedovConvert the hx509 name object into a printable string. The resulting string should be freed with free().<p> 368ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 369ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 370ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>name to print </td></tr> 371ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>str</em> </td><td>the string to return</td></tr> 372ae771770SStanislav Sedov </table> 373ae771770SStanislav Sedov</dl> 374ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl> 375ae771770SStanislav Sedov 376ae771770SStanislav Sedov</div> 377ae771770SStanislav Sedov</div><p> 378ae771770SStanislav Sedov<a class="anchor" name="g0565f607a4e57d0911ee7081ad9548c5"></a><!-- doxytag: member="name.c::hx509_parse_name" ref="g0565f607a4e57d0911ee7081ad9548c5" args="(hx509_context context, const char *str, hx509_name *name)" --> 379ae771770SStanislav Sedov<div class="memitem"> 380ae771770SStanislav Sedov<div class="memproto"> 381ae771770SStanislav Sedov <table class="memname"> 382ae771770SStanislav Sedov <tr> 383ae771770SStanislav Sedov <td class="memname">int hx509_parse_name </td> 384ae771770SStanislav Sedov <td>(</td> 385ae771770SStanislav Sedov <td class="paramtype">hx509_context </td> 386ae771770SStanislav Sedov <td class="paramname"> <em>context</em>, </td> 387ae771770SStanislav Sedov </tr> 388ae771770SStanislav Sedov <tr> 389ae771770SStanislav Sedov <td class="paramkey"></td> 390ae771770SStanislav Sedov <td></td> 391ae771770SStanislav Sedov <td class="paramtype">const char * </td> 392ae771770SStanislav Sedov <td class="paramname"> <em>str</em>, </td> 393ae771770SStanislav Sedov </tr> 394ae771770SStanislav Sedov <tr> 395ae771770SStanislav Sedov <td class="paramkey"></td> 396ae771770SStanislav Sedov <td></td> 397ae771770SStanislav Sedov <td class="paramtype">hx509_name * </td> 398ae771770SStanislav Sedov <td class="paramname"> <em>name</em></td><td> </td> 399ae771770SStanislav Sedov </tr> 400ae771770SStanislav Sedov <tr> 401ae771770SStanislav Sedov <td></td> 402ae771770SStanislav Sedov <td>)</td> 403ae771770SStanislav Sedov <td></td><td></td><td></td> 404ae771770SStanislav Sedov </tr> 405ae771770SStanislav Sedov </table> 406ae771770SStanislav Sedov</div> 407ae771770SStanislav Sedov<div class="memdoc"> 408ae771770SStanislav Sedov 409ae771770SStanislav Sedov<p> 410ae771770SStanislav SedovParse a string into a hx509 name object.<p> 411ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 412ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 413ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A hx509 context. </td></tr> 414ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>str</em> </td><td>a string to parse. </td></tr> 415ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>name</em> </td><td>the resulting object, NULL in case of error.</td></tr> 416ae771770SStanislav Sedov </table> 417ae771770SStanislav Sedov</dl> 418ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl> 419ae771770SStanislav Sedov 420ae771770SStanislav Sedov</div> 421ae771770SStanislav Sedov</div><p> 422ae771770SStanislav Sedov<a class="anchor" name="gf8f73e0a75da2189b1815d8c968750df"></a><!-- doxytag: member="name.c::hx509_unparse_der_name" ref="gf8f73e0a75da2189b1815d8c968750df" args="(const void *data, size_t length, char **str)" --> 423ae771770SStanislav Sedov<div class="memitem"> 424ae771770SStanislav Sedov<div class="memproto"> 425ae771770SStanislav Sedov <table class="memname"> 426ae771770SStanislav Sedov <tr> 427ae771770SStanislav Sedov <td class="memname">int hx509_unparse_der_name </td> 428ae771770SStanislav Sedov <td>(</td> 429ae771770SStanislav Sedov <td class="paramtype">const void * </td> 430ae771770SStanislav Sedov <td class="paramname"> <em>data</em>, </td> 431ae771770SStanislav Sedov </tr> 432ae771770SStanislav Sedov <tr> 433ae771770SStanislav Sedov <td class="paramkey"></td> 434ae771770SStanislav Sedov <td></td> 435ae771770SStanislav Sedov <td class="paramtype">size_t </td> 436ae771770SStanislav Sedov <td class="paramname"> <em>length</em>, </td> 437ae771770SStanislav Sedov </tr> 438ae771770SStanislav Sedov <tr> 439ae771770SStanislav Sedov <td class="paramkey"></td> 440ae771770SStanislav Sedov <td></td> 441ae771770SStanislav Sedov <td class="paramtype">char ** </td> 442ae771770SStanislav Sedov <td class="paramname"> <em>str</em></td><td> </td> 443ae771770SStanislav Sedov </tr> 444ae771770SStanislav Sedov <tr> 445ae771770SStanislav Sedov <td></td> 446ae771770SStanislav Sedov <td>)</td> 447ae771770SStanislav Sedov <td></td><td></td><td></td> 448ae771770SStanislav Sedov </tr> 449ae771770SStanislav Sedov </table> 450ae771770SStanislav Sedov</div> 451ae771770SStanislav Sedov<div class="memdoc"> 452ae771770SStanislav Sedov 453ae771770SStanislav Sedov<p> 454ae771770SStanislav SedovConvert a DER encoded name info a string.<p> 455ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 456ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 457ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>data</em> </td><td>data to a DER/BER encoded name </td></tr> 458ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>length</em> </td><td>length of data </td></tr> 459ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>str</em> </td><td>the resulting string, is NULL on failure.</td></tr> 460ae771770SStanislav Sedov </table> 461ae771770SStanislav Sedov</dl> 462ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>An hx509 error code, see <a class="el" href="group__hx509__error.html#g15791abff76719acb531223fdcbcac87">hx509_get_error_string()</a>. </dd></dl> 463ae771770SStanislav Sedov 464ae771770SStanislav Sedov</div> 465ae771770SStanislav Sedov</div><p> 466ae771770SStanislav Sedov</div> 467ae771770SStanislav Sedov<hr size="1"><address style="text-align: right;"><small> 468*cf771f22SStanislav SedovGenerated on Wed Jan 11 14:07:40 2012 for Heimdalx509library 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> 469ae771770SStanislav Sedov</body> 470ae771770SStanislav Sedov</html> 471