1
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
4
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5
<title>libtasn1</title>
6
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
7
<link rel="home" href="index.html" title="GNU TLS API Reference Manual">
8
<link rel="up" href="ch01.html" title="GNU TLS API Reference Manual">
9
<link rel="prev" href="gnutls-openssl.html" title="openssl">
10
<link rel="next" href="ix01.html" title="Index">
11
<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
12
<link rel="stylesheet" href="style.css" type="text/css">
14
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
17
<td><a accesskey="p" href="gnutls-openssl.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18
<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20
<th width="100%" align="center">GNU TLS API Reference Manual</th>
21
<td><a accesskey="n" href="ix01.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
23
<tr><td colspan="5" class="shortcuts">
24
<a href="#gnutls-libtasn1.synopsis" class="shortcut">Top</a>
26
<a href="#gnutls-libtasn1.description" class="shortcut">Description</a>
29
<div class="refentry" title="libtasn1">
30
<a name="gnutls-libtasn1"></a><div class="titlepage"></div>
31
<div class="refnamediv"><table width="100%"><tr>
33
<h2><span class="refentrytitle"><a name="gnutls-libtasn1.top_of_page"></a>libtasn1</span></h2>
36
<td valign="top" align="right"></td>
38
<div class="refsynopsisdiv" title="Synopsis">
39
<a name="gnutls-libtasn1.synopsis"></a><h2>Synopsis</h2>
40
<pre class="synopsis">#define <a class="link" href="gnutls-libtasn1.html#ASN1-API:CAPS" title="ASN1_API">ASN1_API</a>
41
#define <a class="link" href="gnutls-libtasn1.html#ASN1-VERSION:CAPS" title="ASN1_VERSION">ASN1_VERSION</a>
42
typedef <a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode">asn1_retCode</a>;
43
#define <a class="link" href="gnutls-libtasn1.html#ASN1-SUCCESS:CAPS" title="ASN1_SUCCESS">ASN1_SUCCESS</a>
44
#define <a class="link" href="gnutls-libtasn1.html#ASN1-FILE-NOT-FOUND:CAPS" title="ASN1_FILE_NOT_FOUND">ASN1_FILE_NOT_FOUND</a>
45
#define <a class="link" href="gnutls-libtasn1.html#ASN1-ELEMENT-NOT-FOUND:CAPS" title="ASN1_ELEMENT_NOT_FOUND">ASN1_ELEMENT_NOT_FOUND</a>
46
#define <a class="link" href="gnutls-libtasn1.html#ASN1-IDENTIFIER-NOT-FOUND:CAPS" title="ASN1_IDENTIFIER_NOT_FOUND">ASN1_IDENTIFIER_NOT_FOUND</a>
47
#define <a class="link" href="gnutls-libtasn1.html#ASN1-DER-ERROR:CAPS" title="ASN1_DER_ERROR">ASN1_DER_ERROR</a>
48
#define <a class="link" href="gnutls-libtasn1.html#ASN1-VALUE-NOT-FOUND:CAPS" title="ASN1_VALUE_NOT_FOUND">ASN1_VALUE_NOT_FOUND</a>
49
#define <a class="link" href="gnutls-libtasn1.html#ASN1-GENERIC-ERROR:CAPS" title="ASN1_GENERIC_ERROR">ASN1_GENERIC_ERROR</a>
50
#define <a class="link" href="gnutls-libtasn1.html#ASN1-VALUE-NOT-VALID:CAPS" title="ASN1_VALUE_NOT_VALID">ASN1_VALUE_NOT_VALID</a>
51
#define <a class="link" href="gnutls-libtasn1.html#ASN1-TAG-ERROR:CAPS" title="ASN1_TAG_ERROR">ASN1_TAG_ERROR</a>
52
#define <a class="link" href="gnutls-libtasn1.html#ASN1-TAG-IMPLICIT:CAPS" title="ASN1_TAG_IMPLICIT">ASN1_TAG_IMPLICIT</a>
53
#define <a class="link" href="gnutls-libtasn1.html#ASN1-ERROR-TYPE-ANY:CAPS" title="ASN1_ERROR_TYPE_ANY">ASN1_ERROR_TYPE_ANY</a>
54
#define <a class="link" href="gnutls-libtasn1.html#ASN1-SYNTAX-ERROR:CAPS" title="ASN1_SYNTAX_ERROR">ASN1_SYNTAX_ERROR</a>
55
#define <a class="link" href="gnutls-libtasn1.html#ASN1-MEM-ERROR:CAPS" title="ASN1_MEM_ERROR">ASN1_MEM_ERROR</a>
56
#define <a class="link" href="gnutls-libtasn1.html#ASN1-MEM-ALLOC-ERROR:CAPS" title="ASN1_MEM_ALLOC_ERROR">ASN1_MEM_ALLOC_ERROR</a>
57
#define <a class="link" href="gnutls-libtasn1.html#ASN1-DER-OVERFLOW:CAPS" title="ASN1_DER_OVERFLOW">ASN1_DER_OVERFLOW</a>
58
#define <a class="link" href="gnutls-libtasn1.html#ASN1-NAME-TOO-LONG:CAPS" title="ASN1_NAME_TOO_LONG">ASN1_NAME_TOO_LONG</a>
59
#define <a class="link" href="gnutls-libtasn1.html#ASN1-ARRAY-ERROR:CAPS" title="ASN1_ARRAY_ERROR">ASN1_ARRAY_ERROR</a>
60
#define <a class="link" href="gnutls-libtasn1.html#ASN1-ELEMENT-NOT-EMPTY:CAPS" title="ASN1_ELEMENT_NOT_EMPTY">ASN1_ELEMENT_NOT_EMPTY</a>
61
#define <a class="link" href="gnutls-libtasn1.html#ASN1-PRINT-NAME:CAPS" title="ASN1_PRINT_NAME">ASN1_PRINT_NAME</a>
62
#define <a class="link" href="gnutls-libtasn1.html#ASN1-PRINT-NAME-TYPE:CAPS" title="ASN1_PRINT_NAME_TYPE">ASN1_PRINT_NAME_TYPE</a>
63
#define <a class="link" href="gnutls-libtasn1.html#ASN1-PRINT-NAME-TYPE-VALUE:CAPS" title="ASN1_PRINT_NAME_TYPE_VALUE">ASN1_PRINT_NAME_TYPE_VALUE</a>
64
#define <a class="link" href="gnutls-libtasn1.html#ASN1-PRINT-ALL:CAPS" title="ASN1_PRINT_ALL">ASN1_PRINT_ALL</a>
65
#define <a class="link" href="gnutls-libtasn1.html#ASN1-CLASS-UNIVERSAL:CAPS" title="ASN1_CLASS_UNIVERSAL">ASN1_CLASS_UNIVERSAL</a>
66
#define <a class="link" href="gnutls-libtasn1.html#ASN1-CLASS-APPLICATION:CAPS" title="ASN1_CLASS_APPLICATION">ASN1_CLASS_APPLICATION</a>
67
#define <a class="link" href="gnutls-libtasn1.html#ASN1-CLASS-CONTEXT-SPECIFIC:CAPS" title="ASN1_CLASS_CONTEXT_SPECIFIC">ASN1_CLASS_CONTEXT_SPECIFIC</a>
68
#define <a class="link" href="gnutls-libtasn1.html#ASN1-CLASS-PRIVATE:CAPS" title="ASN1_CLASS_PRIVATE">ASN1_CLASS_PRIVATE</a>
69
#define <a class="link" href="gnutls-libtasn1.html#ASN1-CLASS-STRUCTURED:CAPS" title="ASN1_CLASS_STRUCTURED">ASN1_CLASS_STRUCTURED</a>
70
#define <a class="link" href="gnutls-libtasn1.html#ASN1-TAG-BOOLEAN:CAPS" title="ASN1_TAG_BOOLEAN">ASN1_TAG_BOOLEAN</a>
71
#define <a class="link" href="gnutls-libtasn1.html#ASN1-TAG-INTEGER:CAPS" title="ASN1_TAG_INTEGER">ASN1_TAG_INTEGER</a>
72
#define <a class="link" href="gnutls-libtasn1.html#ASN1-TAG-SEQUENCE:CAPS" title="ASN1_TAG_SEQUENCE">ASN1_TAG_SEQUENCE</a>
73
#define <a class="link" href="gnutls-libtasn1.html#ASN1-TAG-SET:CAPS" title="ASN1_TAG_SET">ASN1_TAG_SET</a>
74
#define <a class="link" href="gnutls-libtasn1.html#ASN1-TAG-OCTET-STRING:CAPS" title="ASN1_TAG_OCTET_STRING">ASN1_TAG_OCTET_STRING</a>
75
#define <a class="link" href="gnutls-libtasn1.html#ASN1-TAG-BIT-STRING:CAPS" title="ASN1_TAG_BIT_STRING">ASN1_TAG_BIT_STRING</a>
76
#define <a class="link" href="gnutls-libtasn1.html#ASN1-TAG-UTCTime" title="ASN1_TAG_UTCTime">ASN1_TAG_UTCTime</a>
77
#define <a class="link" href="gnutls-libtasn1.html#ASN1-TAG-GENERALIZEDTime" title="ASN1_TAG_GENERALIZEDTime">ASN1_TAG_GENERALIZEDTime</a>
78
#define <a class="link" href="gnutls-libtasn1.html#ASN1-TAG-OBJECT-ID:CAPS" title="ASN1_TAG_OBJECT_ID">ASN1_TAG_OBJECT_ID</a>
79
#define <a class="link" href="gnutls-libtasn1.html#ASN1-TAG-ENUMERATED:CAPS" title="ASN1_TAG_ENUMERATED">ASN1_TAG_ENUMERATED</a>
80
#define <a class="link" href="gnutls-libtasn1.html#ASN1-TAG-NULL:CAPS" title="ASN1_TAG_NULL">ASN1_TAG_NULL</a>
81
#define <a class="link" href="gnutls-libtasn1.html#ASN1-TAG-GENERALSTRING:CAPS" title="ASN1_TAG_GENERALSTRING">ASN1_TAG_GENERALSTRING</a>
82
typedef <a class="link" href="gnutls-libtasn1.html#node-asn" title="node_asn">node_asn</a>;
83
typedef <a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE">ASN1_TYPE</a>;
84
#define <a class="link" href="gnutls-libtasn1.html#ASN1-TYPE-EMPTY:CAPS" title="ASN1_TYPE_EMPTY">ASN1_TYPE_EMPTY</a>
85
typedef <a class="link" href="gnutls-libtasn1.html#ASN1-ARRAY-TYPE:CAPS" title="ASN1_ARRAY_TYPE">ASN1_ARRAY_TYPE</a>;
86
#define <a class="link" href="gnutls-libtasn1.html#ASN1-MAX-NAME-SIZE:CAPS" title="ASN1_MAX_NAME_SIZE">ASN1_MAX_NAME_SIZE</a>
87
#define <a class="link" href="gnutls-libtasn1.html#ASN1-MAX-ERROR-DESCRIPTION-SIZE:CAPS" title="ASN1_MAX_ERROR_DESCRIPTION_SIZE">ASN1_MAX_ERROR_DESCRIPTION_SIZE</a>
88
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-parser2tree" title="asn1_parser2tree ()">asn1_parser2tree</a> (<em class="parameter"><code>const <span class="type">char</span> *file_name</code></em>,
89
<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> *definitions</code></em>,
90
<em class="parameter"><code><span class="type">char</span> *errorDescription</code></em>);
91
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-parser2array" title="asn1_parser2array ()">asn1_parser2array</a> (<em class="parameter"><code>const <span class="type">char</span> *inputFileName</code></em>,
92
<em class="parameter"><code>const <span class="type">char</span> *outputFileName</code></em>,
93
<em class="parameter"><code>const <span class="type">char</span> *vectorName</code></em>,
94
<em class="parameter"><code><span class="type">char</span> *errorDescription</code></em>);
95
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-array2tree" title="asn1_array2tree ()">asn1_array2tree</a> (<em class="parameter"><code>const <a class="link" href="gnutls-libtasn1.html#ASN1-ARRAY-TYPE:CAPS" title="ASN1_ARRAY_TYPE"><span class="type">ASN1_ARRAY_TYPE</span></a> *array</code></em>,
96
<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> *definitions</code></em>,
97
<em class="parameter"><code><span class="type">char</span> *errorDescription</code></em>);
98
<span class="returnvalue">void</span> <a class="link" href="gnutls-libtasn1.html#asn1-print-structure" title="asn1_print_structure ()">asn1_print_structure</a> (<em class="parameter"><code><span class="type">FILE</span> *out</code></em>,
99
<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> structure</code></em>,
100
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>,
101
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> mode</code></em>);
102
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-create-element" title="asn1_create_element ()">asn1_create_element</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> definitions</code></em>,
103
<em class="parameter"><code>const <span class="type">char</span> *source_name</code></em>,
104
<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> *element</code></em>);
105
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-delete-structure" title="asn1_delete_structure ()">asn1_delete_structure</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> *structure</code></em>);
106
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-delete-element" title="asn1_delete_element ()">asn1_delete_element</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> structure</code></em>,
107
<em class="parameter"><code>const <span class="type">char</span> *element_name</code></em>);
108
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-write-value" title="asn1_write_value ()">asn1_write_value</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> node_root</code></em>,
109
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>,
110
<em class="parameter"><code>const <span class="type">void</span> *ivalue</code></em>,
111
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> len</code></em>);
112
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-read-value" title="asn1_read_value ()">asn1_read_value</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> root</code></em>,
113
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>,
114
<em class="parameter"><code><span class="type">void</span> *ivalue</code></em>,
115
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *len</code></em>);
116
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-number-of-elements" title="asn1_number_of_elements ()">asn1_number_of_elements</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> element</code></em>,
117
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>,
118
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *num</code></em>);
119
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-der-coding" title="asn1_der_coding ()">asn1_der_coding</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> element</code></em>,
120
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>,
121
<em class="parameter"><code><span class="type">void</span> *ider</code></em>,
122
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *len</code></em>,
123
<em class="parameter"><code><span class="type">char</span> *ErrorDescription</code></em>);
124
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-der-decoding" title="asn1_der_decoding ()">asn1_der_decoding</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> *element</code></em>,
125
<em class="parameter"><code>const <span class="type">void</span> *ider</code></em>,
126
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> len</code></em>,
127
<em class="parameter"><code><span class="type">char</span> *errorDescription</code></em>);
128
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-der-decoding-element" title="asn1_der_decoding_element ()">asn1_der_decoding_element</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> *structure</code></em>,
129
<em class="parameter"><code>const <span class="type">char</span> *elementName</code></em>,
130
<em class="parameter"><code>const <span class="type">void</span> *ider</code></em>,
131
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> len</code></em>,
132
<em class="parameter"><code><span class="type">char</span> *errorDescription</code></em>);
133
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-der-decoding-startEnd" title="asn1_der_decoding_startEnd ()">asn1_der_decoding_startEnd</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> element</code></em>,
134
<em class="parameter"><code>const <span class="type">void</span> *ider</code></em>,
135
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> len</code></em>,
136
<em class="parameter"><code>const <span class="type">char</span> *name_element</code></em>,
137
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *start</code></em>,
138
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *end</code></em>);
139
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-expand-any-defined-by" title="asn1_expand_any_defined_by ()">asn1_expand_any_defined_by</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> definitions</code></em>,
140
<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> *element</code></em>);
141
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-expand-octet-string" title="asn1_expand_octet_string ()">asn1_expand_octet_string</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> definitions</code></em>,
142
<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> *element</code></em>,
143
<em class="parameter"><code>const <span class="type">char</span> *octetName</code></em>,
144
<em class="parameter"><code>const <span class="type">char</span> *objectName</code></em>);
145
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-read-tag" title="asn1_read_tag ()">asn1_read_tag</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> root</code></em>,
146
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>,
147
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *tagValue</code></em>,
148
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *classValue</code></em>);
149
const <span class="returnvalue">char</span> * <a class="link" href="gnutls-libtasn1.html#asn1-find-structure-from-oid" title="asn1_find_structure_from_oid ()">asn1_find_structure_from_oid</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> definitions</code></em>,
150
<em class="parameter"><code>const <span class="type">char</span> *oidValue</code></em>);
151
const <span class="returnvalue">char</span> * <a class="link" href="gnutls-libtasn1.html#asn1-check-version" title="asn1_check_version ()">asn1_check_version</a> (<em class="parameter"><code>const <span class="type">char</span> *req_version</code></em>);
152
const <span class="returnvalue">char</span> * <a class="link" href="gnutls-libtasn1.html#asn1-strerror" title="asn1_strerror ()">asn1_strerror</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="type">asn1_retCode</span></a> error</code></em>);
153
<span class="returnvalue">void</span> <a class="link" href="gnutls-libtasn1.html#asn1-perror" title="asn1_perror ()">asn1_perror</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="type">asn1_retCode</span></a> error</code></em>);
154
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-get-tag-der" title="asn1_get_tag_der ()">asn1_get_tag_der</a> (<em class="parameter"><code>unsigned <span class="type">char</span> *der</code></em>,
155
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> der_len</code></em>,
156
<em class="parameter"><code>unsigned <span class="type">char</span> *cls</code></em>,
157
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *len</code></em>,
158
<em class="parameter"><code>unsigned <span class="type">long</span> *tag</code></em>);
159
<span class="returnvalue">void</span> <a class="link" href="gnutls-libtasn1.html#asn1-octet-der" title="asn1_octet_der ()">asn1_octet_der</a> (<em class="parameter"><code>unsigned <span class="type">char</span> *str</code></em>,
160
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> str_len</code></em>,
161
<em class="parameter"><code>unsigned <span class="type">char</span> *der</code></em>,
162
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *der_len</code></em>);
163
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-get-octet-der" title="asn1_get_octet_der ()">asn1_get_octet_der</a> (<em class="parameter"><code>unsigned <span class="type">char</span> *der</code></em>,
164
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> der_len</code></em>,
165
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *ret_len</code></em>,
166
<em class="parameter"><code>unsigned <span class="type">char</span> *str</code></em>,
167
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> str_size</code></em>,
168
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *str_len</code></em>);
169
<span class="returnvalue">void</span> <a class="link" href="gnutls-libtasn1.html#asn1-bit-der" title="asn1_bit_der ()">asn1_bit_der</a> (<em class="parameter"><code>unsigned <span class="type">char</span> *str</code></em>,
170
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> bit_len</code></em>,
171
<em class="parameter"><code>unsigned <span class="type">char</span> *der</code></em>,
172
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *der_len</code></em>);
173
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-get-bit-der" title="asn1_get_bit_der ()">asn1_get_bit_der</a> (<em class="parameter"><code>unsigned <span class="type">char</span> *der</code></em>,
174
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> der_len</code></em>,
175
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *ret_len</code></em>,
176
<em class="parameter"><code>unsigned <span class="type">char</span> *str</code></em>,
177
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> str_size</code></em>,
178
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *bit_len</code></em>);
179
signed <span class="returnvalue">long</span> <a class="link" href="gnutls-libtasn1.html#asn1-get-length-der" title="asn1_get_length_der ()">asn1_get_length_der</a> (<em class="parameter"><code>unsigned <span class="type">char</span> *der</code></em>,
180
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> der_len</code></em>,
181
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *len</code></em>);
182
signed <span class="returnvalue">long</span> <a class="link" href="gnutls-libtasn1.html#asn1-get-length-ber" title="asn1_get_length_ber ()">asn1_get_length_ber</a> (<em class="parameter"><code>unsigned <span class="type">char</span> *ber</code></em>,
183
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> ber_len</code></em>,
184
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *len</code></em>);
185
<span class="returnvalue">void</span> <a class="link" href="gnutls-libtasn1.html#asn1-length-der" title="asn1_length_der ()">asn1_length_der</a> (<em class="parameter"><code>unsigned long <a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> len</code></em>,
186
<em class="parameter"><code>unsigned <span class="type">char</span> *ans</code></em>,
187
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *ans_len</code></em>);
188
<a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="returnvalue">ASN1_TYPE</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-find-node" title="asn1_find_node ()">asn1_find_node</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> pointer</code></em>,
189
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>);
190
<a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> <a class="link" href="gnutls-libtasn1.html#asn1-copy-node" title="asn1_copy_node ()">asn1_copy_node</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> dst</code></em>,
191
<em class="parameter"><code>const <span class="type">char</span> *dst_name</code></em>,
192
<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> src</code></em>,
193
<em class="parameter"><code>const <span class="type">char</span> *src_name</code></em>);
194
#define <a class="link" href="gnutls-libtasn1.html#LIBTASN1-VERSION:CAPS" title="LIBTASN1_VERSION">LIBTASN1_VERSION</a>
195
#define <a class="link" href="gnutls-libtasn1.html#MAX-NAME-SIZE:CAPS" title="MAX_NAME_SIZE">MAX_NAME_SIZE</a>
196
#define <a class="link" href="gnutls-libtasn1.html#MAX-ERROR-DESCRIPTION-SIZE:CAPS" title="MAX_ERROR_DESCRIPTION_SIZE">MAX_ERROR_DESCRIPTION_SIZE</a>
197
const <span class="returnvalue">char</span> * <a class="link" href="gnutls-libtasn1.html#libtasn1-strerror" title="libtasn1_strerror ()">libtasn1_strerror</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="type">asn1_retCode</span></a> error</code></em>);
198
<span class="returnvalue">void</span> <a class="link" href="gnutls-libtasn1.html#libtasn1-perror" title="libtasn1_perror ()">libtasn1_perror</a> (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="type">asn1_retCode</span></a> error</code></em>);
201
<div class="refsect1" title="Description">
202
<a name="gnutls-libtasn1.description"></a><h2>Description</h2>
206
<div class="refsect1" title="Details">
207
<a name="gnutls-libtasn1.details"></a><h2>Details</h2>
208
<div class="refsect2" title="ASN1_API">
209
<a name="ASN1-API:CAPS"></a><h3>ASN1_API</h3>
210
<pre class="programlisting">#define ASN1_API</pre>
215
<div class="refsect2" title="ASN1_VERSION">
216
<a name="ASN1-VERSION:CAPS"></a><h3>ASN1_VERSION</h3>
217
<pre class="programlisting">#define ASN1_VERSION "2.3"
223
<div class="refsect2" title="asn1_retCode">
224
<a name="asn1-retCode"></a><h3>asn1_retCode</h3>
225
<pre class="programlisting"> typedef int asn1_retCode; /* type returned by libtasn1 functions */
231
<div class="refsect2" title="ASN1_SUCCESS">
232
<a name="ASN1-SUCCESS:CAPS"></a><h3>ASN1_SUCCESS</h3>
233
<pre class="programlisting">#define ASN1_SUCCESS 0
239
<div class="refsect2" title="ASN1_FILE_NOT_FOUND">
240
<a name="ASN1-FILE-NOT-FOUND:CAPS"></a><h3>ASN1_FILE_NOT_FOUND</h3>
241
<pre class="programlisting">#define ASN1_FILE_NOT_FOUND 1
247
<div class="refsect2" title="ASN1_ELEMENT_NOT_FOUND">
248
<a name="ASN1-ELEMENT-NOT-FOUND:CAPS"></a><h3>ASN1_ELEMENT_NOT_FOUND</h3>
249
<pre class="programlisting">#define ASN1_ELEMENT_NOT_FOUND 2
255
<div class="refsect2" title="ASN1_IDENTIFIER_NOT_FOUND">
256
<a name="ASN1-IDENTIFIER-NOT-FOUND:CAPS"></a><h3>ASN1_IDENTIFIER_NOT_FOUND</h3>
257
<pre class="programlisting">#define ASN1_IDENTIFIER_NOT_FOUND 3
263
<div class="refsect2" title="ASN1_DER_ERROR">
264
<a name="ASN1-DER-ERROR:CAPS"></a><h3>ASN1_DER_ERROR</h3>
265
<pre class="programlisting">#define ASN1_DER_ERROR 4
271
<div class="refsect2" title="ASN1_VALUE_NOT_FOUND">
272
<a name="ASN1-VALUE-NOT-FOUND:CAPS"></a><h3>ASN1_VALUE_NOT_FOUND</h3>
273
<pre class="programlisting">#define ASN1_VALUE_NOT_FOUND 5
279
<div class="refsect2" title="ASN1_GENERIC_ERROR">
280
<a name="ASN1-GENERIC-ERROR:CAPS"></a><h3>ASN1_GENERIC_ERROR</h3>
281
<pre class="programlisting">#define ASN1_GENERIC_ERROR 6
287
<div class="refsect2" title="ASN1_VALUE_NOT_VALID">
288
<a name="ASN1-VALUE-NOT-VALID:CAPS"></a><h3>ASN1_VALUE_NOT_VALID</h3>
289
<pre class="programlisting">#define ASN1_VALUE_NOT_VALID 7
295
<div class="refsect2" title="ASN1_TAG_ERROR">
296
<a name="ASN1-TAG-ERROR:CAPS"></a><h3>ASN1_TAG_ERROR</h3>
297
<pre class="programlisting">#define ASN1_TAG_ERROR 8
303
<div class="refsect2" title="ASN1_TAG_IMPLICIT">
304
<a name="ASN1-TAG-IMPLICIT:CAPS"></a><h3>ASN1_TAG_IMPLICIT</h3>
305
<pre class="programlisting">#define ASN1_TAG_IMPLICIT 9
311
<div class="refsect2" title="ASN1_ERROR_TYPE_ANY">
312
<a name="ASN1-ERROR-TYPE-ANY:CAPS"></a><h3>ASN1_ERROR_TYPE_ANY</h3>
313
<pre class="programlisting">#define ASN1_ERROR_TYPE_ANY 10
319
<div class="refsect2" title="ASN1_SYNTAX_ERROR">
320
<a name="ASN1-SYNTAX-ERROR:CAPS"></a><h3>ASN1_SYNTAX_ERROR</h3>
321
<pre class="programlisting">#define ASN1_SYNTAX_ERROR 11
327
<div class="refsect2" title="ASN1_MEM_ERROR">
328
<a name="ASN1-MEM-ERROR:CAPS"></a><h3>ASN1_MEM_ERROR</h3>
329
<pre class="programlisting">#define ASN1_MEM_ERROR 12
335
<div class="refsect2" title="ASN1_MEM_ALLOC_ERROR">
336
<a name="ASN1-MEM-ALLOC-ERROR:CAPS"></a><h3>ASN1_MEM_ALLOC_ERROR</h3>
337
<pre class="programlisting">#define ASN1_MEM_ALLOC_ERROR 13
343
<div class="refsect2" title="ASN1_DER_OVERFLOW">
344
<a name="ASN1-DER-OVERFLOW:CAPS"></a><h3>ASN1_DER_OVERFLOW</h3>
345
<pre class="programlisting">#define ASN1_DER_OVERFLOW 14
351
<div class="refsect2" title="ASN1_NAME_TOO_LONG">
352
<a name="ASN1-NAME-TOO-LONG:CAPS"></a><h3>ASN1_NAME_TOO_LONG</h3>
353
<pre class="programlisting">#define ASN1_NAME_TOO_LONG 15
359
<div class="refsect2" title="ASN1_ARRAY_ERROR">
360
<a name="ASN1-ARRAY-ERROR:CAPS"></a><h3>ASN1_ARRAY_ERROR</h3>
361
<pre class="programlisting">#define ASN1_ARRAY_ERROR 16
367
<div class="refsect2" title="ASN1_ELEMENT_NOT_EMPTY">
368
<a name="ASN1-ELEMENT-NOT-EMPTY:CAPS"></a><h3>ASN1_ELEMENT_NOT_EMPTY</h3>
369
<pre class="programlisting">#define ASN1_ELEMENT_NOT_EMPTY 17
375
<div class="refsect2" title="ASN1_PRINT_NAME">
376
<a name="ASN1-PRINT-NAME:CAPS"></a><h3>ASN1_PRINT_NAME</h3>
377
<pre class="programlisting">#define ASN1_PRINT_NAME 1
383
<div class="refsect2" title="ASN1_PRINT_NAME_TYPE">
384
<a name="ASN1-PRINT-NAME-TYPE:CAPS"></a><h3>ASN1_PRINT_NAME_TYPE</h3>
385
<pre class="programlisting">#define ASN1_PRINT_NAME_TYPE 2
391
<div class="refsect2" title="ASN1_PRINT_NAME_TYPE_VALUE">
392
<a name="ASN1-PRINT-NAME-TYPE-VALUE:CAPS"></a><h3>ASN1_PRINT_NAME_TYPE_VALUE</h3>
393
<pre class="programlisting">#define ASN1_PRINT_NAME_TYPE_VALUE 3
399
<div class="refsect2" title="ASN1_PRINT_ALL">
400
<a name="ASN1-PRINT-ALL:CAPS"></a><h3>ASN1_PRINT_ALL</h3>
401
<pre class="programlisting">#define ASN1_PRINT_ALL 4
407
<div class="refsect2" title="ASN1_CLASS_UNIVERSAL">
408
<a name="ASN1-CLASS-UNIVERSAL:CAPS"></a><h3>ASN1_CLASS_UNIVERSAL</h3>
409
<pre class="programlisting">#define ASN1_CLASS_UNIVERSAL 0x00 /* old: 1 */
415
<div class="refsect2" title="ASN1_CLASS_APPLICATION">
416
<a name="ASN1-CLASS-APPLICATION:CAPS"></a><h3>ASN1_CLASS_APPLICATION</h3>
417
<pre class="programlisting">#define ASN1_CLASS_APPLICATION 0x40 /* old: 2 */
423
<div class="refsect2" title="ASN1_CLASS_CONTEXT_SPECIFIC">
424
<a name="ASN1-CLASS-CONTEXT-SPECIFIC:CAPS"></a><h3>ASN1_CLASS_CONTEXT_SPECIFIC</h3>
425
<pre class="programlisting">#define ASN1_CLASS_CONTEXT_SPECIFIC 0x80 /* old: 3 */
431
<div class="refsect2" title="ASN1_CLASS_PRIVATE">
432
<a name="ASN1-CLASS-PRIVATE:CAPS"></a><h3>ASN1_CLASS_PRIVATE</h3>
433
<pre class="programlisting">#define ASN1_CLASS_PRIVATE 0xC0 /* old: 4 */
439
<div class="refsect2" title="ASN1_CLASS_STRUCTURED">
440
<a name="ASN1-CLASS-STRUCTURED:CAPS"></a><h3>ASN1_CLASS_STRUCTURED</h3>
441
<pre class="programlisting">#define ASN1_CLASS_STRUCTURED 0x20
447
<div class="refsect2" title="ASN1_TAG_BOOLEAN">
448
<a name="ASN1-TAG-BOOLEAN:CAPS"></a><h3>ASN1_TAG_BOOLEAN</h3>
449
<pre class="programlisting">#define ASN1_TAG_BOOLEAN 0x01
455
<div class="refsect2" title="ASN1_TAG_INTEGER">
456
<a name="ASN1-TAG-INTEGER:CAPS"></a><h3>ASN1_TAG_INTEGER</h3>
457
<pre class="programlisting">#define ASN1_TAG_INTEGER 0x02
463
<div class="refsect2" title="ASN1_TAG_SEQUENCE">
464
<a name="ASN1-TAG-SEQUENCE:CAPS"></a><h3>ASN1_TAG_SEQUENCE</h3>
465
<pre class="programlisting">#define ASN1_TAG_SEQUENCE 0x10
471
<div class="refsect2" title="ASN1_TAG_SET">
472
<a name="ASN1-TAG-SET:CAPS"></a><h3>ASN1_TAG_SET</h3>
473
<pre class="programlisting">#define ASN1_TAG_SET 0x11
479
<div class="refsect2" title="ASN1_TAG_OCTET_STRING">
480
<a name="ASN1-TAG-OCTET-STRING:CAPS"></a><h3>ASN1_TAG_OCTET_STRING</h3>
481
<pre class="programlisting">#define ASN1_TAG_OCTET_STRING 0x04
487
<div class="refsect2" title="ASN1_TAG_BIT_STRING">
488
<a name="ASN1-TAG-BIT-STRING:CAPS"></a><h3>ASN1_TAG_BIT_STRING</h3>
489
<pre class="programlisting">#define ASN1_TAG_BIT_STRING 0x03
495
<div class="refsect2" title="ASN1_TAG_UTCTime">
496
<a name="ASN1-TAG-UTCTime"></a><h3>ASN1_TAG_UTCTime</h3>
497
<pre class="programlisting">#define ASN1_TAG_UTCTime 0x17
503
<div class="refsect2" title="ASN1_TAG_GENERALIZEDTime">
504
<a name="ASN1-TAG-GENERALIZEDTime"></a><h3>ASN1_TAG_GENERALIZEDTime</h3>
505
<pre class="programlisting">#define ASN1_TAG_GENERALIZEDTime 0x18
511
<div class="refsect2" title="ASN1_TAG_OBJECT_ID">
512
<a name="ASN1-TAG-OBJECT-ID:CAPS"></a><h3>ASN1_TAG_OBJECT_ID</h3>
513
<pre class="programlisting">#define ASN1_TAG_OBJECT_ID 0x06
519
<div class="refsect2" title="ASN1_TAG_ENUMERATED">
520
<a name="ASN1-TAG-ENUMERATED:CAPS"></a><h3>ASN1_TAG_ENUMERATED</h3>
521
<pre class="programlisting">#define ASN1_TAG_ENUMERATED 0x0A
527
<div class="refsect2" title="ASN1_TAG_NULL">
528
<a name="ASN1-TAG-NULL:CAPS"></a><h3>ASN1_TAG_NULL</h3>
529
<pre class="programlisting">#define ASN1_TAG_NULL 0x05
535
<div class="refsect2" title="ASN1_TAG_GENERALSTRING">
536
<a name="ASN1-TAG-GENERALSTRING:CAPS"></a><h3>ASN1_TAG_GENERALSTRING</h3>
537
<pre class="programlisting">#define ASN1_TAG_GENERALSTRING 0x1B
543
<div class="refsect2" title="node_asn">
544
<a name="node-asn"></a><h3>node_asn</h3>
545
<pre class="programlisting"> typedef struct node_asn_struct node_asn;
551
<div class="refsect2" title="ASN1_TYPE">
552
<a name="ASN1-TYPE:CAPS"></a><h3>ASN1_TYPE</h3>
553
<pre class="programlisting"> typedef node_asn *ASN1_TYPE;
559
<div class="refsect2" title="ASN1_TYPE_EMPTY">
560
<a name="ASN1-TYPE-EMPTY:CAPS"></a><h3>ASN1_TYPE_EMPTY</h3>
561
<pre class="programlisting">#define ASN1_TYPE_EMPTY NULL
567
<div class="refsect2" title="ASN1_ARRAY_TYPE">
568
<a name="ASN1-ARRAY-TYPE:CAPS"></a><h3>ASN1_ARRAY_TYPE</h3>
569
<pre class="programlisting"> typedef struct static_struct_asn ASN1_ARRAY_TYPE;
575
<div class="refsect2" title="ASN1_MAX_NAME_SIZE">
576
<a name="ASN1-MAX-NAME-SIZE:CAPS"></a><h3>ASN1_MAX_NAME_SIZE</h3>
577
<pre class="programlisting">#define ASN1_MAX_NAME_SIZE</pre>
582
<div class="refsect2" title="ASN1_MAX_ERROR_DESCRIPTION_SIZE">
583
<a name="ASN1-MAX-ERROR-DESCRIPTION-SIZE:CAPS"></a><h3>ASN1_MAX_ERROR_DESCRIPTION_SIZE</h3>
584
<pre class="programlisting">#define ASN1_MAX_ERROR_DESCRIPTION_SIZE</pre>
589
<div class="refsect2" title="asn1_parser2tree ()">
590
<a name="asn1-parser2tree"></a><h3>asn1_parser2tree ()</h3>
591
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_parser2tree (<em class="parameter"><code>const <span class="type">char</span> *file_name</code></em>,
592
<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> *definitions</code></em>,
593
<em class="parameter"><code><span class="type">char</span> *errorDescription</code></em>);</pre>
596
<div class="variablelist"><table border="0">
597
<col align="left" valign="top">
600
<td><p><span class="term"><em class="parameter"><code>file_name</code></em> :</span></p></td>
605
<td><p><span class="term"><em class="parameter"><code>definitions</code></em> :</span></p></td>
610
<td><p><span class="term"><em class="parameter"><code>errorDescription</code></em> :</span></p></td>
615
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
623
<div class="refsect2" title="asn1_parser2array ()">
624
<a name="asn1-parser2array"></a><h3>asn1_parser2array ()</h3>
625
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_parser2array (<em class="parameter"><code>const <span class="type">char</span> *inputFileName</code></em>,
626
<em class="parameter"><code>const <span class="type">char</span> *outputFileName</code></em>,
627
<em class="parameter"><code>const <span class="type">char</span> *vectorName</code></em>,
628
<em class="parameter"><code><span class="type">char</span> *errorDescription</code></em>);</pre>
631
<div class="variablelist"><table border="0">
632
<col align="left" valign="top">
635
<td><p><span class="term"><em class="parameter"><code>inputFileName</code></em> :</span></p></td>
640
<td><p><span class="term"><em class="parameter"><code>outputFileName</code></em> :</span></p></td>
645
<td><p><span class="term"><em class="parameter"><code>vectorName</code></em> :</span></p></td>
650
<td><p><span class="term"><em class="parameter"><code>errorDescription</code></em> :</span></p></td>
655
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
663
<div class="refsect2" title="asn1_array2tree ()">
664
<a name="asn1-array2tree"></a><h3>asn1_array2tree ()</h3>
665
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_array2tree (<em class="parameter"><code>const <a class="link" href="gnutls-libtasn1.html#ASN1-ARRAY-TYPE:CAPS" title="ASN1_ARRAY_TYPE"><span class="type">ASN1_ARRAY_TYPE</span></a> *array</code></em>,
666
<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> *definitions</code></em>,
667
<em class="parameter"><code><span class="type">char</span> *errorDescription</code></em>);</pre>
670
<div class="variablelist"><table border="0">
671
<col align="left" valign="top">
674
<td><p><span class="term"><em class="parameter"><code>array</code></em> :</span></p></td>
679
<td><p><span class="term"><em class="parameter"><code>definitions</code></em> :</span></p></td>
684
<td><p><span class="term"><em class="parameter"><code>errorDescription</code></em> :</span></p></td>
689
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
697
<div class="refsect2" title="asn1_print_structure ()">
698
<a name="asn1-print-structure"></a><h3>asn1_print_structure ()</h3>
699
<pre class="programlisting"><span class="returnvalue">void</span> asn1_print_structure (<em class="parameter"><code><span class="type">FILE</span> *out</code></em>,
700
<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> structure</code></em>,
701
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>,
702
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> mode</code></em>);</pre>
705
<div class="variablelist"><table border="0">
706
<col align="left" valign="top">
709
<td><p><span class="term"><em class="parameter"><code>out</code></em> :</span></p></td>
714
<td><p><span class="term"><em class="parameter"><code>structure</code></em> :</span></p></td>
719
<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
724
<td><p><span class="term"><em class="parameter"><code>mode</code></em> :</span></p></td>
732
<div class="refsect2" title="asn1_create_element ()">
733
<a name="asn1-create-element"></a><h3>asn1_create_element ()</h3>
734
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_create_element (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> definitions</code></em>,
735
<em class="parameter"><code>const <span class="type">char</span> *source_name</code></em>,
736
<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> *element</code></em>);</pre>
739
<div class="variablelist"><table border="0">
740
<col align="left" valign="top">
743
<td><p><span class="term"><em class="parameter"><code>definitions</code></em> :</span></p></td>
748
<td><p><span class="term"><em class="parameter"><code>source_name</code></em> :</span></p></td>
753
<td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td>
758
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
766
<div class="refsect2" title="asn1_delete_structure ()">
767
<a name="asn1-delete-structure"></a><h3>asn1_delete_structure ()</h3>
768
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_delete_structure (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> *structure</code></em>);</pre>
771
<div class="variablelist"><table border="0">
772
<col align="left" valign="top">
775
<td><p><span class="term"><em class="parameter"><code>structure</code></em> :</span></p></td>
780
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
788
<div class="refsect2" title="asn1_delete_element ()">
789
<a name="asn1-delete-element"></a><h3>asn1_delete_element ()</h3>
790
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_delete_element (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> structure</code></em>,
791
<em class="parameter"><code>const <span class="type">char</span> *element_name</code></em>);</pre>
794
<div class="variablelist"><table border="0">
795
<col align="left" valign="top">
798
<td><p><span class="term"><em class="parameter"><code>structure</code></em> :</span></p></td>
803
<td><p><span class="term"><em class="parameter"><code>element_name</code></em> :</span></p></td>
808
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
816
<div class="refsect2" title="asn1_write_value ()">
817
<a name="asn1-write-value"></a><h3>asn1_write_value ()</h3>
818
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_write_value (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> node_root</code></em>,
819
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>,
820
<em class="parameter"><code>const <span class="type">void</span> *ivalue</code></em>,
821
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> len</code></em>);</pre>
824
<div class="variablelist"><table border="0">
825
<col align="left" valign="top">
828
<td><p><span class="term"><em class="parameter"><code>node_root</code></em> :</span></p></td>
833
<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
838
<td><p><span class="term"><em class="parameter"><code>ivalue</code></em> :</span></p></td>
843
<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
848
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
856
<div class="refsect2" title="asn1_read_value ()">
857
<a name="asn1-read-value"></a><h3>asn1_read_value ()</h3>
858
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_read_value (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> root</code></em>,
859
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>,
860
<em class="parameter"><code><span class="type">void</span> *ivalue</code></em>,
861
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *len</code></em>);</pre>
864
<div class="variablelist"><table border="0">
865
<col align="left" valign="top">
868
<td><p><span class="term"><em class="parameter"><code>root</code></em> :</span></p></td>
873
<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
878
<td><p><span class="term"><em class="parameter"><code>ivalue</code></em> :</span></p></td>
883
<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
888
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
896
<div class="refsect2" title="asn1_number_of_elements ()">
897
<a name="asn1-number-of-elements"></a><h3>asn1_number_of_elements ()</h3>
898
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_number_of_elements (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> element</code></em>,
899
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>,
900
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *num</code></em>);</pre>
903
<div class="variablelist"><table border="0">
904
<col align="left" valign="top">
907
<td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td>
912
<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
917
<td><p><span class="term"><em class="parameter"><code>num</code></em> :</span></p></td>
922
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
930
<div class="refsect2" title="asn1_der_coding ()">
931
<a name="asn1-der-coding"></a><h3>asn1_der_coding ()</h3>
932
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_der_coding (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> element</code></em>,
933
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>,
934
<em class="parameter"><code><span class="type">void</span> *ider</code></em>,
935
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *len</code></em>,
936
<em class="parameter"><code><span class="type">char</span> *ErrorDescription</code></em>);</pre>
939
<div class="variablelist"><table border="0">
940
<col align="left" valign="top">
943
<td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td>
948
<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
953
<td><p><span class="term"><em class="parameter"><code>ider</code></em> :</span></p></td>
958
<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
963
<td><p><span class="term"><em class="parameter"><code>ErrorDescription</code></em> :</span></p></td>
968
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
976
<div class="refsect2" title="asn1_der_decoding ()">
977
<a name="asn1-der-decoding"></a><h3>asn1_der_decoding ()</h3>
978
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_der_decoding (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> *element</code></em>,
979
<em class="parameter"><code>const <span class="type">void</span> *ider</code></em>,
980
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> len</code></em>,
981
<em class="parameter"><code><span class="type">char</span> *errorDescription</code></em>);</pre>
984
<div class="variablelist"><table border="0">
985
<col align="left" valign="top">
988
<td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td>
993
<td><p><span class="term"><em class="parameter"><code>ider</code></em> :</span></p></td>
998
<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
1003
<td><p><span class="term"><em class="parameter"><code>errorDescription</code></em> :</span></p></td>
1008
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1016
<div class="refsect2" title="asn1_der_decoding_element ()">
1017
<a name="asn1-der-decoding-element"></a><h3>asn1_der_decoding_element ()</h3>
1018
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_der_decoding_element (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> *structure</code></em>,
1019
<em class="parameter"><code>const <span class="type">char</span> *elementName</code></em>,
1020
<em class="parameter"><code>const <span class="type">void</span> *ider</code></em>,
1021
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> len</code></em>,
1022
<em class="parameter"><code><span class="type">char</span> *errorDescription</code></em>);</pre>
1025
<div class="variablelist"><table border="0">
1026
<col align="left" valign="top">
1029
<td><p><span class="term"><em class="parameter"><code>structure</code></em> :</span></p></td>
1034
<td><p><span class="term"><em class="parameter"><code>elementName</code></em> :</span></p></td>
1039
<td><p><span class="term"><em class="parameter"><code>ider</code></em> :</span></p></td>
1044
<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
1049
<td><p><span class="term"><em class="parameter"><code>errorDescription</code></em> :</span></p></td>
1054
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1062
<div class="refsect2" title="asn1_der_decoding_startEnd ()">
1063
<a name="asn1-der-decoding-startEnd"></a><h3>asn1_der_decoding_startEnd ()</h3>
1064
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_der_decoding_startEnd (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> element</code></em>,
1065
<em class="parameter"><code>const <span class="type">void</span> *ider</code></em>,
1066
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> len</code></em>,
1067
<em class="parameter"><code>const <span class="type">char</span> *name_element</code></em>,
1068
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *start</code></em>,
1069
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *end</code></em>);</pre>
1072
<div class="variablelist"><table border="0">
1073
<col align="left" valign="top">
1076
<td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td>
1081
<td><p><span class="term"><em class="parameter"><code>ider</code></em> :</span></p></td>
1086
<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
1091
<td><p><span class="term"><em class="parameter"><code>name_element</code></em> :</span></p></td>
1096
<td><p><span class="term"><em class="parameter"><code>start</code></em> :</span></p></td>
1101
<td><p><span class="term"><em class="parameter"><code>end</code></em> :</span></p></td>
1106
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1114
<div class="refsect2" title="asn1_expand_any_defined_by ()">
1115
<a name="asn1-expand-any-defined-by"></a><h3>asn1_expand_any_defined_by ()</h3>
1116
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_expand_any_defined_by (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> definitions</code></em>,
1117
<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> *element</code></em>);</pre>
1120
<div class="variablelist"><table border="0">
1121
<col align="left" valign="top">
1124
<td><p><span class="term"><em class="parameter"><code>definitions</code></em> :</span></p></td>
1129
<td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td>
1134
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1142
<div class="refsect2" title="asn1_expand_octet_string ()">
1143
<a name="asn1-expand-octet-string"></a><h3>asn1_expand_octet_string ()</h3>
1144
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_expand_octet_string (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> definitions</code></em>,
1145
<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> *element</code></em>,
1146
<em class="parameter"><code>const <span class="type">char</span> *octetName</code></em>,
1147
<em class="parameter"><code>const <span class="type">char</span> *objectName</code></em>);</pre>
1150
<div class="variablelist"><table border="0">
1151
<col align="left" valign="top">
1154
<td><p><span class="term"><em class="parameter"><code>definitions</code></em> :</span></p></td>
1159
<td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td>
1164
<td><p><span class="term"><em class="parameter"><code>octetName</code></em> :</span></p></td>
1169
<td><p><span class="term"><em class="parameter"><code>objectName</code></em> :</span></p></td>
1174
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1182
<div class="refsect2" title="asn1_read_tag ()">
1183
<a name="asn1-read-tag"></a><h3>asn1_read_tag ()</h3>
1184
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_read_tag (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> root</code></em>,
1185
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>,
1186
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *tagValue</code></em>,
1187
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *classValue</code></em>);</pre>
1190
<div class="variablelist"><table border="0">
1191
<col align="left" valign="top">
1194
<td><p><span class="term"><em class="parameter"><code>root</code></em> :</span></p></td>
1199
<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
1204
<td><p><span class="term"><em class="parameter"><code>tagValue</code></em> :</span></p></td>
1209
<td><p><span class="term"><em class="parameter"><code>classValue</code></em> :</span></p></td>
1214
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1222
<div class="refsect2" title="asn1_find_structure_from_oid ()">
1223
<a name="asn1-find-structure-from-oid"></a><h3>asn1_find_structure_from_oid ()</h3>
1224
<pre class="programlisting">const <span class="returnvalue">char</span> * asn1_find_structure_from_oid (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> definitions</code></em>,
1225
<em class="parameter"><code>const <span class="type">char</span> *oidValue</code></em>);</pre>
1228
<div class="variablelist"><table border="0">
1229
<col align="left" valign="top">
1232
<td><p><span class="term"><em class="parameter"><code>definitions</code></em> :</span></p></td>
1237
<td><p><span class="term"><em class="parameter"><code>oidValue</code></em> :</span></p></td>
1242
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1250
<div class="refsect2" title="asn1_check_version ()">
1251
<a name="asn1-check-version"></a><h3>asn1_check_version ()</h3>
1252
<pre class="programlisting">const <span class="returnvalue">char</span> * asn1_check_version (<em class="parameter"><code>const <span class="type">char</span> *req_version</code></em>);</pre>
1255
<div class="variablelist"><table border="0">
1256
<col align="left" valign="top">
1259
<td><p><span class="term"><em class="parameter"><code>req_version</code></em> :</span></p></td>
1264
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1272
<div class="refsect2" title="asn1_strerror ()">
1273
<a name="asn1-strerror"></a><h3>asn1_strerror ()</h3>
1274
<pre class="programlisting">const <span class="returnvalue">char</span> * asn1_strerror (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="type">asn1_retCode</span></a> error</code></em>);</pre>
1277
<div class="variablelist"><table border="0">
1278
<col align="left" valign="top">
1281
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
1286
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1294
<div class="refsect2" title="asn1_perror ()">
1295
<a name="asn1-perror"></a><h3>asn1_perror ()</h3>
1296
<pre class="programlisting"><span class="returnvalue">void</span> asn1_perror (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="type">asn1_retCode</span></a> error</code></em>);</pre>
1299
<div class="variablelist"><table border="0">
1300
<col align="left" valign="top">
1302
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
1309
<div class="refsect2" title="asn1_get_tag_der ()">
1310
<a name="asn1-get-tag-der"></a><h3>asn1_get_tag_der ()</h3>
1311
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a> asn1_get_tag_der (<em class="parameter"><code>unsigned <span class="type">char</span> *der</code></em>,
1312
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> der_len</code></em>,
1313
<em class="parameter"><code>unsigned <span class="type">char</span> *cls</code></em>,
1314
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *len</code></em>,
1315
<em class="parameter"><code>unsigned <span class="type">long</span> *tag</code></em>);</pre>
1317
Decode the class and TAG from DER code.</p>
1318
<div class="variablelist"><table border="0">
1319
<col align="left" valign="top">
1322
<td><p><span class="term"><em class="parameter"><code>der</code></em> :</span></p></td>
1323
<td>DER data to decode.
1327
<td><p><span class="term"><em class="parameter"><code>der_len</code></em> :</span></p></td>
1328
<td>Length of DER data to decode.
1332
<td><p><span class="term"><em class="parameter"><code>cls</code></em> :</span></p></td>
1333
<td>Output variable containing decoded class.
1337
<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
1338
<td>Output variable containing the length of the DER TAG data.
1342
<td><p><span class="term"><em class="parameter"><code>tag</code></em> :</span></p></td>
1343
<td>Output variable containing the decoded tag.
1347
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1348
<td> Returns ASN1_SUCCESS on success, or an error.
1355
<div class="refsect2" title="asn1_octet_der ()">
1356
<a name="asn1-octet-der"></a><h3>asn1_octet_der ()</h3>
1357
<pre class="programlisting"><span class="returnvalue">void</span> asn1_octet_der (<em class="parameter"><code>unsigned <span class="type">char</span> *str</code></em>,
1358
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> str_len</code></em>,
1359
<em class="parameter"><code>unsigned <span class="type">char</span> *der</code></em>,
1360
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *der_len</code></em>);</pre>
1362
Creates the DER coding for an OCTET type (length included).</p>
1363
<div class="variablelist"><table border="0">
1364
<col align="left" valign="top">
1367
<td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
1372
<td><p><span class="term"><em class="parameter"><code>str_len</code></em> :</span></p></td>
1373
<td>STR length (str[0]..str[str_len-1]).
1377
<td><p><span class="term"><em class="parameter"><code>der</code></em> :</span></p></td>
1378
<td>string returned.
1382
<td><p><span class="term"><em class="parameter"><code>der_len</code></em> :</span></p></td>
1383
<td>number of meaningful bytes of DER (der[0]..der[ans_len-1]).
1390
<div class="refsect2" title="asn1_get_octet_der ()">
1391
<a name="asn1-get-octet-der"></a><h3>asn1_get_octet_der ()</h3>
1392
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_get_octet_der (<em class="parameter"><code>unsigned <span class="type">char</span> *der</code></em>,
1393
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> der_len</code></em>,
1394
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *ret_len</code></em>,
1395
<em class="parameter"><code>unsigned <span class="type">char</span> *str</code></em>,
1396
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> str_size</code></em>,
1397
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *str_len</code></em>);</pre>
1399
Extract an OCTET SEQUENCE from DER data.</p>
1400
<div class="variablelist"><table border="0">
1401
<col align="left" valign="top">
1404
<td><p><span class="term"><em class="parameter"><code>der</code></em> :</span></p></td>
1405
<td>DER data to decode containing the OCTET SEQUENCE.
1409
<td><p><span class="term"><em class="parameter"><code>der_len</code></em> :</span></p></td>
1410
<td>Length of DER data to decode.
1414
<td><p><span class="term"><em class="parameter"><code>ret_len</code></em> :</span></p></td>
1415
<td>Output variable containing the length of the DER data.
1419
<td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
1420
<td>Pre-allocated output buffer to put decoded OCTET SEQUENCE in.
1424
<td><p><span class="term"><em class="parameter"><code>str_size</code></em> :</span></p></td>
1425
<td>Length of pre-allocated output buffer.
1429
<td><p><span class="term"><em class="parameter"><code>str_len</code></em> :</span></p></td>
1430
<td>Output variable containing the length of the OCTET SEQUENCE.
1434
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1435
<td> Returns ASN1_SUCCESS on success, or an error.
1442
<div class="refsect2" title="asn1_bit_der ()">
1443
<a name="asn1-bit-der"></a><h3>asn1_bit_der ()</h3>
1444
<pre class="programlisting"><span class="returnvalue">void</span> asn1_bit_der (<em class="parameter"><code>unsigned <span class="type">char</span> *str</code></em>,
1445
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> bit_len</code></em>,
1446
<em class="parameter"><code>unsigned <span class="type">char</span> *der</code></em>,
1447
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *der_len</code></em>);</pre>
1449
Creates the DER coding for a BIT STRING type (length and pad
1451
<div class="variablelist"><table border="0">
1452
<col align="left" valign="top">
1455
<td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
1460
<td><p><span class="term"><em class="parameter"><code>bit_len</code></em> :</span></p></td>
1461
<td>number of meaningful bits in STR.
1465
<td><p><span class="term"><em class="parameter"><code>der</code></em> :</span></p></td>
1466
<td>string returned.
1470
<td><p><span class="term"><em class="parameter"><code>der_len</code></em> :</span></p></td>
1471
<td>number of meaningful bytes of DER
1472
(der[0]..der[ans_len-1]).
1479
<div class="refsect2" title="asn1_get_bit_der ()">
1480
<a name="asn1-get-bit-der"></a><h3>asn1_get_bit_der ()</h3>
1481
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_get_bit_der (<em class="parameter"><code>unsigned <span class="type">char</span> *der</code></em>,
1482
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> der_len</code></em>,
1483
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *ret_len</code></em>,
1484
<em class="parameter"><code>unsigned <span class="type">char</span> *str</code></em>,
1485
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> str_size</code></em>,
1486
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *bit_len</code></em>);</pre>
1488
Extract a BIT SEQUENCE from DER data.</p>
1489
<div class="variablelist"><table border="0">
1490
<col align="left" valign="top">
1493
<td><p><span class="term"><em class="parameter"><code>der</code></em> :</span></p></td>
1494
<td>DER data to decode containing the BIT SEQUENCE.
1498
<td><p><span class="term"><em class="parameter"><code>der_len</code></em> :</span></p></td>
1499
<td>Length of DER data to decode.
1503
<td><p><span class="term"><em class="parameter"><code>ret_len</code></em> :</span></p></td>
1504
<td>Output variable containing the length of the DER data.
1508
<td><p><span class="term"><em class="parameter"><code>str</code></em> :</span></p></td>
1509
<td>Pre-allocated output buffer to put decoded BIT SEQUENCE in.
1513
<td><p><span class="term"><em class="parameter"><code>str_size</code></em> :</span></p></td>
1514
<td>Length of pre-allocated output buffer.
1518
<td><p><span class="term"><em class="parameter"><code>bit_len</code></em> :</span></p></td>
1519
<td>Output variable containing the size of the BIT SEQUENCE.
1523
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1524
<td> Return ASN1_SUCCESS on success, or an error.
1531
<div class="refsect2" title="asn1_get_length_der ()">
1532
<a name="asn1-get-length-der"></a><h3>asn1_get_length_der ()</h3>
1533
<pre class="programlisting">signed <span class="returnvalue">long</span> asn1_get_length_der (<em class="parameter"><code>unsigned <span class="type">char</span> *der</code></em>,
1534
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> der_len</code></em>,
1535
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *len</code></em>);</pre>
1537
Extract a length field from DER data.</p>
1538
<div class="variablelist"><table border="0">
1539
<col align="left" valign="top">
1542
<td><p><span class="term"><em class="parameter"><code>der</code></em> :</span></p></td>
1543
<td>DER data to decode.
1547
<td><p><span class="term"><em class="parameter"><code>der_len</code></em> :</span></p></td>
1548
<td>Length of DER data to decode.
1552
<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
1553
<td>Output variable containing the length of the DER length field.
1557
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1558
<td> Return the decoded length value, or -1 on indefinite
1559
length, or -2 when the value was too big.
1566
<div class="refsect2" title="asn1_get_length_ber ()">
1567
<a name="asn1-get-length-ber"></a><h3>asn1_get_length_ber ()</h3>
1568
<pre class="programlisting">signed <span class="returnvalue">long</span> asn1_get_length_ber (<em class="parameter"><code>unsigned <span class="type">char</span> *ber</code></em>,
1569
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> ber_len</code></em>,
1570
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *len</code></em>);</pre>
1572
Extract a length field from BER data. The difference to
1573
<a class="link" href="gnutls-libtasn1.html#asn1-get-length-der" title="asn1_get_length_der ()"><code class="function">asn1_get_length_der()</code></a> is that this function will return a length
1574
even if the value has indefinite encoding.</p>
1575
<div class="variablelist"><table border="0">
1576
<col align="left" valign="top">
1579
<td><p><span class="term"><em class="parameter"><code>ber</code></em> :</span></p></td>
1580
<td>BER data to decode.
1584
<td><p><span class="term"><em class="parameter"><code>ber_len</code></em> :</span></p></td>
1585
<td>Length of BER data to decode.
1589
<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
1590
<td>Output variable containing the length of the BER length field.
1594
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1595
<td> Return the decoded length value, or negative value
1596
when the value was too big.
1602
<p class="since">Since 2.0</p>
1605
<div class="refsect2" title="asn1_length_der ()">
1606
<a name="asn1-length-der"></a><h3>asn1_length_der ()</h3>
1607
<pre class="programlisting"><span class="returnvalue">void</span> asn1_length_der (<em class="parameter"><code>unsigned long <a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> len</code></em>,
1608
<em class="parameter"><code>unsigned <span class="type">char</span> *ans</code></em>,
1609
<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> *ans_len</code></em>);</pre>
1611
Creates the DER coding for the LEN parameter (only the length).
1612
The <em class="parameter"><code>ans</code></em> buffer is pre-allocated and must have room for the output.</p>
1613
<div class="variablelist"><table border="0">
1614
<col align="left" valign="top">
1617
<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
1618
<td>value to convert.
1622
<td><p><span class="term"><em class="parameter"><code>ans</code></em> :</span></p></td>
1623
<td>string returned.
1627
<td><p><span class="term"><em class="parameter"><code>ans_len</code></em> :</span></p></td>
1628
<td>number of meaningful bytes of ANS (ans[0]..ans[ans_len-1]).
1635
<div class="refsect2" title="asn1_find_node ()">
1636
<a name="asn1-find-node"></a><h3>asn1_find_node ()</h3>
1637
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="returnvalue">ASN1_TYPE</span></a> asn1_find_node (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> pointer</code></em>,
1638
<em class="parameter"><code>const <span class="type">char</span> *name</code></em>);</pre>
1640
Searches for an element called NAME starting from POINTER. The
1641
name is composed by differents identifiers separated by dots. When
1642
*POINTER has a name, the first identifier must be the name of
1643
*POINTER, otherwise it must be the name of one child of *POINTER.</p>
1644
<div class="variablelist"><table border="0">
1645
<col align="left" valign="top">
1648
<td><p><span class="term"><em class="parameter"><code>pointer</code></em> :</span></p></td>
1649
<td>NODE_ASN element pointer.
1653
<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
1654
<td>null terminated string with the element's name to find.
1658
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1659
<td> the searching result. NULL if not found.
1666
<div class="refsect2" title="asn1_copy_node ()">
1667
<a name="asn1-copy-node"></a><h3>asn1_copy_node ()</h3>
1668
<pre class="programlisting"><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="returnvalue">asn1_retCode</span></a> asn1_copy_node (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> dst</code></em>,
1669
<em class="parameter"><code>const <span class="type">char</span> *dst_name</code></em>,
1670
<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#ASN1-TYPE:CAPS" title="ASN1_TYPE"><span class="type">ASN1_TYPE</span></a> src</code></em>,
1671
<em class="parameter"><code>const <span class="type">char</span> *src_name</code></em>);</pre>
1673
Create a deep copy of a ASN1_TYPE variable.</p>
1674
<div class="variablelist"><table border="0">
1675
<col align="left" valign="top">
1678
<td><p><span class="term"><em class="parameter"><code>dst</code></em> :</span></p></td>
1679
<td>Destination ASN1_TYPE node.
1683
<td><p><span class="term"><em class="parameter"><code>dst_name</code></em> :</span></p></td>
1684
<td>Field name in destination node.
1688
<td><p><span class="term"><em class="parameter"><code>src</code></em> :</span></p></td>
1689
<td>Source ASN1_TYPE node.
1693
<td><p><span class="term"><em class="parameter"><code>src_name</code></em> :</span></p></td>
1694
<td>Field name in source node.
1698
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1699
<td> Return ASN1_SUCCESS on success.
1706
<div class="refsect2" title="LIBTASN1_VERSION">
1707
<a name="LIBTASN1-VERSION:CAPS"></a><h3>LIBTASN1_VERSION</h3>
1708
<pre class="programlisting">#define LIBTASN1_VERSION ASN1_VERSION
1710
<div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
1711
<h3 class="title">Warning</h3>
1712
<p><code class="literal">LIBTASN1_VERSION</code> is deprecated and should not be used in newly-written code.</p>
1718
<div class="refsect2" title="MAX_NAME_SIZE">
1719
<a name="MAX-NAME-SIZE:CAPS"></a><h3>MAX_NAME_SIZE</h3>
1720
<pre class="programlisting"># define MAX_NAME_SIZE ASN1_MAX_NAME_SIZE
1722
<div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
1723
<h3 class="title">Warning</h3>
1724
<p><code class="literal">MAX_NAME_SIZE</code> is deprecated and should not be used in newly-written code.</p>
1730
<div class="refsect2" title="MAX_ERROR_DESCRIPTION_SIZE">
1731
<a name="MAX-ERROR-DESCRIPTION-SIZE:CAPS"></a><h3>MAX_ERROR_DESCRIPTION_SIZE</h3>
1732
<pre class="programlisting"># define MAX_ERROR_DESCRIPTION_SIZE ASN1_MAX_ERROR_DESCRIPTION_SIZE
1734
<div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
1735
<h3 class="title">Warning</h3>
1736
<p><code class="literal">MAX_ERROR_DESCRIPTION_SIZE</code> is deprecated and should not be used in newly-written code.</p>
1742
<div class="refsect2" title="libtasn1_strerror ()">
1743
<a name="libtasn1-strerror"></a><h3>libtasn1_strerror ()</h3>
1744
<pre class="programlisting">const <span class="returnvalue">char</span> * libtasn1_strerror (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="type">asn1_retCode</span></a> error</code></em>);</pre>
1745
<div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
1746
<h3 class="title">Warning</h3>
1747
<p><code class="literal">libtasn1_strerror</code> is deprecated and should not be used in newly-written code.</p>
1751
<div class="variablelist"><table border="0">
1752
<col align="left" valign="top">
1755
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
1760
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1768
<div class="refsect2" title="libtasn1_perror ()">
1769
<a name="libtasn1-perror"></a><h3>libtasn1_perror ()</h3>
1770
<pre class="programlisting"><span class="returnvalue">void</span> libtasn1_perror (<em class="parameter"><code><a class="link" href="gnutls-libtasn1.html#asn1-retCode" title="asn1_retCode"><span class="type">asn1_retCode</span></a> error</code></em>);</pre>
1771
<div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
1772
<h3 class="title">Warning</h3>
1773
<p><code class="literal">libtasn1_perror</code> is deprecated and should not be used in newly-written code.</p>
1777
<div class="variablelist"><table border="0">
1778
<col align="left" valign="top">
1780
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
1788
<div class="footer">
1790
Generated by GTK-Doc V1.14</div>
b'\\ No newline at end of file'