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 Sat Jul 30 13:45:38 2011 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>