1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3 <title>Heimdalx509library: hx509 printing functions</title>
4 <link href="doxygen.css" rel="stylesheet" type="text/css">
5 <link href="tabs.css" rel="stylesheet" type="text/css">
8 <a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a>
10 <!-- end of header marker -->
11 <!-- Generated by Doxygen 1.5.6 -->
12 <div class="navigation" id="top">
15 <li><a href="index.html"><span>Main Page</span></a></li>
16 <li><a href="pages.html"><span>Related Pages</span></a></li>
17 <li><a href="modules.html"><span>Modules</span></a></li>
21 <div class="contents">
22 <h1>hx509 printing functions</h1><table border="0" cellpadding="0" cellspacing="0">
24 <tr><td colspan="2"><br><h2>Functions</h2></td></tr>
25 <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#ge27c328d203e88c87cf81b6eb1d1fe66">hx509_print_stdout</a> (void *ctx, const char *fmt, va_list va)</td></tr>
27 <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#gc116d19332498d183eb055452d682d81">hx509_oid_sprint</a> (const heim_oid *oid, char **str)</td></tr>
29 <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#g984e34629525e8c301b237c158c34d23">hx509_oid_print</a> (const heim_oid *oid, hx509_vprint_func func, void *ctx)</td></tr>
31 <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#g274370b840dec6de699577e3d203e6b2">hx509_bitstring_print</a> (const heim_bit_string *b, hx509_vprint_func func, void *ctx)</td></tr>
33 <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#gafcf2f11a60a1f9b6ccabaacef0e697f">hx509_cert_keyusage_print</a> (hx509_context context, hx509_cert c, char **s)</td></tr>
35 <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#g582e93c29a1becbe5c2ac1ac758e09f4">hx509_validate_ctx_init</a> (hx509_context context, hx509_validate_ctx *ctx)</td></tr>
37 <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#g2fab228a24716340f368fa729b5722b1">hx509_validate_ctx_set_print</a> (hx509_validate_ctx ctx, hx509_vprint_func func, void *c)</td></tr>
39 <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#gdfc4c934e63c8c7b10661520de70411e">hx509_validate_ctx_add_flags</a> (hx509_validate_ctx ctx, int flags)</td></tr>
41 <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#g72409ecab29eec94cc0215ed21ecca8e">hx509_validate_ctx_free</a> (hx509_validate_ctx ctx)</td></tr>
43 <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hx509__print.html#g5e3ded9ba5c466a2c6f80b9d233b69c3">hx509_validate_cert</a> (hx509_context context, hx509_validate_ctx ctx, hx509_cert cert)</td></tr>
46 <hr><a name="_details"></a><h2>Detailed Description</h2>
47 <hr><h2>Function Documentation</h2>
48 <a class="anchor" name="g274370b840dec6de699577e3d203e6b2"></a><!-- doxytag: member="print.c::hx509_bitstring_print" ref="g274370b840dec6de699577e3d203e6b2" args="(const heim_bit_string *b, hx509_vprint_func func, void *ctx)" -->
50 <div class="memproto">
51 <table class="memname">
53 <td class="memname">void hx509_bitstring_print </td>
55 <td class="paramtype">const heim_bit_string * </td>
56 <td class="paramname"> <em>b</em>, </td>
59 <td class="paramkey"></td>
61 <td class="paramtype">hx509_vprint_func </td>
62 <td class="paramname"> <em>func</em>, </td>
65 <td class="paramkey"></td>
67 <td class="paramtype">void * </td>
68 <td class="paramname"> <em>ctx</em></td><td> </td>
73 <td></td><td></td><td></td>
80 Print a bitstring using a hx509_vprint_func function. To print to stdout use <a class="el" href="group__hx509__print.html#ge27c328d203e88c87cf81b6eb1d1fe66">hx509_print_stdout()</a>.<p>
81 <dl compact><dt><b>Parameters:</b></dt><dd>
82 <table border="0" cellspacing="2" cellpadding="0">
83 <tr><td valign="top"></td><td valign="top"><em>b</em> </td><td>bit string to print. </td></tr>
84 <tr><td valign="top"></td><td valign="top"><em>func</em> </td><td>hx509_vprint_func to print with. </td></tr>
85 <tr><td valign="top"></td><td valign="top"><em>ctx</em> </td><td>context variable to hx509_vprint_func function. </td></tr>
91 <a class="anchor" name="gafcf2f11a60a1f9b6ccabaacef0e697f"></a><!-- doxytag: member="print.c::hx509_cert_keyusage_print" ref="gafcf2f11a60a1f9b6ccabaacef0e697f" args="(hx509_context context, hx509_cert c, char **s)" -->
93 <div class="memproto">
94 <table class="memname">
96 <td class="memname">int hx509_cert_keyusage_print </td>
98 <td class="paramtype">hx509_context </td>
99 <td class="paramname"> <em>context</em>, </td>
102 <td class="paramkey"></td>
104 <td class="paramtype">hx509_cert </td>
105 <td class="paramname"> <em>c</em>, </td>
108 <td class="paramkey"></td>
110 <td class="paramtype">char ** </td>
111 <td class="paramname"> <em>s</em></td><td> </td>
116 <td></td><td></td><td></td>
123 Print certificate usage for a certificate to a string.<p>
124 <dl compact><dt><b>Parameters:</b></dt><dd>
125 <table border="0" cellspacing="2" cellpadding="0">
126 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A hx509 context. </td></tr>
127 <tr><td valign="top"></td><td valign="top"><em>c</em> </td><td>a certificate print the keyusage for. </td></tr>
128 <tr><td valign="top"></td><td valign="top"><em>s</em> </td><td>the return string with the keysage printed in to, free with <a class="el" href="group__hx509__misc.html#gba6d3eb6abde539a3191269f785e3e61">hx509_xfree()</a>.</td></tr>
131 <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>
135 <a class="anchor" name="g984e34629525e8c301b237c158c34d23"></a><!-- doxytag: member="print.c::hx509_oid_print" ref="g984e34629525e8c301b237c158c34d23" args="(const heim_oid *oid, hx509_vprint_func func, void *ctx)" -->
136 <div class="memitem">
137 <div class="memproto">
138 <table class="memname">
140 <td class="memname">void hx509_oid_print </td>
142 <td class="paramtype">const heim_oid * </td>
143 <td class="paramname"> <em>oid</em>, </td>
146 <td class="paramkey"></td>
148 <td class="paramtype">hx509_vprint_func </td>
149 <td class="paramname"> <em>func</em>, </td>
152 <td class="paramkey"></td>
154 <td class="paramtype">void * </td>
155 <td class="paramname"> <em>ctx</em></td><td> </td>
160 <td></td><td></td><td></td>
167 Print a oid using a hx509_vprint_func function. To print to stdout use <a class="el" href="group__hx509__print.html#ge27c328d203e88c87cf81b6eb1d1fe66">hx509_print_stdout()</a>.<p>
168 <dl compact><dt><b>Parameters:</b></dt><dd>
169 <table border="0" cellspacing="2" cellpadding="0">
170 <tr><td valign="top"></td><td valign="top"><em>oid</em> </td><td>oid to print </td></tr>
171 <tr><td valign="top"></td><td valign="top"><em>func</em> </td><td>hx509_vprint_func to print with. </td></tr>
172 <tr><td valign="top"></td><td valign="top"><em>ctx</em> </td><td>context variable to hx509_vprint_func function. </td></tr>
178 <a class="anchor" name="gc116d19332498d183eb055452d682d81"></a><!-- doxytag: member="print.c::hx509_oid_sprint" ref="gc116d19332498d183eb055452d682d81" args="(const heim_oid *oid, char **str)" -->
179 <div class="memitem">
180 <div class="memproto">
181 <table class="memname">
183 <td class="memname">int hx509_oid_sprint </td>
185 <td class="paramtype">const heim_oid * </td>
186 <td class="paramname"> <em>oid</em>, </td>
189 <td class="paramkey"></td>
191 <td class="paramtype">char ** </td>
192 <td class="paramname"> <em>str</em></td><td> </td>
197 <td></td><td></td><td></td>
204 Print a oid to a string.<p>
205 <dl compact><dt><b>Parameters:</b></dt><dd>
206 <table border="0" cellspacing="2" cellpadding="0">
207 <tr><td valign="top"></td><td valign="top"><em>oid</em> </td><td>oid to print </td></tr>
208 <tr><td valign="top"></td><td valign="top"><em>str</em> </td><td>allocated string, free with <a class="el" href="group__hx509__misc.html#gba6d3eb6abde539a3191269f785e3e61">hx509_xfree()</a>.</td></tr>
211 <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>
215 <a class="anchor" name="ge27c328d203e88c87cf81b6eb1d1fe66"></a><!-- doxytag: member="print.c::hx509_print_stdout" ref="ge27c328d203e88c87cf81b6eb1d1fe66" args="(void *ctx, const char *fmt, va_list va)" -->
216 <div class="memitem">
217 <div class="memproto">
218 <table class="memname">
220 <td class="memname">void hx509_print_stdout </td>
222 <td class="paramtype">void * </td>
223 <td class="paramname"> <em>ctx</em>, </td>
226 <td class="paramkey"></td>
228 <td class="paramtype">const char * </td>
229 <td class="paramname"> <em>fmt</em>, </td>
232 <td class="paramkey"></td>
234 <td class="paramtype">va_list </td>
235 <td class="paramname"> <em>va</em></td><td> </td>
240 <td></td><td></td><td></td>
247 Helper function to print on stdout for:<ul>
248 <li><a class="el" href="group__hx509__print.html#g984e34629525e8c301b237c158c34d23">hx509_oid_print()</a>,</li><li><a class="el" href="group__hx509__print.html#g274370b840dec6de699577e3d203e6b2">hx509_bitstring_print()</a>,</li><li><a class="el" href="group__hx509__print.html#g2fab228a24716340f368fa729b5722b1">hx509_validate_ctx_set_print()</a>.</li></ul>
250 <dl compact><dt><b>Parameters:</b></dt><dd>
251 <table border="0" cellspacing="2" cellpadding="0">
252 <tr><td valign="top"></td><td valign="top"><em>ctx</em> </td><td>the context to the print function. If the ctx is NULL, stdout is used. </td></tr>
253 <tr><td valign="top"></td><td valign="top"><em>fmt</em> </td><td>the printing format. </td></tr>
254 <tr><td valign="top"></td><td valign="top"><em>va</em> </td><td>the argumet list. </td></tr>
260 <a class="anchor" name="g5e3ded9ba5c466a2c6f80b9d233b69c3"></a><!-- doxytag: member="print.c::hx509_validate_cert" ref="g5e3ded9ba5c466a2c6f80b9d233b69c3" args="(hx509_context context, hx509_validate_ctx ctx, hx509_cert cert)" -->
261 <div class="memitem">
262 <div class="memproto">
263 <table class="memname">
265 <td class="memname">int hx509_validate_cert </td>
267 <td class="paramtype">hx509_context </td>
268 <td class="paramname"> <em>context</em>, </td>
271 <td class="paramkey"></td>
273 <td class="paramtype">hx509_validate_ctx </td>
274 <td class="paramname"> <em>ctx</em>, </td>
277 <td class="paramkey"></td>
279 <td class="paramtype">hx509_cert </td>
280 <td class="paramname"> <em>cert</em></td><td> </td>
285 <td></td><td></td><td></td>
292 Validate/Print the status of the certificate.<p>
293 <dl compact><dt><b>Parameters:</b></dt><dd>
294 <table border="0" cellspacing="2" cellpadding="0">
295 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A hx509 context. </td></tr>
296 <tr><td valign="top"></td><td valign="top"><em>ctx</em> </td><td>A hx509 validation context. </td></tr>
297 <tr><td valign="top"></td><td valign="top"><em>cert</em> </td><td>the cerificate to validate/print.</td></tr>
300 <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>
304 <a class="anchor" name="gdfc4c934e63c8c7b10661520de70411e"></a><!-- doxytag: member="print.c::hx509_validate_ctx_add_flags" ref="gdfc4c934e63c8c7b10661520de70411e" args="(hx509_validate_ctx ctx, int flags)" -->
305 <div class="memitem">
306 <div class="memproto">
307 <table class="memname">
309 <td class="memname">void hx509_validate_ctx_add_flags </td>
311 <td class="paramtype">hx509_validate_ctx </td>
312 <td class="paramname"> <em>ctx</em>, </td>
315 <td class="paramkey"></td>
317 <td class="paramtype">int </td>
318 <td class="paramname"> <em>flags</em></td><td> </td>
323 <td></td><td></td><td></td>
330 Add flags to control the behaivor of the <a class="el" href="group__hx509__print.html#g5e3ded9ba5c466a2c6f80b9d233b69c3">hx509_validate_cert()</a> function.<p>
331 <dl compact><dt><b>Parameters:</b></dt><dd>
332 <table border="0" cellspacing="2" cellpadding="0">
333 <tr><td valign="top"></td><td valign="top"><em>ctx</em> </td><td>A hx509 validation context. </td></tr>
334 <tr><td valign="top"></td><td valign="top"><em>flags</em> </td><td>flags to add to the validation context.</td></tr>
337 <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>
341 <a class="anchor" name="g72409ecab29eec94cc0215ed21ecca8e"></a><!-- doxytag: member="print.c::hx509_validate_ctx_free" ref="g72409ecab29eec94cc0215ed21ecca8e" args="(hx509_validate_ctx ctx)" -->
342 <div class="memitem">
343 <div class="memproto">
344 <table class="memname">
346 <td class="memname">void hx509_validate_ctx_free </td>
348 <td class="paramtype">hx509_validate_ctx </td>
349 <td class="paramname"> <em>ctx</em> </td>
350 <td> ) </td>
358 Free an hx509 validate context.<p>
359 <dl compact><dt><b>Parameters:</b></dt><dd>
360 <table border="0" cellspacing="2" cellpadding="0">
361 <tr><td valign="top"></td><td valign="top"><em>ctx</em> </td><td>the hx509 validate context to free. </td></tr>
367 <a class="anchor" name="g582e93c29a1becbe5c2ac1ac758e09f4"></a><!-- doxytag: member="print.c::hx509_validate_ctx_init" ref="g582e93c29a1becbe5c2ac1ac758e09f4" args="(hx509_context context, hx509_validate_ctx *ctx)" -->
368 <div class="memitem">
369 <div class="memproto">
370 <table class="memname">
372 <td class="memname">int hx509_validate_ctx_init </td>
374 <td class="paramtype">hx509_context </td>
375 <td class="paramname"> <em>context</em>, </td>
378 <td class="paramkey"></td>
380 <td class="paramtype">hx509_validate_ctx * </td>
381 <td class="paramname"> <em>ctx</em></td><td> </td>
386 <td></td><td></td><td></td>
393 Allocate a hx509 validation/printing context.<p>
394 <dl compact><dt><b>Parameters:</b></dt><dd>
395 <table border="0" cellspacing="2" cellpadding="0">
396 <tr><td valign="top"></td><td valign="top"><em>context</em> </td><td>A hx509 context. </td></tr>
397 <tr><td valign="top"></td><td valign="top"><em>ctx</em> </td><td>a new allocated hx509 validation context, free with <a class="el" href="group__hx509__print.html#g72409ecab29eec94cc0215ed21ecca8e">hx509_validate_ctx_free()</a>.</td></tr>
400 <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>
404 <a class="anchor" name="g2fab228a24716340f368fa729b5722b1"></a><!-- doxytag: member="print.c::hx509_validate_ctx_set_print" ref="g2fab228a24716340f368fa729b5722b1" args="(hx509_validate_ctx ctx, hx509_vprint_func func, void *c)" -->
405 <div class="memitem">
406 <div class="memproto">
407 <table class="memname">
409 <td class="memname">void hx509_validate_ctx_set_print </td>
411 <td class="paramtype">hx509_validate_ctx </td>
412 <td class="paramname"> <em>ctx</em>, </td>
415 <td class="paramkey"></td>
417 <td class="paramtype">hx509_vprint_func </td>
418 <td class="paramname"> <em>func</em>, </td>
421 <td class="paramkey"></td>
423 <td class="paramtype">void * </td>
424 <td class="paramname"> <em>c</em></td><td> </td>
429 <td></td><td></td><td></td>
436 Set the printing functions for the validation context.<p>
437 <dl compact><dt><b>Parameters:</b></dt><dd>
438 <table border="0" cellspacing="2" cellpadding="0">
439 <tr><td valign="top"></td><td valign="top"><em>ctx</em> </td><td>a hx509 valication context. </td></tr>
440 <tr><td valign="top"></td><td valign="top"><em>func</em> </td><td>the printing function to usea. </td></tr>
441 <tr><td valign="top"></td><td valign="top"><em>c</em> </td><td>the context variable to the printing function.</td></tr>
444 <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>
449 <hr size="1"><address style="text-align: right;"><small>
450 Generated on Wed Jan 11 14:07:41 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>