~ubuntu-branches/ubuntu/trusty/gnutls26/trusty-security

« back to all changes in this revision

Viewing changes to doc/reference/html/gnutls-crypto.html

  • Committer: Bazaar Package Importer
  • Author(s): Andreas Metzler
  • Date: 2010-04-22 19:29:52 UTC
  • mto: (12.4.3 experimental) (1.5.1)
  • mto: This revision was merged to the branch mainline in revision 26.
  • Revision ID: james.westby@ubuntu.com-20100422192952-gbj6cvaan8e4ejck
Tags: upstream-2.9.10
Import upstream version 2.9.10

Show diffs side-by-side

added added

removed removed

Lines of Context:
5
5
<title>crypto</title>
6
6
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
7
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">
 
8
<link rel="up" href="intro.html" title="GNU TLS API Reference Manual">
9
9
<link rel="prev" href="gnutls-openpgp.html" title="openpgp">
10
10
<link rel="next" href="gnutls-openssl.html" title="openssl">
11
 
<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
 
11
<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
12
12
<link rel="stylesheet" href="style.css" type="text/css">
13
 
<link rel="chapter" href="ch01.html" title="GNU TLS API Reference Manual">
14
 
<link rel="index" href="ix01.html" title="Index">
15
 
<link rel="index" href="ix02.html" title="Index of deprecated symbols">
16
 
<link rel="index" href="ix03.html" title="Index of new symbols in 2.4.0">
17
 
<link rel="index" href="ix04.html" title="Index of new symbols in 2.6.0">
18
 
<link rel="index" href="ix05.html" title="Index of new symbols in 2.8.0">
19
 
<link rel="index" href="ix06.html" title="Index of new symbols in 2.10.0">
20
13
</head>
21
14
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
22
15
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
23
16
<tr valign="middle">
24
17
<td><a accesskey="p" href="gnutls-openpgp.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
25
 
<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
 
18
<td><a accesskey="u" href="intro.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
26
19
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
27
20
<th width="100%" align="center">GNU TLS API Reference Manual</th>
28
21
<td><a accesskey="n" href="gnutls-openssl.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
29
22
</tr>
30
23
<tr><td colspan="5" class="shortcuts">
31
24
<a href="#gnutls-crypto.synopsis" class="shortcut">Top</a>
32
 
                 | 
33
 
                <a href="#gnutls-crypto.description" class="shortcut">Description</a>
 
25
                   | 
 
26
                  <a href="#gnutls-crypto.description" class="shortcut">Description</a>
34
27
</td></tr>
35
28
</table>
36
29
<div class="refentry" title="crypto">
44
37
</tr></table></div>
45
38
<div class="refsynopsisdiv" title="Synopsis">
46
39
<a name="gnutls-crypto.synopsis"></a><h2>Synopsis</h2>
47
 
<pre class="synopsis">
48
 
#define             <a class="link" href="gnutls-crypto.html#GNUTLS-CRYPTO-API-VERSION--CAPS" title="GNUTLS_CRYPTO_API_VERSION">GNUTLS_CRYPTO_API_VERSION</a>
49
 
int                 <a class="link" href="gnutls-crypto.html#init" title="init ()">init</a>                                (void **ctx);
50
 
int                 <a class="link" href="gnutls-crypto.html#setkey" title="setkey ()">setkey</a>                              (void *ctx,
51
 
                                                         const void *key,
52
 
                                                         size_t keysize);
53
 
int                 <a class="link" href="gnutls-crypto.html#setiv" title="setiv ()">setiv</a>                               (void *ctx,
54
 
                                                         const void *iv,
55
 
                                                         size_t ivsize);
56
 
int                 <a class="link" href="gnutls-crypto.html#encrypt" title="encrypt ()">encrypt</a>                             (void *ctx,
57
 
                                                         const void *plain,
58
 
                                                         size_t plainsize,
59
 
                                                         void *encr,
60
 
                                                         size_t encrsize);
61
 
int                 <a class="link" href="gnutls-crypto.html#decrypt" title="decrypt ()">decrypt</a>                             (void *ctx,
62
 
                                                         const void *encr,
63
 
                                                         size_t encrsize,
64
 
                                                         void *plain,
65
 
                                                         size_t plainsize);
66
 
void                <a class="link" href="gnutls-crypto.html#deinit" title="deinit ()">deinit</a>                              (void *ctx);
67
 
int                 <a class="link" href="gnutls-crypto.html#hash" title="hash ()">hash</a>                                (void *ctx,
68
 
                                                         const void *text,
69
 
                                                         size_t textsize);
70
 
int                 <a class="link" href="gnutls-crypto.html#copy" title="copy ()">copy</a>                                (void **dst_ctx,
71
 
                                                         void *src_ctx);
72
 
int                 <a class="link" href="gnutls-crypto.html#output" title="output ()">output</a>                              (void *src_ctx,
73
 
                                                         void *digest,
74
 
                                                         size_t digestsize);
75
 
typedef             <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-digest-st" title="gnutls_crypto_single_digest_st">gnutls_crypto_single_digest_st</a>;
 
40
<pre class="synopsis">typedef             <a class="link" href="gnutls-crypto.html#gnutls-cipher-hd-t" title="gnutls_cipher_hd_t">gnutls_cipher_hd_t</a>;
 
41
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-cipher-init" title="gnutls_cipher_init ()">gnutls_cipher_init</a>                  (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-cipher-hd-t" title="gnutls_cipher_hd_t"><span class="type">gnutls_cipher_hd_t</span></a> *handle</code></em>,
 
42
                                                         <em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-cipher-algorithm-t" title="enum gnutls_cipher_algorithm_t"><span class="type">gnutls_cipher_algorithm_t</span></a> cipher</code></em>,
 
43
                                                         <em class="parameter"><code>const <span class="type">gnutls_datum_t</span> *key</code></em>,
 
44
                                                         <em class="parameter"><code>const <span class="type">gnutls_datum_t</span> *iv</code></em>);
 
45
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-cipher-encrypt" title="gnutls_cipher_encrypt ()">gnutls_cipher_encrypt</a>               (<em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#gnutls-cipher-hd-t" title="gnutls_cipher_hd_t"><span class="type">gnutls_cipher_hd_t</span></a> handle</code></em>,
 
46
                                                         <em class="parameter"><code><span class="type">void</span> *text</code></em>,
 
47
                                                         <em class="parameter"><code><span class="type">size_t</span> textlen</code></em>);
 
48
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-cipher-decrypt" title="gnutls_cipher_decrypt ()">gnutls_cipher_decrypt</a>               (<em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#gnutls-cipher-hd-t" title="gnutls_cipher_hd_t"><span class="type">gnutls_cipher_hd_t</span></a> handle</code></em>,
 
49
                                                         <em class="parameter"><code><span class="type">void</span> *ciphertext</code></em>,
 
50
                                                         <em class="parameter"><code><span class="type">size_t</span> ciphertextlen</code></em>);
 
51
<span class="returnvalue">void</span>                <a class="link" href="gnutls-crypto.html#gnutls-cipher-deinit" title="gnutls_cipher_deinit ()">gnutls_cipher_deinit</a>                (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-cipher-hd-t" title="gnutls_cipher_hd_t"><span class="type">gnutls_cipher_hd_t</span></a> handle</code></em>);
 
52
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-cipher-get-block-size" title="gnutls_cipher_get_block_size ()">gnutls_cipher_get_block_size</a>        (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-cipher-algorithm-t" title="enum gnutls_cipher_algorithm_t"><span class="type">gnutls_cipher_algorithm_t</span></a> algorithm</code></em>);
 
53
typedef             <a class="link" href="gnutls-crypto.html#gnutls-hash-hd-t" title="gnutls_hash_hd_t">gnutls_hash_hd_t</a>;
 
54
typedef             <a class="link" href="gnutls-crypto.html#gnutls-hmac-hd-t" title="gnutls_hmac_hd_t">gnutls_hmac_hd_t</a>;
 
55
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-hmac-init" title="gnutls_hmac_init ()">gnutls_hmac_init</a>                    (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-hmac-hd-t" title="gnutls_hmac_hd_t"><span class="type">gnutls_hmac_hd_t</span></a> *dig</code></em>,
 
56
                                                         <em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-digest-algorithm-t" title="enum gnutls_digest_algorithm_t"><span class="type">gnutls_digest_algorithm_t</span></a> algorithm</code></em>,
 
57
                                                         <em class="parameter"><code>const <span class="type">void</span> *key</code></em>,
 
58
                                                         <em class="parameter"><code><span class="type">size_t</span> keylen</code></em>);
 
59
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-hmac" title="gnutls_hmac ()">gnutls_hmac</a>                         (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-hmac-hd-t" title="gnutls_hmac_hd_t"><span class="type">gnutls_hmac_hd_t</span></a> handle</code></em>,
 
60
                                                         <em class="parameter"><code>const <span class="type">void</span> *text</code></em>,
 
61
                                                         <em class="parameter"><code><span class="type">size_t</span> textlen</code></em>);
 
62
<span class="returnvalue">void</span>                <a class="link" href="gnutls-crypto.html#gnutls-hmac-output" title="gnutls_hmac_output ()">gnutls_hmac_output</a>                  (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-hmac-hd-t" title="gnutls_hmac_hd_t"><span class="type">gnutls_hmac_hd_t</span></a> handle</code></em>,
 
63
                                                         <em class="parameter"><code><span class="type">void</span> *digest</code></em>);
 
64
<span class="returnvalue">void</span>                <a class="link" href="gnutls-crypto.html#gnutls-hmac-deinit" title="gnutls_hmac_deinit ()">gnutls_hmac_deinit</a>                  (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-hmac-hd-t" title="gnutls_hmac_hd_t"><span class="type">gnutls_hmac_hd_t</span></a> handle</code></em>,
 
65
                                                         <em class="parameter"><code><span class="type">void</span> *digest</code></em>);
 
66
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-hmac-get-len" title="gnutls_hmac_get_len ()">gnutls_hmac_get_len</a>                 (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-mac-algorithm-t" title="enum gnutls_mac_algorithm_t"><span class="type">gnutls_mac_algorithm_t</span></a> algorithm</code></em>);
 
67
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-hmac-fast" title="gnutls_hmac_fast ()">gnutls_hmac_fast</a>                    (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-mac-algorithm-t" title="enum gnutls_mac_algorithm_t"><span class="type">gnutls_mac_algorithm_t</span></a> algorithm</code></em>,
 
68
                                                         <em class="parameter"><code>const <span class="type">void</span> *key</code></em>,
 
69
                                                         <em class="parameter"><code><span class="type">size_t</span> keylen</code></em>,
 
70
                                                         <em class="parameter"><code>const <span class="type">void</span> *text</code></em>,
 
71
                                                         <em class="parameter"><code><span class="type">size_t</span> textlen</code></em>,
 
72
                                                         <em class="parameter"><code><span class="type">void</span> *digest</code></em>);
 
73
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-hash-init" title="gnutls_hash_init ()">gnutls_hash_init</a>                    (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-hash-hd-t" title="gnutls_hash_hd_t"><span class="type">gnutls_hash_hd_t</span></a> *dig</code></em>,
 
74
                                                         <em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-digest-algorithm-t" title="enum gnutls_digest_algorithm_t"><span class="type">gnutls_digest_algorithm_t</span></a> algorithm</code></em>);
 
75
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-hash" title="gnutls_hash ()">gnutls_hash</a>                         (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-hash-hd-t" title="gnutls_hash_hd_t"><span class="type">gnutls_hash_hd_t</span></a> handle</code></em>,
 
76
                                                         <em class="parameter"><code>const <span class="type">void</span> *text</code></em>,
 
77
                                                         <em class="parameter"><code><span class="type">size_t</span> textlen</code></em>);
 
78
<span class="returnvalue">void</span>                <a class="link" href="gnutls-crypto.html#gnutls-hash-output" title="gnutls_hash_output ()">gnutls_hash_output</a>                  (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-hash-hd-t" title="gnutls_hash_hd_t"><span class="type">gnutls_hash_hd_t</span></a> handle</code></em>,
 
79
                                                         <em class="parameter"><code><span class="type">void</span> *digest</code></em>);
 
80
<span class="returnvalue">void</span>                <a class="link" href="gnutls-crypto.html#gnutls-hash-deinit" title="gnutls_hash_deinit ()">gnutls_hash_deinit</a>                  (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-hash-hd-t" title="gnutls_hash_hd_t"><span class="type">gnutls_hash_hd_t</span></a> handle</code></em>,
 
81
                                                         <em class="parameter"><code><span class="type">void</span> *digest</code></em>);
 
82
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-hash-get-len" title="gnutls_hash_get_len ()">gnutls_hash_get_len</a>                 (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-digest-algorithm-t" title="enum gnutls_digest_algorithm_t"><span class="type">gnutls_digest_algorithm_t</span></a> algorithm</code></em>);
 
83
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-hash-fast" title="gnutls_hash_fast ()">gnutls_hash_fast</a>                    (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-digest-algorithm-t" title="enum gnutls_digest_algorithm_t"><span class="type">gnutls_digest_algorithm_t</span></a> algorithm</code></em>,
 
84
                                                         <em class="parameter"><code>const <span class="type">void</span> *text</code></em>,
 
85
                                                         <em class="parameter"><code><span class="type">size_t</span> textlen</code></em>,
 
86
                                                         <em class="parameter"><code><span class="type">void</span> *digest</code></em>);
 
87
#define             <a class="link" href="gnutls-crypto.html#GNUTLS-CRYPTO-API-VERSION:CAPS" title="GNUTLS_CRYPTO_API_VERSION">GNUTLS_CRYPTO_API_VERSION</a>
 
88
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-cipher-st" title="gnutls_crypto_single_cipher_st">gnutls_crypto_single_cipher_st</a>
 
89
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-mac-st" title="gnutls_crypto_single_mac_st">gnutls_crypto_single_mac_st</a>
 
90
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-digest-st" title="gnutls_crypto_single_digest_st">gnutls_crypto_single_digest_st</a>
 
91
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (<a class="link" href="gnutls-crypto.html#init" title="init ()">*init</a>)                             (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-cipher-algorithm-t" title="enum gnutls_cipher_algorithm_t"><span class="type">gnutls_cipher_algorithm_t</span></a> Param1</code></em>,
 
92
                                                         <em class="parameter"><code><span class="type">void</span> **ctx</code></em>);
 
93
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (<a class="link" href="gnutls-crypto.html#setkey" title="setkey ()">*setkey</a>)                           (<em class="parameter"><code><span class="type">void</span> *ctx</code></em>,
 
94
                                                         <em class="parameter"><code>const <span class="type">void</span> *key</code></em>,
 
95
                                                         <em class="parameter"><code><span class="type">size_t</span> keysize</code></em>);
 
96
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (<a class="link" href="gnutls-crypto.html#setiv" title="setiv ()">*setiv</a>)                            (<em class="parameter"><code><span class="type">void</span> *ctx</code></em>,
 
97
                                                         <em class="parameter"><code>const <span class="type">void</span> *iv</code></em>,
 
98
                                                         <em class="parameter"><code><span class="type">size_t</span> ivsize</code></em>);
 
99
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (<a class="link" href="gnutls-crypto.html#encrypt" title="encrypt ()">*encrypt</a>)                          (<em class="parameter"><code><span class="type">void</span> *ctx</code></em>,
 
100
                                                         <em class="parameter"><code>const <span class="type">void</span> *plain</code></em>,
 
101
                                                         <em class="parameter"><code><span class="type">size_t</span> plainsize</code></em>,
 
102
                                                         <em class="parameter"><code><span class="type">void</span> *encr</code></em>,
 
103
                                                         <em class="parameter"><code><span class="type">size_t</span> encrsize</code></em>);
 
104
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (<a class="link" href="gnutls-crypto.html#decrypt" title="decrypt ()">*decrypt</a>)                          (<em class="parameter"><code><span class="type">void</span> *ctx</code></em>,
 
105
                                                         <em class="parameter"><code>const <span class="type">void</span> *encr</code></em>,
 
106
                                                         <em class="parameter"><code><span class="type">size_t</span> encrsize</code></em>,
 
107
                                                         <em class="parameter"><code><span class="type">void</span> *plain</code></em>,
 
108
                                                         <em class="parameter"><code><span class="type">size_t</span> plainsize</code></em>);
 
109
<span class="returnvalue">void</span>                (<a class="link" href="gnutls-crypto.html#deinit" title="deinit ()">*deinit</a>)                           (<em class="parameter"><code><span class="type">void</span> *ctx</code></em>);
 
110
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (<a class="link" href="gnutls-crypto.html#hash" title="hash ()">*hash</a>)                             (<em class="parameter"><code><span class="type">void</span> *ctx</code></em>,
 
111
                                                         <em class="parameter"><code>const <span class="type">void</span> *text</code></em>,
 
112
                                                         <em class="parameter"><code><span class="type">size_t</span> textsize</code></em>);
 
113
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (<a class="link" href="gnutls-crypto.html#copy" title="copy ()">*copy</a>)                             (<em class="parameter"><code><span class="type">void</span> **dst_ctx</code></em>,
 
114
                                                         <em class="parameter"><code><span class="type">void</span> *src_ctx</code></em>);
 
115
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (<a class="link" href="gnutls-crypto.html#output" title="output ()">*output</a>)                           (<em class="parameter"><code><span class="type">void</span> *src_ctx</code></em>,
 
116
                                                         <em class="parameter"><code><span class="type">void</span> *digest</code></em>,
 
117
                                                         <em class="parameter"><code><span class="type">size_t</span> digestsize</code></em>);
76
118
typedef             <a class="link" href="gnutls-crypto.html#gnutls-crypto-digest-st" title="gnutls_crypto_digest_st">gnutls_crypto_digest_st</a>;
77
119
enum                <a class="link" href="gnutls-crypto.html#gnutls-rnd-level-t" title="enum gnutls_rnd_level_t">gnutls_rnd_level_t</a>;
78
120
enum                <a class="link" href="gnutls-crypto.html#gnutls-pk-flag-t" title="enum gnutls_pk_flag_t">gnutls_pk_flag_t</a>;
79
 
int                 <a class="link" href="gnutls-crypto.html#rnd" title="rnd ()">rnd</a>                                 (void *ctx,
80
 
                                                         int level,
81
 
                                                         void *data,
82
 
                                                         size_t datasize);
 
121
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (<a class="link" href="gnutls-crypto.html#rnd" title="rnd ()">*rnd</a>)                              (<em class="parameter"><code><span class="type">void</span> *ctx</code></em>,
 
122
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> level</code></em>,
 
123
                                                         <em class="parameter"><code><span class="type">void</span> *data</code></em>,
 
124
                                                         <em class="parameter"><code><span class="type">size_t</span> datasize</code></em>);
83
125
typedef             <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>;
84
126
enum                <a class="link" href="gnutls-crypto.html#gnutls-bigint-format-t" title="enum gnutls_bigint_format_t">gnutls_bigint_format_t</a>;
85
 
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            <a class="link" href="gnutls-crypto.html#bigint-new" title="bigint_new ()">bigint_new</a>                          (int nbits);
86
 
void                <a class="link" href="gnutls-crypto.html#bigint-release" title="bigint_release ()">bigint_release</a>                      (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> n);
87
 
int                 <a class="link" href="gnutls-crypto.html#bigint-cmp" title="bigint_cmp ()">bigint_cmp</a>                          (const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> m1,
88
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> m2);
89
 
int                 <a class="link" href="gnutls-crypto.html#bigint-cmp-ui" title="bigint_cmp_ui ()">bigint_cmp_ui</a>                       (const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> m1,
90
 
                                                         unsigned long  m2);
91
 
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            <a class="link" href="gnutls-crypto.html#bigint-mod" title="bigint_mod ()">bigint_mod</a>                          (const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
92
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> b);
93
 
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            <a class="link" href="gnutls-crypto.html#bigint-set" title="bigint_set ()">bigint_set</a>                          (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
94
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> b);
95
 
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            <a class="link" href="gnutls-crypto.html#bigint-set-ui" title="bigint_set_ui ()">bigint_set_ui</a>                       (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
96
 
                                                         unsigned long  b);
97
 
unsigned int        <a class="link" href="gnutls-crypto.html#bigint-get-nbits" title="bigint_get_nbits ()">bigint_get_nbits</a>                    (const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a);
98
 
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            <a class="link" href="gnutls-crypto.html#bigint-powm" title="bigint_powm ()">bigint_powm</a>                         (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> w,
99
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> b,
100
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> e,
101
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> m);
102
 
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            <a class="link" href="gnutls-crypto.html#bigint-addm" title="bigint_addm ()">bigint_addm</a>                         (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> w,
103
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
104
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> b,
105
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> m);
106
 
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            <a class="link" href="gnutls-crypto.html#bigint-subm" title="bigint_subm ()">bigint_subm</a>                         (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> w,
107
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
108
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> b,
109
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> m);
110
 
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            <a class="link" href="gnutls-crypto.html#bigint-mulm" title="bigint_mulm ()">bigint_mulm</a>                         (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> w,
111
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
112
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> b,
113
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> m);
114
 
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            <a class="link" href="gnutls-crypto.html#bigint-mul" title="bigint_mul ()">bigint_mul</a>                          (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> w,
115
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
116
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> b);
117
 
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            <a class="link" href="gnutls-crypto.html#bigint-add-ui" title="bigint_add_ui ()">bigint_add_ui</a>                       (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> w,
118
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
119
 
                                                         unsigned long  b);
120
 
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            <a class="link" href="gnutls-crypto.html#bigint-sub-ui" title="bigint_sub_ui ()">bigint_sub_ui</a>                       (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> w,
121
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
122
 
                                                         unsigned long  b);
123
 
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            <a class="link" href="gnutls-crypto.html#bigint-mul-ui" title="bigint_mul_ui ()">bigint_mul_ui</a>                       (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> w,
124
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
125
 
                                                         unsigned long  b);
126
 
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            <a class="link" href="gnutls-crypto.html#bigint-div" title="bigint_div ()">bigint_div</a>                          (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> q,
127
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
128
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> b);
129
 
int                 <a class="link" href="gnutls-crypto.html#bigint-prime-check" title="bigint_prime_check ()">bigint_prime_check</a>                  (const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> pp);
130
 
int                 <a class="link" href="gnutls-crypto.html#bigint-generate-group" title="bigint_generate_group ()">bigint_generate_group</a>               (gnutls_group_st *gg,
131
 
                                                         unsigned int bits);
132
 
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            <a class="link" href="gnutls-crypto.html#bigint-scan" title="bigint_scan ()">bigint_scan</a>                         (const void *buf,
133
 
                                                         size_t buf_size,
134
 
                                                         <a class="link" href="gnutls-crypto.html#gnutls-bigint-format-t" title="enum gnutls_bigint_format_t">gnutls_bigint_format_t</a> format);
135
 
int                 <a class="link" href="gnutls-crypto.html#bigint-print" title="bigint_print ()">bigint_print</a>                        (const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
136
 
                                                         void *buf,
137
 
                                                         size_t *buf_size,
138
 
                                                         <a class="link" href="gnutls-crypto.html#gnutls-bigint-format-t" title="enum gnutls_bigint_format_t">gnutls_bigint_format_t</a> format);
139
 
#define             <a class="link" href="gnutls-crypto.html#GNUTLS-MAX-PK-PARAMS--CAPS" title="GNUTLS_MAX_PK_PARAMS">GNUTLS_MAX_PK_PARAMS</a>
140
 
void                <a class="link" href="gnutls-crypto.html#gnutls-pk-params-release" title="gnutls_pk_params_release ()">gnutls_pk_params_release</a>            (gnutls_pk_params_st *p);
141
 
void                <a class="link" href="gnutls-crypto.html#gnutls-pk-params-init" title="gnutls_pk_params_init ()">gnutls_pk_params_init</a>               (gnutls_pk_params_st *p);
 
127
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (<a class="link" href="gnutls-crypto.html#bigint-new" title="bigint_new ()">*bigint_new</a>)                       (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> nbits</code></em>);
 
128
<span class="returnvalue">void</span>                (<a class="link" href="gnutls-crypto.html#bigint-release" title="bigint_release ()">*bigint_release</a>)                   (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> n</code></em>);
 
129
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (<a class="link" href="gnutls-crypto.html#bigint-cmp" title="bigint_cmp ()">*bigint_cmp</a>)                       (<em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> m1</code></em>,
 
130
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> m2</code></em>);
 
131
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (<a class="link" href="gnutls-crypto.html#bigint-cmp-ui" title="bigint_cmp_ui ()">*bigint_cmp_ui</a>)                    (<em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> m1</code></em>,
 
132
                                                         <em class="parameter"><code><span class="type">unsigned long </span> m2</code></em>);
 
133
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (<a class="link" href="gnutls-crypto.html#bigint-mod" title="bigint_mod ()">*bigint_mod</a>)                       (<em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
134
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> b</code></em>);
 
135
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (<a class="link" href="gnutls-crypto.html#bigint-set" title="bigint_set ()">*bigint_set</a>)                       (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
136
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> b</code></em>);
 
137
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (<a class="link" href="gnutls-crypto.html#bigint-set-ui" title="bigint_set_ui ()">*bigint_set_ui</a>)                    (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
138
                                                         <em class="parameter"><code><span class="type">unsigned long </span> b</code></em>);
 
139
<span class="returnvalue">unsigned</span>            <a class="link" href="gnutls-crypto.html#int" title="int ()">int</a>                                 ();
 
140
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (<a class="link" href="gnutls-crypto.html#bigint-powm" title="bigint_powm ()">*bigint_powm</a>)                      (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> w</code></em>,
 
141
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> b</code></em>,
 
142
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> e</code></em>,
 
143
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> m</code></em>);
 
144
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (<a class="link" href="gnutls-crypto.html#bigint-addm" title="bigint_addm ()">*bigint_addm</a>)                      (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> w</code></em>,
 
145
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
146
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> b</code></em>,
 
147
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> m</code></em>);
 
148
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (<a class="link" href="gnutls-crypto.html#bigint-subm" title="bigint_subm ()">*bigint_subm</a>)                      (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> w</code></em>,
 
149
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
150
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> b</code></em>,
 
151
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> m</code></em>);
 
152
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (<a class="link" href="gnutls-crypto.html#bigint-mulm" title="bigint_mulm ()">*bigint_mulm</a>)                      (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> w</code></em>,
 
153
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
154
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> b</code></em>,
 
155
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> m</code></em>);
 
156
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (<a class="link" href="gnutls-crypto.html#bigint-mul" title="bigint_mul ()">*bigint_mul</a>)                       (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> w</code></em>,
 
157
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
158
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> b</code></em>);
 
159
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (<a class="link" href="gnutls-crypto.html#bigint-add-ui" title="bigint_add_ui ()">*bigint_add_ui</a>)                    (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> w</code></em>,
 
160
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
161
                                                         <em class="parameter"><code><span class="type">unsigned long </span> b</code></em>);
 
162
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (<a class="link" href="gnutls-crypto.html#bigint-sub-ui" title="bigint_sub_ui ()">*bigint_sub_ui</a>)                    (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> w</code></em>,
 
163
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
164
                                                         <em class="parameter"><code><span class="type">unsigned long </span> b</code></em>);
 
165
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (<a class="link" href="gnutls-crypto.html#bigint-mul-ui" title="bigint_mul_ui ()">*bigint_mul_ui</a>)                    (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> w</code></em>,
 
166
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
167
                                                         <em class="parameter"><code><span class="type">unsigned long </span> b</code></em>);
 
168
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (<a class="link" href="gnutls-crypto.html#bigint-div" title="bigint_div ()">*bigint_div</a>)                       (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> q</code></em>,
 
169
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
170
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> b</code></em>);
 
171
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (<a class="link" href="gnutls-crypto.html#bigint-prime-check" title="bigint_prime_check ()">*bigint_prime_check</a>)               (<em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> pp</code></em>);
 
172
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (<a class="link" href="gnutls-crypto.html#bigint-generate-group" title="bigint_generate_group ()">*bigint_generate_group</a>)            (<em class="parameter"><code><span class="type">gnutls_group_st</span> *gg</code></em>,
 
173
                                                         <em class="parameter"><code>unsigned <a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> bits</code></em>);
 
174
<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (<a class="link" href="gnutls-crypto.html#bigint-scan" title="bigint_scan ()">*bigint_scan</a>)                      (<em class="parameter"><code>const <span class="type">void</span> *buf</code></em>,
 
175
                                                         <em class="parameter"><code><span class="type">size_t</span> buf_size</code></em>,
 
176
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-bigint-format-t" title="enum gnutls_bigint_format_t"><span class="type">gnutls_bigint_format_t</span></a> format</code></em>);
 
177
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (<a class="link" href="gnutls-crypto.html#bigint-print" title="bigint_print ()">*bigint_print</a>)                     (<em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
178
                                                         <em class="parameter"><code><span class="type">void</span> *buf</code></em>,
 
179
                                                         <em class="parameter"><code><span class="type">size_t</span> *buf_size</code></em>,
 
180
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-bigint-format-t" title="enum gnutls_bigint_format_t"><span class="type">gnutls_bigint_format_t</span></a> format</code></em>);
 
181
#define             <a class="link" href="gnutls-crypto.html#GNUTLS-MAX-PK-PARAMS:CAPS" title="GNUTLS_MAX_PK_PARAMS">GNUTLS_MAX_PK_PARAMS</a>
 
182
<span class="returnvalue">void</span>                <a class="link" href="gnutls-crypto.html#gnutls-pk-params-release" title="gnutls_pk_params_release ()">gnutls_pk_params_release</a>            (<em class="parameter"><code><span class="type">gnutls_pk_params_st</span> *p</code></em>);
 
183
<span class="returnvalue">void</span>                <a class="link" href="gnutls-crypto.html#gnutls-pk-params-init" title="gnutls_pk_params_init ()">gnutls_pk_params_init</a>               (<em class="parameter"><code><span class="type">gnutls_pk_params_st</span> *p</code></em>);
142
184
enum                <a class="link" href="gnutls-crypto.html#gnutls-direction-t" title="enum gnutls_direction_t">gnutls_direction_t</a>;
143
 
int                 <a class="link" href="gnutls-crypto.html#sign" title="sign ()">sign</a>                                (<a class="link" href="gnutls-gnutls.html#gnutls-pk-algorithm-t" title="enum gnutls_pk_algorithm_t">gnutls_pk_algorithm_t</a> ,
144
 
                                                         gnutls_datum_t *signature,
145
 
                                                         const gnutls_datum_t *data,
146
 
                                                         const gnutls_pk_params_st *);
147
 
int                 <a class="link" href="gnutls-crypto.html#verify" title="verify ()">verify</a>                              (<a class="link" href="gnutls-gnutls.html#gnutls-pk-algorithm-t" title="enum gnutls_pk_algorithm_t">gnutls_pk_algorithm_t</a> ,
148
 
                                                         const gnutls_datum_t *data,
149
 
                                                         const gnutls_datum_t *signature,
150
 
                                                         const gnutls_pk_params_st *);
151
 
int                 <a class="link" href="gnutls-crypto.html#generate" title="generate ()">generate</a>                            (<a class="link" href="gnutls-gnutls.html#gnutls-pk-algorithm-t" title="enum gnutls_pk_algorithm_t">gnutls_pk_algorithm_t</a> ,
152
 
                                                         unsigned int level,
153
 
                                                         gnutls_pk_params_st *);
154
 
int                 <a class="link" href="gnutls-crypto.html#pk-fixup-private-params" title="pk_fixup_private_params ()">pk_fixup_private_params</a>             (<a class="link" href="gnutls-gnutls.html#gnutls-pk-algorithm-t" title="enum gnutls_pk_algorithm_t">gnutls_pk_algorithm_t</a> ,
155
 
                                                         <a class="link" href="gnutls-crypto.html#gnutls-direction-t" title="enum gnutls_direction_t">gnutls_direction_t</a> ,
156
 
                                                         gnutls_pk_params_st *);
157
 
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-cipher-register" title="gnutls_crypto_single_cipher_register()">gnutls_crypto_single_cipher_register</a>(algo, prio, st)
158
 
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-mac-register" title="gnutls_crypto_single_mac_register()">gnutls_crypto_single_mac_register</a>   (algo, prio, st)
159
 
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-digest-register" title="gnutls_crypto_single_digest_register()">gnutls_crypto_single_digest_register</a>(algo, prio, st)
160
 
int                 <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-cipher-register2" title="gnutls_crypto_single_cipher_register2 ()">gnutls_crypto_single_cipher_register2</a>
161
 
                                                        (<a class="link" href="gnutls-gnutls.html#gnutls-cipher-algorithm-t" title="enum gnutls_cipher_algorithm_t">gnutls_cipher_algorithm_t</a> algorithm,
162
 
                                                         int priority,
163
 
                                                         int version,
164
 
                                                         gnutls_crypto_single_cipher_st *s);
165
 
int                 <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-mac-register2" title="gnutls_crypto_single_mac_register2 ()">gnutls_crypto_single_mac_register2</a>  (<a class="link" href="gnutls-gnutls.html#gnutls-mac-algorithm-t" title="enum gnutls_mac_algorithm_t">gnutls_mac_algorithm_t</a> algorithm,
166
 
                                                         int priority,
167
 
                                                         int version,
168
 
                                                         gnutls_crypto_single_mac_st *s);
169
 
int                 <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-digest-register2" title="gnutls_crypto_single_digest_register2 ()">gnutls_crypto_single_digest_register2</a>
170
 
                                                        (<a class="link" href="gnutls-gnutls.html#gnutls-digest-algorithm-t" title="enum gnutls_digest_algorithm_t">gnutls_digest_algorithm_t</a> algorithm,
171
 
                                                         int priority,
172
 
                                                         int version,
173
 
                                                         <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-digest-st" title="gnutls_crypto_single_digest_st">gnutls_crypto_single_digest_st</a> *s);
174
 
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-cipher-register" title="gnutls_crypto_cipher_register()">gnutls_crypto_cipher_register</a>       (prio, st)
175
 
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-mac-register" title="gnutls_crypto_mac_register()">gnutls_crypto_mac_register</a>          (prio, st)
176
 
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-digest-register" title="gnutls_crypto_digest_register()">gnutls_crypto_digest_register</a>       (prio, st)
177
 
int                 <a class="link" href="gnutls-crypto.html#gnutls-crypto-cipher-register2" title="gnutls_crypto_cipher_register2 ()">gnutls_crypto_cipher_register2</a>      (int priority,
178
 
                                                         int version,
179
 
                                                         gnutls_crypto_cipher_st *s);
180
 
int                 <a class="link" href="gnutls-crypto.html#gnutls-crypto-mac-register2" title="gnutls_crypto_mac_register2 ()">gnutls_crypto_mac_register2</a>         (int priority,
181
 
                                                         int version,
182
 
                                                         gnutls_crypto_mac_st *s);
183
 
int                 <a class="link" href="gnutls-crypto.html#gnutls-crypto-digest-register2" title="gnutls_crypto_digest_register2 ()">gnutls_crypto_digest_register2</a>      (int priority,
184
 
                                                         int version,
185
 
                                                         <a class="link" href="gnutls-crypto.html#gnutls-crypto-digest-st" title="gnutls_crypto_digest_st">gnutls_crypto_digest_st</a> *s);
186
 
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-rnd-register" title="gnutls_crypto_rnd_register()">gnutls_crypto_rnd_register</a>          (prio, st)
187
 
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-pk-register" title="gnutls_crypto_pk_register()">gnutls_crypto_pk_register</a>           (prio, st)
188
 
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-bigint-register" title="gnutls_crypto_bigint_register()">gnutls_crypto_bigint_register</a>       (prio, st)
189
 
int                 <a class="link" href="gnutls-crypto.html#gnutls-crypto-rnd-register2" title="gnutls_crypto_rnd_register2 ()">gnutls_crypto_rnd_register2</a>         (int priority,
190
 
                                                         int version,
191
 
                                                         gnutls_crypto_rnd_st *s);
192
 
int                 <a class="link" href="gnutls-crypto.html#gnutls-crypto-pk-register2" title="gnutls_crypto_pk_register2 ()">gnutls_crypto_pk_register2</a>          (int priority,
193
 
                                                         int version,
194
 
                                                         gnutls_crypto_pk_st *s);
195
 
int                 <a class="link" href="gnutls-crypto.html#gnutls-crypto-bigint-register2" title="gnutls_crypto_bigint_register2 ()">gnutls_crypto_bigint_register2</a>      (int priority,
196
 
                                                         int version,
197
 
                                                         gnutls_crypto_bigint_st *s);
 
185
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (<a class="link" href="gnutls-crypto.html#sign" title="sign ()">*sign</a>)                             (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-pk-algorithm-t" title="enum gnutls_pk_algorithm_t"><span class="type">gnutls_pk_algorithm_t</span></a> Param1</code></em>,
 
186
                                                         <em class="parameter"><code><span class="type">gnutls_datum_t</span> *signature</code></em>,
 
187
                                                         <em class="parameter"><code>const <span class="type">gnutls_datum_t</span> *data</code></em>,
 
188
                                                         <em class="parameter"><code>const <span class="type">gnutls_pk_params_st</span> *private</code></em>);
 
189
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (<a class="link" href="gnutls-crypto.html#verify" title="verify ()">*verify</a>)                           (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-pk-algorithm-t" title="enum gnutls_pk_algorithm_t"><span class="type">gnutls_pk_algorithm_t</span></a> Param1</code></em>,
 
190
                                                         <em class="parameter"><code>const <span class="type">gnutls_datum_t</span> *data</code></em>,
 
191
                                                         <em class="parameter"><code>const <span class="type">gnutls_datum_t</span> *signature</code></em>,
 
192
                                                         <em class="parameter"><code>const <span class="type">gnutls_pk_params_st</span> *public</code></em>);
 
193
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (<a class="link" href="gnutls-crypto.html#generate" title="generate ()">*generate</a>)                         (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-pk-algorithm-t" title="enum gnutls_pk_algorithm_t"><span class="type">gnutls_pk_algorithm_t</span></a> Param1</code></em>,
 
194
                                                         <em class="parameter"><code>unsigned <a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> nbits</code></em>,
 
195
                                                         <em class="parameter"><code><span class="type">gnutls_pk_params_st</span> *Param3</code></em>);
 
196
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (<a class="link" href="gnutls-crypto.html#pk-fixup-private-params" title="pk_fixup_private_params ()">*pk_fixup_private_params</a>)          (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-pk-algorithm-t" title="enum gnutls_pk_algorithm_t"><span class="type">gnutls_pk_algorithm_t</span></a> Param1</code></em>,
 
197
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-direction-t" title="enum gnutls_direction_t"><span class="type">gnutls_direction_t</span></a> Param2</code></em>,
 
198
                                                         <em class="parameter"><code><span class="type">gnutls_pk_params_st</span> *Param3</code></em>);
 
199
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-cipher-register" title="gnutls_crypto_single_cipher_register()">gnutls_crypto_single_cipher_register</a>(algo,
 
200
                                                         prio,
 
201
                                                         st)
 
202
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-mac-register" title="gnutls_crypto_single_mac_register()">gnutls_crypto_single_mac_register</a>   (algo,
 
203
                                                         prio,
 
204
                                                         st)
 
205
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-digest-register" title="gnutls_crypto_single_digest_register()">gnutls_crypto_single_digest_register</a>(algo,
 
206
                                                         prio,
 
207
                                                         st)
 
208
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-cipher-register2" title="gnutls_crypto_single_cipher_register2 ()">gnutls_crypto_single_cipher_register2</a>
 
209
                                                        (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-cipher-algorithm-t" title="enum gnutls_cipher_algorithm_t"><span class="type">gnutls_cipher_algorithm_t</span></a> algorithm</code></em>,
 
210
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> priority</code></em>,
 
211
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> version</code></em>,
 
212
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-cipher-st" title="gnutls_crypto_single_cipher_st"><span class="type">gnutls_crypto_single_cipher_st</span></a> *s</code></em>);
 
213
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-mac-register2" title="gnutls_crypto_single_mac_register2 ()">gnutls_crypto_single_mac_register2</a>  (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-mac-algorithm-t" title="enum gnutls_mac_algorithm_t"><span class="type">gnutls_mac_algorithm_t</span></a> algorithm</code></em>,
 
214
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> priority</code></em>,
 
215
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> version</code></em>,
 
216
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-mac-st" title="gnutls_crypto_single_mac_st"><span class="type">gnutls_crypto_single_mac_st</span></a> *s</code></em>);
 
217
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-digest-register2" title="gnutls_crypto_single_digest_register2 ()">gnutls_crypto_single_digest_register2</a>
 
218
                                                        (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-digest-algorithm-t" title="enum gnutls_digest_algorithm_t"><span class="type">gnutls_digest_algorithm_t</span></a> algorithm</code></em>,
 
219
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> priority</code></em>,
 
220
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> version</code></em>,
 
221
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-digest-st" title="gnutls_crypto_single_digest_st"><span class="type">gnutls_crypto_single_digest_st</span></a> *s</code></em>);
 
222
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-cipher-register" title="gnutls_crypto_cipher_register()">gnutls_crypto_cipher_register</a>       (prio,
 
223
                                                         st)
 
224
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-mac-register" title="gnutls_crypto_mac_register()">gnutls_crypto_mac_register</a>          (prio,
 
225
                                                         st)
 
226
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-digest-register" title="gnutls_crypto_digest_register()">gnutls_crypto_digest_register</a>       (prio,
 
227
                                                         st)
 
228
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-crypto-cipher-register2" title="gnutls_crypto_cipher_register2 ()">gnutls_crypto_cipher_register2</a>      (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> priority</code></em>,
 
229
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> version</code></em>,
 
230
                                                         <em class="parameter"><code>const <span class="type">gnutls_crypto_cipher_st</span> *s</code></em>);
 
231
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-crypto-mac-register2" title="gnutls_crypto_mac_register2 ()">gnutls_crypto_mac_register2</a>         (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> priority</code></em>,
 
232
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> version</code></em>,
 
233
                                                         <em class="parameter"><code>const <span class="type">gnutls_crypto_mac_st</span> *s</code></em>);
 
234
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-crypto-digest-register2" title="gnutls_crypto_digest_register2 ()">gnutls_crypto_digest_register2</a>      (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> priority</code></em>,
 
235
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> version</code></em>,
 
236
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#gnutls-crypto-digest-st" title="gnutls_crypto_digest_st"><span class="type">gnutls_crypto_digest_st</span></a> *s</code></em>);
 
237
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-rnd-register" title="gnutls_crypto_rnd_register()">gnutls_crypto_rnd_register</a>          (prio,
 
238
                                                         st)
 
239
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-pk-register" title="gnutls_crypto_pk_register()">gnutls_crypto_pk_register</a>           (prio,
 
240
                                                         st)
 
241
#define             <a class="link" href="gnutls-crypto.html#gnutls-crypto-bigint-register" title="gnutls_crypto_bigint_register()">gnutls_crypto_bigint_register</a>       (prio,
 
242
                                                         st)
 
243
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-crypto-rnd-register2" title="gnutls_crypto_rnd_register2 ()">gnutls_crypto_rnd_register2</a>         (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> priority</code></em>,
 
244
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> version</code></em>,
 
245
                                                         <em class="parameter"><code>const <span class="type">gnutls_crypto_rnd_st</span> *s</code></em>);
 
246
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-crypto-pk-register2" title="gnutls_crypto_pk_register2 ()">gnutls_crypto_pk_register2</a>          (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> priority</code></em>,
 
247
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> version</code></em>,
 
248
                                                         <em class="parameter"><code>const <span class="type">gnutls_crypto_pk_st</span> *s</code></em>);
 
249
<a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 <a class="link" href="gnutls-crypto.html#gnutls-crypto-bigint-register2" title="gnutls_crypto_bigint_register2 ()">gnutls_crypto_bigint_register2</a>      (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> priority</code></em>,
 
250
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> version</code></em>,
 
251
                                                         <em class="parameter"><code>const <span class="type">gnutls_crypto_bigint_st</span> *s</code></em>);
198
252
</pre>
199
253
</div>
200
254
<div class="refsect1" title="Description">
201
255
<a name="gnutls-crypto.description"></a><h2>Description</h2>
 
256
<p>
 
257
</p>
202
258
</div>
203
259
<div class="refsect1" title="Details">
204
260
<a name="gnutls-crypto.details"></a><h2>Details</h2>
 
261
<div class="refsect2" title="gnutls_cipher_hd_t">
 
262
<a name="gnutls-cipher-hd-t"></a><h3>gnutls_cipher_hd_t</h3>
 
263
<pre class="programlisting">typedef struct cipher_hd_st *gnutls_cipher_hd_t;
 
264
</pre>
 
265
<p>
 
266
</p>
 
267
</div>
 
268
<hr>
 
269
<div class="refsect2" title="gnutls_cipher_init ()">
 
270
<a name="gnutls-cipher-init"></a><h3>gnutls_cipher_init ()</h3>
 
271
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_cipher_init                  (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-cipher-hd-t" title="gnutls_cipher_hd_t"><span class="type">gnutls_cipher_hd_t</span></a> *handle</code></em>,
 
272
                                                         <em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-cipher-algorithm-t" title="enum gnutls_cipher_algorithm_t"><span class="type">gnutls_cipher_algorithm_t</span></a> cipher</code></em>,
 
273
                                                         <em class="parameter"><code>const <span class="type">gnutls_datum_t</span> *key</code></em>,
 
274
                                                         <em class="parameter"><code>const <span class="type">gnutls_datum_t</span> *iv</code></em>);</pre>
 
275
<p>
 
276
This function will initialize an context that can be used for
 
277
encryption/decryption of data. This will effectively use the
 
278
current crypto backend in use by gnutls or the cryptographic
 
279
accelerator in use.</p>
 
280
<div class="variablelist"><table border="0">
 
281
<col align="left" valign="top">
 
282
<tbody>
 
283
<tr>
 
284
<td><p><span class="term"><em class="parameter"><code>handle</code></em> :</span></p></td>
 
285
<td>is a <a class="link" href="gnutls-crypto.html#gnutls-cipher-hd-t" title="gnutls_cipher_hd_t"><span class="type">gnutls_cipher_hd_t</span></a> structure.
 
286
</td>
 
287
</tr>
 
288
<tr>
 
289
<td><p><span class="term"><em class="parameter"><code>cipher</code></em> :</span></p></td>
 
290
<td>the encryption algorithm to use
 
291
</td>
 
292
</tr>
 
293
<tr>
 
294
<td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td>
 
295
<td>The key to be used for encryption
 
296
</td>
 
297
</tr>
 
298
<tr>
 
299
<td><p><span class="term"><em class="parameter"><code>iv</code></em> :</span></p></td>
 
300
<td>The IV to use (if not applicable set NULL)
 
301
</td>
 
302
</tr>
 
303
<tr>
 
304
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
305
<td> Zero or a negative value on error.
 
306
 
 
307
</td>
 
308
</tr>
 
309
</tbody>
 
310
</table></div>
 
311
<p class="since">Since 2.10.0</p>
 
312
</div>
 
313
<hr>
 
314
<div class="refsect2" title="gnutls_cipher_encrypt ()">
 
315
<a name="gnutls-cipher-encrypt"></a><h3>gnutls_cipher_encrypt ()</h3>
 
316
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_cipher_encrypt               (<em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#gnutls-cipher-hd-t" title="gnutls_cipher_hd_t"><span class="type">gnutls_cipher_hd_t</span></a> handle</code></em>,
 
317
                                                         <em class="parameter"><code><span class="type">void</span> *text</code></em>,
 
318
                                                         <em class="parameter"><code><span class="type">size_t</span> textlen</code></em>);</pre>
 
319
<p>
 
320
This function will encrypt the given data using the algorithm
 
321
specified by the context.</p>
 
322
<div class="variablelist"><table border="0">
 
323
<col align="left" valign="top">
 
324
<tbody>
 
325
<tr>
 
326
<td><p><span class="term"><em class="parameter"><code>handle</code></em> :</span></p></td>
 
327
<td>is a <a class="link" href="gnutls-crypto.html#gnutls-cipher-hd-t" title="gnutls_cipher_hd_t"><span class="type">gnutls_cipher_hd_t</span></a> structure.
 
328
</td>
 
329
</tr>
 
330
<tr>
 
331
<td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td>
 
332
<td>the data to encrypt
 
333
</td>
 
334
</tr>
 
335
<tr>
 
336
<td><p><span class="term"><em class="parameter"><code>textlen</code></em> :</span></p></td>
 
337
<td>The length of data to encrypt
 
338
</td>
 
339
</tr>
 
340
<tr>
 
341
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
342
<td> Zero or a negative value on error.
 
343
 
 
344
</td>
 
345
</tr>
 
346
</tbody>
 
347
</table></div>
 
348
<p class="since">Since 2.10.0</p>
 
349
</div>
 
350
<hr>
 
351
<div class="refsect2" title="gnutls_cipher_decrypt ()">
 
352
<a name="gnutls-cipher-decrypt"></a><h3>gnutls_cipher_decrypt ()</h3>
 
353
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_cipher_decrypt               (<em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#gnutls-cipher-hd-t" title="gnutls_cipher_hd_t"><span class="type">gnutls_cipher_hd_t</span></a> handle</code></em>,
 
354
                                                         <em class="parameter"><code><span class="type">void</span> *ciphertext</code></em>,
 
355
                                                         <em class="parameter"><code><span class="type">size_t</span> ciphertextlen</code></em>);</pre>
 
356
<p>
 
357
This function will decrypt the given data using the algorithm
 
358
specified by the context.</p>
 
359
<div class="variablelist"><table border="0">
 
360
<col align="left" valign="top">
 
361
<tbody>
 
362
<tr>
 
363
<td><p><span class="term"><em class="parameter"><code>handle</code></em> :</span></p></td>
 
364
<td>is a <a class="link" href="gnutls-crypto.html#gnutls-cipher-hd-t" title="gnutls_cipher_hd_t"><span class="type">gnutls_cipher_hd_t</span></a> structure.
 
365
</td>
 
366
</tr>
 
367
<tr>
 
368
<td><p><span class="term"><em class="parameter"><code>ciphertext</code></em> :</span></p></td>
 
369
<td>the data to encrypt
 
370
</td>
 
371
</tr>
 
372
<tr>
 
373
<td><p><span class="term"><em class="parameter"><code>ciphertextlen</code></em> :</span></p></td>
 
374
<td>The length of data to encrypt
 
375
</td>
 
376
</tr>
 
377
<tr>
 
378
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
379
<td> Zero or a negative value on error.
 
380
 
 
381
</td>
 
382
</tr>
 
383
</tbody>
 
384
</table></div>
 
385
<p class="since">Since 2.10.0</p>
 
386
</div>
 
387
<hr>
 
388
<div class="refsect2" title="gnutls_cipher_deinit ()">
 
389
<a name="gnutls-cipher-deinit"></a><h3>gnutls_cipher_deinit ()</h3>
 
390
<pre class="programlisting"><span class="returnvalue">void</span>                gnutls_cipher_deinit                (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-cipher-hd-t" title="gnutls_cipher_hd_t"><span class="type">gnutls_cipher_hd_t</span></a> handle</code></em>);</pre>
 
391
<p>
 
392
This function will deinitialize all resources occupied by the given
 
393
encryption context.</p>
 
394
<div class="variablelist"><table border="0">
 
395
<col align="left" valign="top">
 
396
<tbody><tr>
 
397
<td><p><span class="term"><em class="parameter"><code>handle</code></em> :</span></p></td>
 
398
<td>is a <a class="link" href="gnutls-crypto.html#gnutls-cipher-hd-t" title="gnutls_cipher_hd_t"><span class="type">gnutls_cipher_hd_t</span></a> structure.
 
399
</td>
 
400
</tr></tbody>
 
401
</table></div>
 
402
<p class="since">Since 2.10.0</p>
 
403
</div>
 
404
<hr>
 
405
<div class="refsect2" title="gnutls_cipher_get_block_size ()">
 
406
<a name="gnutls-cipher-get-block-size"></a><h3>gnutls_cipher_get_block_size ()</h3>
 
407
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_cipher_get_block_size        (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-cipher-algorithm-t" title="enum gnutls_cipher_algorithm_t"><span class="type">gnutls_cipher_algorithm_t</span></a> algorithm</code></em>);</pre>
 
408
<p>
 
409
Get block size for encryption algorithm.</p>
 
410
<div class="variablelist"><table border="0">
 
411
<col align="left" valign="top">
 
412
<tbody>
 
413
<tr>
 
414
<td><p><span class="term"><em class="parameter"><code>algorithm</code></em> :</span></p></td>
 
415
<td>is an encryption algorithm
 
416
</td>
 
417
</tr>
 
418
<tr>
 
419
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
420
<td> block size for encryption algorithm.
 
421
 
 
422
</td>
 
423
</tr>
 
424
</tbody>
 
425
</table></div>
 
426
<p class="since">Since 2.10.0</p>
 
427
</div>
 
428
<hr>
 
429
<div class="refsect2" title="gnutls_hash_hd_t">
 
430
<a name="gnutls-hash-hd-t"></a><h3>gnutls_hash_hd_t</h3>
 
431
<pre class="programlisting">typedef struct hash_hd_st *gnutls_hash_hd_t;
 
432
</pre>
 
433
<p>
 
434
</p>
 
435
</div>
 
436
<hr>
 
437
<div class="refsect2" title="gnutls_hmac_hd_t">
 
438
<a name="gnutls-hmac-hd-t"></a><h3>gnutls_hmac_hd_t</h3>
 
439
<pre class="programlisting">typedef struct hmac_hd_st *gnutls_hmac_hd_t;
 
440
</pre>
 
441
<p>
 
442
</p>
 
443
</div>
 
444
<hr>
 
445
<div class="refsect2" title="gnutls_hmac_init ()">
 
446
<a name="gnutls-hmac-init"></a><h3>gnutls_hmac_init ()</h3>
 
447
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_hmac_init                    (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-hmac-hd-t" title="gnutls_hmac_hd_t"><span class="type">gnutls_hmac_hd_t</span></a> *dig</code></em>,
 
448
                                                         <em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-digest-algorithm-t" title="enum gnutls_digest_algorithm_t"><span class="type">gnutls_digest_algorithm_t</span></a> algorithm</code></em>,
 
449
                                                         <em class="parameter"><code>const <span class="type">void</span> *key</code></em>,
 
450
                                                         <em class="parameter"><code><span class="type">size_t</span> keylen</code></em>);</pre>
 
451
<p>
 
452
This function will initialize an context that can be used to
 
453
produce a Message Authentication Code (MAC) of data.  This will
 
454
effectively use the current crypto backend in use by gnutls or the
 
455
cryptographic accelerator in use.</p>
 
456
<div class="variablelist"><table border="0">
 
457
<col align="left" valign="top">
 
458
<tbody>
 
459
<tr>
 
460
<td><p><span class="term"><em class="parameter"><code>dig</code></em> :</span></p></td>
 
461
<td>is a <a class="link" href="gnutls-crypto.html#gnutls-hmac-hd-t" title="gnutls_hmac_hd_t"><span class="type">gnutls_hmac_hd_t</span></a> structure.
 
462
</td>
 
463
</tr>
 
464
<tr>
 
465
<td><p><span class="term"><em class="parameter"><code>algorithm</code></em> :</span></p></td>
 
466
<td>the HMAC algorithm to use
 
467
</td>
 
468
</tr>
 
469
<tr>
 
470
<td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td>
 
471
<td>The key to be used for encryption
 
472
</td>
 
473
</tr>
 
474
<tr>
 
475
<td><p><span class="term"><em class="parameter"><code>keylen</code></em> :</span></p></td>
 
476
<td>The length of the key
 
477
</td>
 
478
</tr>
 
479
<tr>
 
480
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
481
<td> Zero or a negative value on error.
 
482
 
 
483
</td>
 
484
</tr>
 
485
</tbody>
 
486
</table></div>
 
487
<p class="since">Since 2.10.0</p>
 
488
</div>
 
489
<hr>
 
490
<div class="refsect2" title="gnutls_hmac ()">
 
491
<a name="gnutls-hmac"></a><h3>gnutls_hmac ()</h3>
 
492
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_hmac                         (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-hmac-hd-t" title="gnutls_hmac_hd_t"><span class="type">gnutls_hmac_hd_t</span></a> handle</code></em>,
 
493
                                                         <em class="parameter"><code>const <span class="type">void</span> *text</code></em>,
 
494
                                                         <em class="parameter"><code><span class="type">size_t</span> textlen</code></em>);</pre>
 
495
<p>
 
496
This function will hash the given data using the algorithm
 
497
specified by the context.</p>
 
498
<div class="variablelist"><table border="0">
 
499
<col align="left" valign="top">
 
500
<tbody>
 
501
<tr>
 
502
<td><p><span class="term"><em class="parameter"><code>handle</code></em> :</span></p></td>
 
503
<td>is a <a class="link" href="gnutls-crypto.html#gnutls-cipher-hd-t" title="gnutls_cipher_hd_t"><span class="type">gnutls_cipher_hd_t</span></a> structure.
 
504
</td>
 
505
</tr>
 
506
<tr>
 
507
<td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td>
 
508
<td>the data to hash
 
509
</td>
 
510
</tr>
 
511
<tr>
 
512
<td><p><span class="term"><em class="parameter"><code>textlen</code></em> :</span></p></td>
 
513
<td>The length of data to hash
 
514
</td>
 
515
</tr>
 
516
<tr>
 
517
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
518
<td> Zero or a negative value on error.
 
519
 
 
520
</td>
 
521
</tr>
 
522
</tbody>
 
523
</table></div>
 
524
<p class="since">Since 2.10.0</p>
 
525
</div>
 
526
<hr>
 
527
<div class="refsect2" title="gnutls_hmac_output ()">
 
528
<a name="gnutls-hmac-output"></a><h3>gnutls_hmac_output ()</h3>
 
529
<pre class="programlisting"><span class="returnvalue">void</span>                gnutls_hmac_output                  (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-hmac-hd-t" title="gnutls_hmac_hd_t"><span class="type">gnutls_hmac_hd_t</span></a> handle</code></em>,
 
530
                                                         <em class="parameter"><code><span class="type">void</span> *digest</code></em>);</pre>
 
531
<p>
 
532
This function will output the current MAC value.</p>
 
533
<div class="variablelist"><table border="0">
 
534
<col align="left" valign="top">
 
535
<tbody>
 
536
<tr>
 
537
<td><p><span class="term"><em class="parameter"><code>handle</code></em> :</span></p></td>
 
538
<td>is a <a class="link" href="gnutls-crypto.html#gnutls-hmac-hd-t" title="gnutls_hmac_hd_t"><span class="type">gnutls_hmac_hd_t</span></a> structure.
 
539
</td>
 
540
</tr>
 
541
<tr>
 
542
<td><p><span class="term"><em class="parameter"><code>digest</code></em> :</span></p></td>
 
543
<td>is the output value of the MAC
 
544
</td>
 
545
</tr>
 
546
</tbody>
 
547
</table></div>
 
548
<p class="since">Since 2.10.0</p>
 
549
</div>
 
550
<hr>
 
551
<div class="refsect2" title="gnutls_hmac_deinit ()">
 
552
<a name="gnutls-hmac-deinit"></a><h3>gnutls_hmac_deinit ()</h3>
 
553
<pre class="programlisting"><span class="returnvalue">void</span>                gnutls_hmac_deinit                  (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-hmac-hd-t" title="gnutls_hmac_hd_t"><span class="type">gnutls_hmac_hd_t</span></a> handle</code></em>,
 
554
                                                         <em class="parameter"><code><span class="type">void</span> *digest</code></em>);</pre>
 
555
<p>
 
556
This function will deinitialize all resources occupied by
 
557
the given hmac context.</p>
 
558
<div class="variablelist"><table border="0">
 
559
<col align="left" valign="top">
 
560
<tbody>
 
561
<tr>
 
562
<td><p><span class="term"><em class="parameter"><code>handle</code></em> :</span></p></td>
 
563
<td>is a <a class="link" href="gnutls-crypto.html#gnutls-hmac-hd-t" title="gnutls_hmac_hd_t"><span class="type">gnutls_hmac_hd_t</span></a> structure.
 
564
</td>
 
565
</tr>
 
566
<tr>
 
567
<td><p><span class="term"><em class="parameter"><code>digest</code></em> :</span></p></td>
 
568
<td>is the output value of the MAC
 
569
</td>
 
570
</tr>
 
571
</tbody>
 
572
</table></div>
 
573
<p class="since">Since 2.10.0</p>
 
574
</div>
 
575
<hr>
 
576
<div class="refsect2" title="gnutls_hmac_get_len ()">
 
577
<a name="gnutls-hmac-get-len"></a><h3>gnutls_hmac_get_len ()</h3>
 
578
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_hmac_get_len                 (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-mac-algorithm-t" title="enum gnutls_mac_algorithm_t"><span class="type">gnutls_mac_algorithm_t</span></a> algorithm</code></em>);</pre>
 
579
<p>
 
580
This function will return the length of the output data
 
581
of the given hmac algorithm.</p>
 
582
<div class="variablelist"><table border="0">
 
583
<col align="left" valign="top">
 
584
<tbody>
 
585
<tr>
 
586
<td><p><span class="term"><em class="parameter"><code>algorithm</code></em> :</span></p></td>
 
587
<td>the hmac algorithm to use
 
588
</td>
 
589
</tr>
 
590
<tr>
 
591
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
592
<td> The length or zero on error.
 
593
 
 
594
</td>
 
595
</tr>
 
596
</tbody>
 
597
</table></div>
 
598
<p class="since">Since 2.10.0</p>
 
599
</div>
 
600
<hr>
 
601
<div class="refsect2" title="gnutls_hmac_fast ()">
 
602
<a name="gnutls-hmac-fast"></a><h3>gnutls_hmac_fast ()</h3>
 
603
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_hmac_fast                    (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-mac-algorithm-t" title="enum gnutls_mac_algorithm_t"><span class="type">gnutls_mac_algorithm_t</span></a> algorithm</code></em>,
 
604
                                                         <em class="parameter"><code>const <span class="type">void</span> *key</code></em>,
 
605
                                                         <em class="parameter"><code><span class="type">size_t</span> keylen</code></em>,
 
606
                                                         <em class="parameter"><code>const <span class="type">void</span> *text</code></em>,
 
607
                                                         <em class="parameter"><code><span class="type">size_t</span> textlen</code></em>,
 
608
                                                         <em class="parameter"><code><span class="type">void</span> *digest</code></em>);</pre>
 
609
<p>
 
610
This convenience function will hash the given data and return output
 
611
on a single call.</p>
 
612
<div class="variablelist"><table border="0">
 
613
<col align="left" valign="top">
 
614
<tbody>
 
615
<tr>
 
616
<td><p><span class="term"><em class="parameter"><code>algorithm</code></em> :</span></p></td>
 
617
<td>the hash algorithm to use
 
618
</td>
 
619
</tr>
 
620
<tr>
 
621
<td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td>
 
622
<td>the key to use
 
623
</td>
 
624
</tr>
 
625
<tr>
 
626
<td><p><span class="term"><em class="parameter"><code>keylen</code></em> :</span></p></td>
 
627
<td>The length of the key
 
628
</td>
 
629
</tr>
 
630
<tr>
 
631
<td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td>
 
632
<td>the data to hash
 
633
</td>
 
634
</tr>
 
635
<tr>
 
636
<td><p><span class="term"><em class="parameter"><code>textlen</code></em> :</span></p></td>
 
637
<td>The length of data to hash
 
638
</td>
 
639
</tr>
 
640
<tr>
 
641
<td><p><span class="term"><em class="parameter"><code>digest</code></em> :</span></p></td>
 
642
<td>is the output value of the hash
 
643
</td>
 
644
</tr>
 
645
<tr>
 
646
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
647
<td> Zero or a negative value on error.
 
648
 
 
649
</td>
 
650
</tr>
 
651
</tbody>
 
652
</table></div>
 
653
<p class="since">Since 2.10.0</p>
 
654
</div>
 
655
<hr>
 
656
<div class="refsect2" title="gnutls_hash_init ()">
 
657
<a name="gnutls-hash-init"></a><h3>gnutls_hash_init ()</h3>
 
658
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_hash_init                    (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-hash-hd-t" title="gnutls_hash_hd_t"><span class="type">gnutls_hash_hd_t</span></a> *dig</code></em>,
 
659
                                                         <em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-digest-algorithm-t" title="enum gnutls_digest_algorithm_t"><span class="type">gnutls_digest_algorithm_t</span></a> algorithm</code></em>);</pre>
 
660
<p>
 
661
This function will initialize an context that can be used to
 
662
produce a Message Digest of data.  This will effectively use the
 
663
current crypto backend in use by gnutls or the cryptographic
 
664
accelerator in use.</p>
 
665
<div class="variablelist"><table border="0">
 
666
<col align="left" valign="top">
 
667
<tbody>
 
668
<tr>
 
669
<td><p><span class="term"><em class="parameter"><code>dig</code></em> :</span></p></td>
 
670
<td>is a <a class="link" href="gnutls-crypto.html#gnutls-hash-hd-t" title="gnutls_hash_hd_t"><span class="type">gnutls_hash_hd_t</span></a> structure.
 
671
</td>
 
672
</tr>
 
673
<tr>
 
674
<td><p><span class="term"><em class="parameter"><code>algorithm</code></em> :</span></p></td>
 
675
<td>the hash algorithm to use
 
676
</td>
 
677
</tr>
 
678
<tr>
 
679
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
680
<td> Zero or a negative value on error.
 
681
 
 
682
</td>
 
683
</tr>
 
684
</tbody>
 
685
</table></div>
 
686
<p class="since">Since 2.10.0</p>
 
687
</div>
 
688
<hr>
 
689
<div class="refsect2" title="gnutls_hash ()">
 
690
<a name="gnutls-hash"></a><h3>gnutls_hash ()</h3>
 
691
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_hash                         (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-hash-hd-t" title="gnutls_hash_hd_t"><span class="type">gnutls_hash_hd_t</span></a> handle</code></em>,
 
692
                                                         <em class="parameter"><code>const <span class="type">void</span> *text</code></em>,
 
693
                                                         <em class="parameter"><code><span class="type">size_t</span> textlen</code></em>);</pre>
 
694
<p>
 
695
This function will hash the given data using the algorithm
 
696
specified by the context.</p>
 
697
<div class="variablelist"><table border="0">
 
698
<col align="left" valign="top">
 
699
<tbody>
 
700
<tr>
 
701
<td><p><span class="term"><em class="parameter"><code>handle</code></em> :</span></p></td>
 
702
<td>is a <a class="link" href="gnutls-crypto.html#gnutls-cipher-hd-t" title="gnutls_cipher_hd_t"><span class="type">gnutls_cipher_hd_t</span></a> structure.
 
703
</td>
 
704
</tr>
 
705
<tr>
 
706
<td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td>
 
707
<td>the data to hash
 
708
</td>
 
709
</tr>
 
710
<tr>
 
711
<td><p><span class="term"><em class="parameter"><code>textlen</code></em> :</span></p></td>
 
712
<td>The length of data to hash
 
713
</td>
 
714
</tr>
 
715
<tr>
 
716
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
717
<td> Zero or a negative value on error.
 
718
 
 
719
</td>
 
720
</tr>
 
721
</tbody>
 
722
</table></div>
 
723
<p class="since">Since 2.10.0</p>
 
724
</div>
 
725
<hr>
 
726
<div class="refsect2" title="gnutls_hash_output ()">
 
727
<a name="gnutls-hash-output"></a><h3>gnutls_hash_output ()</h3>
 
728
<pre class="programlisting"><span class="returnvalue">void</span>                gnutls_hash_output                  (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-hash-hd-t" title="gnutls_hash_hd_t"><span class="type">gnutls_hash_hd_t</span></a> handle</code></em>,
 
729
                                                         <em class="parameter"><code><span class="type">void</span> *digest</code></em>);</pre>
 
730
<p>
 
731
This function will output the current hash value.</p>
 
732
<div class="variablelist"><table border="0">
 
733
<col align="left" valign="top">
 
734
<tbody>
 
735
<tr>
 
736
<td><p><span class="term"><em class="parameter"><code>handle</code></em> :</span></p></td>
 
737
<td>is a <a class="link" href="gnutls-crypto.html#gnutls-hash-hd-t" title="gnutls_hash_hd_t"><span class="type">gnutls_hash_hd_t</span></a> structure.
 
738
</td>
 
739
</tr>
 
740
<tr>
 
741
<td><p><span class="term"><em class="parameter"><code>digest</code></em> :</span></p></td>
 
742
<td>is the output value of the hash
 
743
</td>
 
744
</tr>
 
745
</tbody>
 
746
</table></div>
 
747
<p class="since">Since 2.10.0</p>
 
748
</div>
 
749
<hr>
 
750
<div class="refsect2" title="gnutls_hash_deinit ()">
 
751
<a name="gnutls-hash-deinit"></a><h3>gnutls_hash_deinit ()</h3>
 
752
<pre class="programlisting"><span class="returnvalue">void</span>                gnutls_hash_deinit                  (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-hash-hd-t" title="gnutls_hash_hd_t"><span class="type">gnutls_hash_hd_t</span></a> handle</code></em>,
 
753
                                                         <em class="parameter"><code><span class="type">void</span> *digest</code></em>);</pre>
 
754
<p>
 
755
This function will deinitialize all resources occupied by
 
756
the given hash context.</p>
 
757
<div class="variablelist"><table border="0">
 
758
<col align="left" valign="top">
 
759
<tbody>
 
760
<tr>
 
761
<td><p><span class="term"><em class="parameter"><code>handle</code></em> :</span></p></td>
 
762
<td>is a <a class="link" href="gnutls-crypto.html#gnutls-hash-hd-t" title="gnutls_hash_hd_t"><span class="type">gnutls_hash_hd_t</span></a> structure.
 
763
</td>
 
764
</tr>
 
765
<tr>
 
766
<td><p><span class="term"><em class="parameter"><code>digest</code></em> :</span></p></td>
 
767
<td>is the output value of the hash
 
768
</td>
 
769
</tr>
 
770
</tbody>
 
771
</table></div>
 
772
<p class="since">Since 2.10.0</p>
 
773
</div>
 
774
<hr>
 
775
<div class="refsect2" title="gnutls_hash_get_len ()">
 
776
<a name="gnutls-hash-get-len"></a><h3>gnutls_hash_get_len ()</h3>
 
777
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_hash_get_len                 (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-digest-algorithm-t" title="enum gnutls_digest_algorithm_t"><span class="type">gnutls_digest_algorithm_t</span></a> algorithm</code></em>);</pre>
 
778
<p>
 
779
This function will return the length of the output data
 
780
of the given hash algorithm.</p>
 
781
<div class="variablelist"><table border="0">
 
782
<col align="left" valign="top">
 
783
<tbody>
 
784
<tr>
 
785
<td><p><span class="term"><em class="parameter"><code>algorithm</code></em> :</span></p></td>
 
786
<td>the hash algorithm to use
 
787
</td>
 
788
</tr>
 
789
<tr>
 
790
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
791
<td> The length or zero on error.
 
792
 
 
793
</td>
 
794
</tr>
 
795
</tbody>
 
796
</table></div>
 
797
<p class="since">Since 2.10.0</p>
 
798
</div>
 
799
<hr>
 
800
<div class="refsect2" title="gnutls_hash_fast ()">
 
801
<a name="gnutls-hash-fast"></a><h3>gnutls_hash_fast ()</h3>
 
802
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_hash_fast                    (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-digest-algorithm-t" title="enum gnutls_digest_algorithm_t"><span class="type">gnutls_digest_algorithm_t</span></a> algorithm</code></em>,
 
803
                                                         <em class="parameter"><code>const <span class="type">void</span> *text</code></em>,
 
804
                                                         <em class="parameter"><code><span class="type">size_t</span> textlen</code></em>,
 
805
                                                         <em class="parameter"><code><span class="type">void</span> *digest</code></em>);</pre>
 
806
<p>
 
807
This convenience function will hash the given data and return output
 
808
on a single call.</p>
 
809
<div class="variablelist"><table border="0">
 
810
<col align="left" valign="top">
 
811
<tbody>
 
812
<tr>
 
813
<td><p><span class="term"><em class="parameter"><code>algorithm</code></em> :</span></p></td>
 
814
<td>the hash algorithm to use
 
815
</td>
 
816
</tr>
 
817
<tr>
 
818
<td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td>
 
819
<td>the data to hash
 
820
</td>
 
821
</tr>
 
822
<tr>
 
823
<td><p><span class="term"><em class="parameter"><code>textlen</code></em> :</span></p></td>
 
824
<td>The length of data to hash
 
825
</td>
 
826
</tr>
 
827
<tr>
 
828
<td><p><span class="term"><em class="parameter"><code>digest</code></em> :</span></p></td>
 
829
<td>is the output value of the hash
 
830
</td>
 
831
</tr>
 
832
<tr>
 
833
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
834
<td> Zero or a negative value on error.
 
835
 
 
836
</td>
 
837
</tr>
 
838
</tbody>
 
839
</table></div>
 
840
<p class="since">Since 2.10.0</p>
 
841
</div>
 
842
<hr>
205
843
<div class="refsect2" title="GNUTLS_CRYPTO_API_VERSION">
206
 
<a name="GNUTLS-CRYPTO-API-VERSION--CAPS"></a><h3>GNUTLS_CRYPTO_API_VERSION</h3>
207
 
<pre class="programlisting"># define GNUTLS_CRYPTO_API_VERSION 0x01
208
 
</pre>
 
844
<a name="GNUTLS-CRYPTO-API-VERSION:CAPS"></a><h3>GNUTLS_CRYPTO_API_VERSION</h3>
 
845
<pre class="programlisting">#define GNUTLS_CRYPTO_API_VERSION 0x02
 
846
</pre>
 
847
<p>
 
848
</p>
 
849
</div>
 
850
<hr>
 
851
<div class="refsect2" title="gnutls_crypto_single_cipher_st">
 
852
<a name="gnutls-crypto-single-cipher-st"></a><h3>gnutls_crypto_single_cipher_st</h3>
 
853
<pre class="programlisting">#define gnutls_crypto_single_cipher_st gnutls_crypto_cipher_st
 
854
</pre>
 
855
<p>
 
856
</p>
 
857
</div>
 
858
<hr>
 
859
<div class="refsect2" title="gnutls_crypto_single_mac_st">
 
860
<a name="gnutls-crypto-single-mac-st"></a><h3>gnutls_crypto_single_mac_st</h3>
 
861
<pre class="programlisting">#define gnutls_crypto_single_mac_st gnutls_crypto_mac_st
 
862
</pre>
 
863
<p>
 
864
</p>
 
865
</div>
 
866
<hr>
 
867
<div class="refsect2" title="gnutls_crypto_single_digest_st">
 
868
<a name="gnutls-crypto-single-digest-st"></a><h3>gnutls_crypto_single_digest_st</h3>
 
869
<pre class="programlisting">#define gnutls_crypto_single_digest_st gnutls_crypto_digest_st
 
870
</pre>
 
871
<p>
 
872
</p>
209
873
</div>
210
874
<hr>
211
875
<div class="refsect2" title="init ()">
212
876
<a name="init"></a><h3>init ()</h3>
213
 
<pre class="programlisting">int                 init                                (void **ctx);</pre>
 
877
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (*init)                             (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-cipher-algorithm-t" title="enum gnutls_cipher_algorithm_t"><span class="type">gnutls_cipher_algorithm_t</span></a> Param1</code></em>,
 
878
                                                         <em class="parameter"><code><span class="type">void</span> **ctx</code></em>);</pre>
 
879
<p>
 
880
</p>
 
881
<div class="variablelist"><table border="0">
 
882
<col align="left" valign="top">
 
883
<tbody>
 
884
<tr>
 
885
<td><p><span class="term"><em class="parameter"><code>Param1</code></em> :</span></p></td>
 
886
<td>
 
887
</td>
 
888
</tr>
 
889
<tr>
 
890
<td><p><span class="term"><em class="parameter"><code>ctx</code></em> :</span></p></td>
 
891
<td>
 
892
</td>
 
893
</tr>
 
894
<tr>
 
895
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
896
<td>
 
897
</td>
 
898
</tr>
 
899
</tbody>
 
900
</table></div>
214
901
</div>
215
902
<hr>
216
903
<div class="refsect2" title="setkey ()">
217
904
<a name="setkey"></a><h3>setkey ()</h3>
218
 
<pre class="programlisting">int                 setkey                              (void *ctx,
219
 
                                                         const void *key,
220
 
                                                         size_t keysize);</pre>
 
905
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (*setkey)                           (<em class="parameter"><code><span class="type">void</span> *ctx</code></em>,
 
906
                                                         <em class="parameter"><code>const <span class="type">void</span> *key</code></em>,
 
907
                                                         <em class="parameter"><code><span class="type">size_t</span> keysize</code></em>);</pre>
 
908
<p>
 
909
</p>
 
910
<div class="variablelist"><table border="0">
 
911
<col align="left" valign="top">
 
912
<tbody>
 
913
<tr>
 
914
<td><p><span class="term"><em class="parameter"><code>ctx</code></em> :</span></p></td>
 
915
<td>
 
916
</td>
 
917
</tr>
 
918
<tr>
 
919
<td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td>
 
920
<td>
 
921
</td>
 
922
</tr>
 
923
<tr>
 
924
<td><p><span class="term"><em class="parameter"><code>keysize</code></em> :</span></p></td>
 
925
<td>
 
926
</td>
 
927
</tr>
 
928
<tr>
 
929
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
930
<td>
 
931
</td>
 
932
</tr>
 
933
</tbody>
 
934
</table></div>
221
935
</div>
222
936
<hr>
223
937
<div class="refsect2" title="setiv ()">
224
938
<a name="setiv"></a><h3>setiv ()</h3>
225
 
<pre class="programlisting">int                 setiv                               (void *ctx,
226
 
                                                         const void *iv,
227
 
                                                         size_t ivsize);</pre>
 
939
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (*setiv)                            (<em class="parameter"><code><span class="type">void</span> *ctx</code></em>,
 
940
                                                         <em class="parameter"><code>const <span class="type">void</span> *iv</code></em>,
 
941
                                                         <em class="parameter"><code><span class="type">size_t</span> ivsize</code></em>);</pre>
 
942
<p>
 
943
</p>
 
944
<div class="variablelist"><table border="0">
 
945
<col align="left" valign="top">
 
946
<tbody>
 
947
<tr>
 
948
<td><p><span class="term"><em class="parameter"><code>ctx</code></em> :</span></p></td>
 
949
<td>
 
950
</td>
 
951
</tr>
 
952
<tr>
 
953
<td><p><span class="term"><em class="parameter"><code>iv</code></em> :</span></p></td>
 
954
<td>
 
955
</td>
 
956
</tr>
 
957
<tr>
 
958
<td><p><span class="term"><em class="parameter"><code>ivsize</code></em> :</span></p></td>
 
959
<td>
 
960
</td>
 
961
</tr>
 
962
<tr>
 
963
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
964
<td>
 
965
</td>
 
966
</tr>
 
967
</tbody>
 
968
</table></div>
228
969
</div>
229
970
<hr>
230
971
<div class="refsect2" title="encrypt ()">
231
972
<a name="encrypt"></a><h3>encrypt ()</h3>
232
 
<pre class="programlisting">int                 encrypt                             (void *ctx,
233
 
                                                         const void *plain,
234
 
                                                         size_t plainsize,
235
 
                                                         void *encr,
236
 
                                                         size_t encrsize);</pre>
 
973
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (*encrypt)                          (<em class="parameter"><code><span class="type">void</span> *ctx</code></em>,
 
974
                                                         <em class="parameter"><code>const <span class="type">void</span> *plain</code></em>,
 
975
                                                         <em class="parameter"><code><span class="type">size_t</span> plainsize</code></em>,
 
976
                                                         <em class="parameter"><code><span class="type">void</span> *encr</code></em>,
 
977
                                                         <em class="parameter"><code><span class="type">size_t</span> encrsize</code></em>);</pre>
 
978
<p>
 
979
</p>
 
980
<div class="variablelist"><table border="0">
 
981
<col align="left" valign="top">
 
982
<tbody>
 
983
<tr>
 
984
<td><p><span class="term"><em class="parameter"><code>ctx</code></em> :</span></p></td>
 
985
<td>
 
986
</td>
 
987
</tr>
 
988
<tr>
 
989
<td><p><span class="term"><em class="parameter"><code>plain</code></em> :</span></p></td>
 
990
<td>
 
991
</td>
 
992
</tr>
 
993
<tr>
 
994
<td><p><span class="term"><em class="parameter"><code>plainsize</code></em> :</span></p></td>
 
995
<td>
 
996
</td>
 
997
</tr>
 
998
<tr>
 
999
<td><p><span class="term"><em class="parameter"><code>encr</code></em> :</span></p></td>
 
1000
<td>
 
1001
</td>
 
1002
</tr>
 
1003
<tr>
 
1004
<td><p><span class="term"><em class="parameter"><code>encrsize</code></em> :</span></p></td>
 
1005
<td>
 
1006
</td>
 
1007
</tr>
 
1008
<tr>
 
1009
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1010
<td>
 
1011
</td>
 
1012
</tr>
 
1013
</tbody>
 
1014
</table></div>
237
1015
</div>
238
1016
<hr>
239
1017
<div class="refsect2" title="decrypt ()">
240
1018
<a name="decrypt"></a><h3>decrypt ()</h3>
241
 
<pre class="programlisting">int                 decrypt                             (void *ctx,
242
 
                                                         const void *encr,
243
 
                                                         size_t encrsize,
244
 
                                                         void *plain,
245
 
                                                         size_t plainsize);</pre>
 
1019
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (*decrypt)                          (<em class="parameter"><code><span class="type">void</span> *ctx</code></em>,
 
1020
                                                         <em class="parameter"><code>const <span class="type">void</span> *encr</code></em>,
 
1021
                                                         <em class="parameter"><code><span class="type">size_t</span> encrsize</code></em>,
 
1022
                                                         <em class="parameter"><code><span class="type">void</span> *plain</code></em>,
 
1023
                                                         <em class="parameter"><code><span class="type">size_t</span> plainsize</code></em>);</pre>
 
1024
<p>
 
1025
</p>
 
1026
<div class="variablelist"><table border="0">
 
1027
<col align="left" valign="top">
 
1028
<tbody>
 
1029
<tr>
 
1030
<td><p><span class="term"><em class="parameter"><code>ctx</code></em> :</span></p></td>
 
1031
<td>
 
1032
</td>
 
1033
</tr>
 
1034
<tr>
 
1035
<td><p><span class="term"><em class="parameter"><code>encr</code></em> :</span></p></td>
 
1036
<td>
 
1037
</td>
 
1038
</tr>
 
1039
<tr>
 
1040
<td><p><span class="term"><em class="parameter"><code>encrsize</code></em> :</span></p></td>
 
1041
<td>
 
1042
</td>
 
1043
</tr>
 
1044
<tr>
 
1045
<td><p><span class="term"><em class="parameter"><code>plain</code></em> :</span></p></td>
 
1046
<td>
 
1047
</td>
 
1048
</tr>
 
1049
<tr>
 
1050
<td><p><span class="term"><em class="parameter"><code>plainsize</code></em> :</span></p></td>
 
1051
<td>
 
1052
</td>
 
1053
</tr>
 
1054
<tr>
 
1055
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1056
<td>
 
1057
</td>
 
1058
</tr>
 
1059
</tbody>
 
1060
</table></div>
246
1061
</div>
247
1062
<hr>
248
1063
<div class="refsect2" title="deinit ()">
249
1064
<a name="deinit"></a><h3>deinit ()</h3>
250
 
<pre class="programlisting">void                deinit                              (void *ctx);</pre>
 
1065
<pre class="programlisting"><span class="returnvalue">void</span>                (*deinit)                           (<em class="parameter"><code><span class="type">void</span> *ctx</code></em>);</pre>
 
1066
<p>
 
1067
</p>
 
1068
<div class="variablelist"><table border="0">
 
1069
<col align="left" valign="top">
 
1070
<tbody><tr>
 
1071
<td><p><span class="term"><em class="parameter"><code>ctx</code></em> :</span></p></td>
 
1072
<td>
 
1073
</td>
 
1074
</tr></tbody>
 
1075
</table></div>
251
1076
</div>
252
1077
<hr>
253
1078
<div class="refsect2" title="hash ()">
254
1079
<a name="hash"></a><h3>hash ()</h3>
255
 
<pre class="programlisting">int                 hash                                (void *ctx,
256
 
                                                         const void *text,
257
 
                                                         size_t textsize);</pre>
 
1080
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (*hash)                             (<em class="parameter"><code><span class="type">void</span> *ctx</code></em>,
 
1081
                                                         <em class="parameter"><code>const <span class="type">void</span> *text</code></em>,
 
1082
                                                         <em class="parameter"><code><span class="type">size_t</span> textsize</code></em>);</pre>
 
1083
<p>
 
1084
</p>
 
1085
<div class="variablelist"><table border="0">
 
1086
<col align="left" valign="top">
 
1087
<tbody>
 
1088
<tr>
 
1089
<td><p><span class="term"><em class="parameter"><code>ctx</code></em> :</span></p></td>
 
1090
<td>
 
1091
</td>
 
1092
</tr>
 
1093
<tr>
 
1094
<td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td>
 
1095
<td>
 
1096
</td>
 
1097
</tr>
 
1098
<tr>
 
1099
<td><p><span class="term"><em class="parameter"><code>textsize</code></em> :</span></p></td>
 
1100
<td>
 
1101
</td>
 
1102
</tr>
 
1103
<tr>
 
1104
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1105
<td>
 
1106
</td>
 
1107
</tr>
 
1108
</tbody>
 
1109
</table></div>
258
1110
</div>
259
1111
<hr>
260
1112
<div class="refsect2" title="copy ()">
261
1113
<a name="copy"></a><h3>copy ()</h3>
262
 
<pre class="programlisting">int                 copy                                (void **dst_ctx,
263
 
                                                         void *src_ctx);</pre>
 
1114
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (*copy)                             (<em class="parameter"><code><span class="type">void</span> **dst_ctx</code></em>,
 
1115
                                                         <em class="parameter"><code><span class="type">void</span> *src_ctx</code></em>);</pre>
 
1116
<p>
 
1117
</p>
 
1118
<div class="variablelist"><table border="0">
 
1119
<col align="left" valign="top">
 
1120
<tbody>
 
1121
<tr>
 
1122
<td><p><span class="term"><em class="parameter"><code>dst_ctx</code></em> :</span></p></td>
 
1123
<td>
 
1124
</td>
 
1125
</tr>
 
1126
<tr>
 
1127
<td><p><span class="term"><em class="parameter"><code>src_ctx</code></em> :</span></p></td>
 
1128
<td>
 
1129
</td>
 
1130
</tr>
 
1131
<tr>
 
1132
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1133
<td>
 
1134
</td>
 
1135
</tr>
 
1136
</tbody>
 
1137
</table></div>
264
1138
</div>
265
1139
<hr>
266
1140
<div class="refsect2" title="output ()">
267
1141
<a name="output"></a><h3>output ()</h3>
268
 
<pre class="programlisting">int                 output                              (void *src_ctx,
269
 
                                                         void *digest,
270
 
                                                         size_t digestsize);</pre>
271
 
</div>
272
 
<hr>
273
 
<div class="refsect2" title="gnutls_crypto_single_digest_st">
274
 
<a name="gnutls-crypto-single-digest-st"></a><h3>gnutls_crypto_single_digest_st</h3>
275
 
<pre class="programlisting">typedef gnutls_crypto_single_mac_st gnutls_crypto_single_digest_st;
276
 
</pre>
 
1142
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (*output)                           (<em class="parameter"><code><span class="type">void</span> *src_ctx</code></em>,
 
1143
                                                         <em class="parameter"><code><span class="type">void</span> *digest</code></em>,
 
1144
                                                         <em class="parameter"><code><span class="type">size_t</span> digestsize</code></em>);</pre>
 
1145
<p>
 
1146
</p>
 
1147
<div class="variablelist"><table border="0">
 
1148
<col align="left" valign="top">
 
1149
<tbody>
 
1150
<tr>
 
1151
<td><p><span class="term"><em class="parameter"><code>src_ctx</code></em> :</span></p></td>
 
1152
<td>
 
1153
</td>
 
1154
</tr>
 
1155
<tr>
 
1156
<td><p><span class="term"><em class="parameter"><code>digest</code></em> :</span></p></td>
 
1157
<td>
 
1158
</td>
 
1159
</tr>
 
1160
<tr>
 
1161
<td><p><span class="term"><em class="parameter"><code>digestsize</code></em> :</span></p></td>
 
1162
<td>
 
1163
</td>
 
1164
</tr>
 
1165
<tr>
 
1166
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1167
<td>
 
1168
</td>
 
1169
</tr>
 
1170
</tbody>
 
1171
</table></div>
277
1172
</div>
278
1173
<hr>
279
1174
<div class="refsect2" title="gnutls_crypto_digest_st">
280
1175
<a name="gnutls-crypto-digest-st"></a><h3>gnutls_crypto_digest_st</h3>
281
1176
<pre class="programlisting">typedef gnutls_crypto_mac_st gnutls_crypto_digest_st;
282
1177
</pre>
 
1178
<p>
 
1179
</p>
283
1180
</div>
284
1181
<hr>
285
1182
<div class="refsect2" title="enum gnutls_rnd_level_t">
286
1183
<a name="gnutls-rnd-level-t"></a><h3>enum gnutls_rnd_level_t</h3>
287
1184
<pre class="programlisting">typedef enum gnutls_rnd_level
288
1185
{
289
 
  /* fatal in parts of session if broken, i.e., vulnerable to
290
 
     statistical analysis */
291
1186
  GNUTLS_RND_NONCE = 0,
292
 
  /* fatal in session if broken */
293
1187
  GNUTLS_RND_RANDOM = 1,
294
 
  /* fatal in many sessions if broken */
295
1188
  GNUTLS_RND_KEY = 2
296
1189
} gnutls_rnd_level_t;
297
1190
</pre>
 
1191
<p>
 
1192
Enumeration of random quality levels.</p>
 
1193
<div class="variablelist"><table border="0">
 
1194
<col align="left" valign="top">
 
1195
<tbody>
 
1196
<tr>
 
1197
<td><p><a name="GNUTLS-RND-NONCE:CAPS"></a><span class="term"><code class="literal">GNUTLS_RND_NONCE</code></span></p></td>
 
1198
<td>Non-predictable random number.  Fatal in parts
 
1199
  of session if broken, i.e., vulnerable to statistical analysis.
 
1200
</td>
 
1201
</tr>
 
1202
<tr>
 
1203
<td><p><a name="GNUTLS-RND-RANDOM:CAPS"></a><span class="term"><code class="literal">GNUTLS_RND_RANDOM</code></span></p></td>
 
1204
<td>Pseudo-random cryptographic random number.
 
1205
  Fatal in session if broken.
 
1206
</td>
 
1207
</tr>
 
1208
<tr>
 
1209
<td><p><a name="GNUTLS-RND-KEY:CAPS"></a><span class="term"><code class="literal">GNUTLS_RND_KEY</code></span></p></td>
 
1210
<td>Fatal in many sessions if broken.
 
1211
</td>
 
1212
</tr>
 
1213
</tbody>
 
1214
</table></div>
298
1215
</div>
299
1216
<hr>
300
1217
<div class="refsect2" title="enum gnutls_pk_flag_t">
304
1221
  GNUTLS_PK_FLAG_NONE = 0
305
1222
} gnutls_pk_flag_t;
306
1223
</pre>
 
1224
<p>
 
1225
Enumeration of public-key flag.</p>
 
1226
<div class="variablelist"><table border="0">
 
1227
<col align="left" valign="top">
 
1228
<tbody><tr>
 
1229
<td><p><a name="GNUTLS-PK-FLAG-NONE:CAPS"></a><span class="term"><code class="literal">GNUTLS_PK_FLAG_NONE</code></span></p></td>
 
1230
<td>No flag.
 
1231
</td>
 
1232
</tr></tbody>
 
1233
</table></div>
307
1234
</div>
308
1235
<hr>
309
1236
<div class="refsect2" title="rnd ()">
310
1237
<a name="rnd"></a><h3>rnd ()</h3>
311
 
<pre class="programlisting">int                 rnd                                 (void *ctx,
312
 
                                                         int level,
313
 
                                                         void *data,
314
 
                                                         size_t datasize);</pre>
 
1238
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (*rnd)                              (<em class="parameter"><code><span class="type">void</span> *ctx</code></em>,
 
1239
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> level</code></em>,
 
1240
                                                         <em class="parameter"><code><span class="type">void</span> *data</code></em>,
 
1241
                                                         <em class="parameter"><code><span class="type">size_t</span> datasize</code></em>);</pre>
 
1242
<p>
 
1243
</p>
 
1244
<div class="variablelist"><table border="0">
 
1245
<col align="left" valign="top">
 
1246
<tbody>
 
1247
<tr>
 
1248
<td><p><span class="term"><em class="parameter"><code>ctx</code></em> :</span></p></td>
 
1249
<td>
 
1250
</td>
 
1251
</tr>
 
1252
<tr>
 
1253
<td><p><span class="term"><em class="parameter"><code>level</code></em> :</span></p></td>
 
1254
<td>
 
1255
</td>
 
1256
</tr>
 
1257
<tr>
 
1258
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
 
1259
<td>
 
1260
</td>
 
1261
</tr>
 
1262
<tr>
 
1263
<td><p><span class="term"><em class="parameter"><code>datasize</code></em> :</span></p></td>
 
1264
<td>
 
1265
</td>
 
1266
</tr>
 
1267
<tr>
 
1268
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1269
<td>
 
1270
</td>
 
1271
</tr>
 
1272
</tbody>
 
1273
</table></div>
315
1274
</div>
316
1275
<hr>
317
1276
<div class="refsect2" title="bigint_t">
318
1277
<a name="bigint-t"></a><h3>bigint_t</h3>
319
1278
<pre class="programlisting">typedef void *bigint_t;
320
1279
</pre>
 
1280
<p>
 
1281
</p>
321
1282
</div>
322
1283
<hr>
323
1284
<div class="refsect2" title="enum gnutls_bigint_format_t">
332
1293
  GNUTLS_MPI_FORMAT_PGP = 2
333
1294
} gnutls_bigint_format_t;
334
1295
</pre>
 
1296
<p>
 
1297
Enumeration of different bignum integer encoding formats.</p>
 
1298
<div class="variablelist"><table border="0">
 
1299
<col align="left" valign="top">
 
1300
<tbody>
 
1301
<tr>
 
1302
<td><p><a name="GNUTLS-MPI-FORMAT-USG:CAPS"></a><span class="term"><code class="literal">GNUTLS_MPI_FORMAT_USG</code></span></p></td>
 
1303
<td>Raw unsigned integer format.
 
1304
</td>
 
1305
</tr>
 
1306
<tr>
 
1307
<td><p><a name="GNUTLS-MPI-FORMAT-STD:CAPS"></a><span class="term"><code class="literal">GNUTLS_MPI_FORMAT_STD</code></span></p></td>
 
1308
<td>Raw signed integer format, always a leading
 
1309
  zero when positive.
 
1310
</td>
 
1311
</tr>
 
1312
<tr>
 
1313
<td><p><a name="GNUTLS-MPI-FORMAT-PGP:CAPS"></a><span class="term"><code class="literal">GNUTLS_MPI_FORMAT_PGP</code></span></p></td>
 
1314
<td>The pgp integer format.
 
1315
</td>
 
1316
</tr>
 
1317
</tbody>
 
1318
</table></div>
335
1319
</div>
336
1320
<hr>
337
1321
<div class="refsect2" title="bigint_new ()">
338
1322
<a name="bigint-new"></a><h3>bigint_new ()</h3>
339
 
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            bigint_new                          (int nbits);</pre>
 
1323
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (*bigint_new)                       (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> nbits</code></em>);</pre>
 
1324
<p>
 
1325
</p>
 
1326
<div class="variablelist"><table border="0">
 
1327
<col align="left" valign="top">
 
1328
<tbody>
 
1329
<tr>
 
1330
<td><p><span class="term"><em class="parameter"><code>nbits</code></em> :</span></p></td>
 
1331
<td>
 
1332
</td>
 
1333
</tr>
 
1334
<tr>
 
1335
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1336
<td>
 
1337
</td>
 
1338
</tr>
 
1339
</tbody>
 
1340
</table></div>
340
1341
</div>
341
1342
<hr>
342
1343
<div class="refsect2" title="bigint_release ()">
343
1344
<a name="bigint-release"></a><h3>bigint_release ()</h3>
344
 
<pre class="programlisting">void                bigint_release                      (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> n);</pre>
 
1345
<pre class="programlisting"><span class="returnvalue">void</span>                (*bigint_release)                   (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> n</code></em>);</pre>
 
1346
<p>
 
1347
</p>
 
1348
<div class="variablelist"><table border="0">
 
1349
<col align="left" valign="top">
 
1350
<tbody><tr>
 
1351
<td><p><span class="term"><em class="parameter"><code>n</code></em> :</span></p></td>
 
1352
<td>
 
1353
</td>
 
1354
</tr></tbody>
 
1355
</table></div>
345
1356
</div>
346
1357
<hr>
347
1358
<div class="refsect2" title="bigint_cmp ()">
348
1359
<a name="bigint-cmp"></a><h3>bigint_cmp ()</h3>
349
 
<pre class="programlisting">int                 bigint_cmp                          (const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> m1,
350
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> m2);</pre>
 
1360
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (*bigint_cmp)                       (<em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> m1</code></em>,
 
1361
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> m2</code></em>);</pre>
 
1362
<p>
 
1363
</p>
 
1364
<div class="variablelist"><table border="0">
 
1365
<col align="left" valign="top">
 
1366
<tbody>
 
1367
<tr>
 
1368
<td><p><span class="term"><em class="parameter"><code>m1</code></em> :</span></p></td>
 
1369
<td>
 
1370
</td>
 
1371
</tr>
 
1372
<tr>
 
1373
<td><p><span class="term"><em class="parameter"><code>m2</code></em> :</span></p></td>
 
1374
<td>
 
1375
</td>
 
1376
</tr>
 
1377
<tr>
 
1378
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1379
<td>
 
1380
</td>
 
1381
</tr>
 
1382
</tbody>
 
1383
</table></div>
351
1384
</div>
352
1385
<hr>
353
1386
<div class="refsect2" title="bigint_cmp_ui ()">
354
1387
<a name="bigint-cmp-ui"></a><h3>bigint_cmp_ui ()</h3>
355
 
<pre class="programlisting">int                 bigint_cmp_ui                       (const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> m1,
356
 
                                                         unsigned long  m2);</pre>
 
1388
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (*bigint_cmp_ui)                    (<em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> m1</code></em>,
 
1389
                                                         <em class="parameter"><code><span class="type">unsigned long </span> m2</code></em>);</pre>
 
1390
<p>
 
1391
</p>
 
1392
<div class="variablelist"><table border="0">
 
1393
<col align="left" valign="top">
 
1394
<tbody>
 
1395
<tr>
 
1396
<td><p><span class="term"><em class="parameter"><code>m1</code></em> :</span></p></td>
 
1397
<td>
 
1398
</td>
 
1399
</tr>
 
1400
<tr>
 
1401
<td><p><span class="term"><em class="parameter"><code>m2</code></em> :</span></p></td>
 
1402
<td>
 
1403
</td>
 
1404
</tr>
 
1405
<tr>
 
1406
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1407
<td>
 
1408
</td>
 
1409
</tr>
 
1410
</tbody>
 
1411
</table></div>
357
1412
</div>
358
1413
<hr>
359
1414
<div class="refsect2" title="bigint_mod ()">
360
1415
<a name="bigint-mod"></a><h3>bigint_mod ()</h3>
361
 
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            bigint_mod                          (const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
362
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> b);</pre>
 
1416
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (*bigint_mod)                       (<em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
1417
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> b</code></em>);</pre>
 
1418
<p>
 
1419
</p>
 
1420
<div class="variablelist"><table border="0">
 
1421
<col align="left" valign="top">
 
1422
<tbody>
 
1423
<tr>
 
1424
<td><p><span class="term"><em class="parameter"><code>a</code></em> :</span></p></td>
 
1425
<td>
 
1426
</td>
 
1427
</tr>
 
1428
<tr>
 
1429
<td><p><span class="term"><em class="parameter"><code>b</code></em> :</span></p></td>
 
1430
<td>
 
1431
</td>
 
1432
</tr>
 
1433
<tr>
 
1434
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1435
<td>
 
1436
</td>
 
1437
</tr>
 
1438
</tbody>
 
1439
</table></div>
363
1440
</div>
364
1441
<hr>
365
1442
<div class="refsect2" title="bigint_set ()">
366
1443
<a name="bigint-set"></a><h3>bigint_set ()</h3>
367
 
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            bigint_set                          (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
368
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> b);</pre>
 
1444
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (*bigint_set)                       (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
1445
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> b</code></em>);</pre>
 
1446
<p>
 
1447
</p>
 
1448
<div class="variablelist"><table border="0">
 
1449
<col align="left" valign="top">
 
1450
<tbody>
 
1451
<tr>
 
1452
<td><p><span class="term"><em class="parameter"><code>a</code></em> :</span></p></td>
 
1453
<td>
 
1454
</td>
 
1455
</tr>
 
1456
<tr>
 
1457
<td><p><span class="term"><em class="parameter"><code>b</code></em> :</span></p></td>
 
1458
<td>
 
1459
</td>
 
1460
</tr>
 
1461
<tr>
 
1462
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1463
<td>
 
1464
</td>
 
1465
</tr>
 
1466
</tbody>
 
1467
</table></div>
369
1468
</div>
370
1469
<hr>
371
1470
<div class="refsect2" title="bigint_set_ui ()">
372
1471
<a name="bigint-set-ui"></a><h3>bigint_set_ui ()</h3>
373
 
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            bigint_set_ui                       (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
374
 
                                                         unsigned long  b);</pre>
 
1472
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (*bigint_set_ui)                    (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
1473
                                                         <em class="parameter"><code><span class="type">unsigned long </span> b</code></em>);</pre>
 
1474
<p>
 
1475
</p>
 
1476
<div class="variablelist"><table border="0">
 
1477
<col align="left" valign="top">
 
1478
<tbody>
 
1479
<tr>
 
1480
<td><p><span class="term"><em class="parameter"><code>a</code></em> :</span></p></td>
 
1481
<td>
 
1482
</td>
 
1483
</tr>
 
1484
<tr>
 
1485
<td><p><span class="term"><em class="parameter"><code>b</code></em> :</span></p></td>
 
1486
<td>
 
1487
</td>
 
1488
</tr>
 
1489
<tr>
 
1490
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1491
<td>
 
1492
</td>
 
1493
</tr>
 
1494
</tbody>
 
1495
</table></div>
375
1496
</div>
376
1497
<hr>
377
 
<div class="refsect2" title="bigint_get_nbits ()">
378
 
<a name="bigint-get-nbits"></a><h3>bigint_get_nbits ()</h3>
379
 
<pre class="programlisting">unsigned int        bigint_get_nbits                    (const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a);</pre>
 
1498
<div class="refsect2" title="int ()">
 
1499
<a name="int"></a><h3>int ()</h3>
 
1500
<pre class="programlisting"><span class="returnvalue">unsigned</span>            int                                 ();</pre>
 
1501
<p>
 
1502
</p>
 
1503
<div class="variablelist"><table border="0">
 
1504
<col align="left" valign="top">
 
1505
<tbody><tr>
 
1506
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1507
<td>
 
1508
</td>
 
1509
</tr></tbody>
 
1510
</table></div>
380
1511
</div>
381
1512
<hr>
382
1513
<div class="refsect2" title="bigint_powm ()">
383
1514
<a name="bigint-powm"></a><h3>bigint_powm ()</h3>
384
 
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            bigint_powm                         (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> w,
385
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> b,
386
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> e,
387
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> m);</pre>
 
1515
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (*bigint_powm)                      (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> w</code></em>,
 
1516
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> b</code></em>,
 
1517
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> e</code></em>,
 
1518
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> m</code></em>);</pre>
 
1519
<p>
 
1520
</p>
 
1521
<div class="variablelist"><table border="0">
 
1522
<col align="left" valign="top">
 
1523
<tbody>
 
1524
<tr>
 
1525
<td><p><span class="term"><em class="parameter"><code>w</code></em> :</span></p></td>
 
1526
<td>
 
1527
</td>
 
1528
</tr>
 
1529
<tr>
 
1530
<td><p><span class="term"><em class="parameter"><code>b</code></em> :</span></p></td>
 
1531
<td>
 
1532
</td>
 
1533
</tr>
 
1534
<tr>
 
1535
<td><p><span class="term"><em class="parameter"><code>e</code></em> :</span></p></td>
 
1536
<td>
 
1537
</td>
 
1538
</tr>
 
1539
<tr>
 
1540
<td><p><span class="term"><em class="parameter"><code>m</code></em> :</span></p></td>
 
1541
<td>
 
1542
</td>
 
1543
</tr>
 
1544
<tr>
 
1545
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1546
<td>
 
1547
</td>
 
1548
</tr>
 
1549
</tbody>
 
1550
</table></div>
388
1551
</div>
389
1552
<hr>
390
1553
<div class="refsect2" title="bigint_addm ()">
391
1554
<a name="bigint-addm"></a><h3>bigint_addm ()</h3>
392
 
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            bigint_addm                         (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> w,
393
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
394
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> b,
395
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> m);</pre>
 
1555
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (*bigint_addm)                      (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> w</code></em>,
 
1556
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
1557
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> b</code></em>,
 
1558
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> m</code></em>);</pre>
 
1559
<p>
 
1560
</p>
 
1561
<div class="variablelist"><table border="0">
 
1562
<col align="left" valign="top">
 
1563
<tbody>
 
1564
<tr>
 
1565
<td><p><span class="term"><em class="parameter"><code>w</code></em> :</span></p></td>
 
1566
<td>
 
1567
</td>
 
1568
</tr>
 
1569
<tr>
 
1570
<td><p><span class="term"><em class="parameter"><code>a</code></em> :</span></p></td>
 
1571
<td>
 
1572
</td>
 
1573
</tr>
 
1574
<tr>
 
1575
<td><p><span class="term"><em class="parameter"><code>b</code></em> :</span></p></td>
 
1576
<td>
 
1577
</td>
 
1578
</tr>
 
1579
<tr>
 
1580
<td><p><span class="term"><em class="parameter"><code>m</code></em> :</span></p></td>
 
1581
<td>
 
1582
</td>
 
1583
</tr>
 
1584
<tr>
 
1585
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1586
<td>
 
1587
</td>
 
1588
</tr>
 
1589
</tbody>
 
1590
</table></div>
396
1591
</div>
397
1592
<hr>
398
1593
<div class="refsect2" title="bigint_subm ()">
399
1594
<a name="bigint-subm"></a><h3>bigint_subm ()</h3>
400
 
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            bigint_subm                         (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> w,
401
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
402
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> b,
403
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> m);</pre>
 
1595
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (*bigint_subm)                      (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> w</code></em>,
 
1596
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
1597
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> b</code></em>,
 
1598
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> m</code></em>);</pre>
 
1599
<p>
 
1600
</p>
 
1601
<div class="variablelist"><table border="0">
 
1602
<col align="left" valign="top">
 
1603
<tbody>
 
1604
<tr>
 
1605
<td><p><span class="term"><em class="parameter"><code>w</code></em> :</span></p></td>
 
1606
<td>
 
1607
</td>
 
1608
</tr>
 
1609
<tr>
 
1610
<td><p><span class="term"><em class="parameter"><code>a</code></em> :</span></p></td>
 
1611
<td>
 
1612
</td>
 
1613
</tr>
 
1614
<tr>
 
1615
<td><p><span class="term"><em class="parameter"><code>b</code></em> :</span></p></td>
 
1616
<td>
 
1617
</td>
 
1618
</tr>
 
1619
<tr>
 
1620
<td><p><span class="term"><em class="parameter"><code>m</code></em> :</span></p></td>
 
1621
<td>
 
1622
</td>
 
1623
</tr>
 
1624
<tr>
 
1625
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1626
<td>
 
1627
</td>
 
1628
</tr>
 
1629
</tbody>
 
1630
</table></div>
404
1631
</div>
405
1632
<hr>
406
1633
<div class="refsect2" title="bigint_mulm ()">
407
1634
<a name="bigint-mulm"></a><h3>bigint_mulm ()</h3>
408
 
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            bigint_mulm                         (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> w,
409
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
410
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> b,
411
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> m);</pre>
 
1635
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (*bigint_mulm)                      (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> w</code></em>,
 
1636
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
1637
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> b</code></em>,
 
1638
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> m</code></em>);</pre>
 
1639
<p>
 
1640
</p>
 
1641
<div class="variablelist"><table border="0">
 
1642
<col align="left" valign="top">
 
1643
<tbody>
 
1644
<tr>
 
1645
<td><p><span class="term"><em class="parameter"><code>w</code></em> :</span></p></td>
 
1646
<td>
 
1647
</td>
 
1648
</tr>
 
1649
<tr>
 
1650
<td><p><span class="term"><em class="parameter"><code>a</code></em> :</span></p></td>
 
1651
<td>
 
1652
</td>
 
1653
</tr>
 
1654
<tr>
 
1655
<td><p><span class="term"><em class="parameter"><code>b</code></em> :</span></p></td>
 
1656
<td>
 
1657
</td>
 
1658
</tr>
 
1659
<tr>
 
1660
<td><p><span class="term"><em class="parameter"><code>m</code></em> :</span></p></td>
 
1661
<td>
 
1662
</td>
 
1663
</tr>
 
1664
<tr>
 
1665
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1666
<td>
 
1667
</td>
 
1668
</tr>
 
1669
</tbody>
 
1670
</table></div>
412
1671
</div>
413
1672
<hr>
414
1673
<div class="refsect2" title="bigint_mul ()">
415
1674
<a name="bigint-mul"></a><h3>bigint_mul ()</h3>
416
 
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            bigint_mul                          (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> w,
417
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
418
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> b);</pre>
 
1675
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (*bigint_mul)                       (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> w</code></em>,
 
1676
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
1677
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> b</code></em>);</pre>
 
1678
<p>
 
1679
</p>
 
1680
<div class="variablelist"><table border="0">
 
1681
<col align="left" valign="top">
 
1682
<tbody>
 
1683
<tr>
 
1684
<td><p><span class="term"><em class="parameter"><code>w</code></em> :</span></p></td>
 
1685
<td>
 
1686
</td>
 
1687
</tr>
 
1688
<tr>
 
1689
<td><p><span class="term"><em class="parameter"><code>a</code></em> :</span></p></td>
 
1690
<td>
 
1691
</td>
 
1692
</tr>
 
1693
<tr>
 
1694
<td><p><span class="term"><em class="parameter"><code>b</code></em> :</span></p></td>
 
1695
<td>
 
1696
</td>
 
1697
</tr>
 
1698
<tr>
 
1699
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1700
<td>
 
1701
</td>
 
1702
</tr>
 
1703
</tbody>
 
1704
</table></div>
419
1705
</div>
420
1706
<hr>
421
1707
<div class="refsect2" title="bigint_add_ui ()">
422
1708
<a name="bigint-add-ui"></a><h3>bigint_add_ui ()</h3>
423
 
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            bigint_add_ui                       (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> w,
424
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
425
 
                                                         unsigned long  b);</pre>
 
1709
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (*bigint_add_ui)                    (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> w</code></em>,
 
1710
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
1711
                                                         <em class="parameter"><code><span class="type">unsigned long </span> b</code></em>);</pre>
 
1712
<p>
 
1713
</p>
 
1714
<div class="variablelist"><table border="0">
 
1715
<col align="left" valign="top">
 
1716
<tbody>
 
1717
<tr>
 
1718
<td><p><span class="term"><em class="parameter"><code>w</code></em> :</span></p></td>
 
1719
<td>
 
1720
</td>
 
1721
</tr>
 
1722
<tr>
 
1723
<td><p><span class="term"><em class="parameter"><code>a</code></em> :</span></p></td>
 
1724
<td>
 
1725
</td>
 
1726
</tr>
 
1727
<tr>
 
1728
<td><p><span class="term"><em class="parameter"><code>b</code></em> :</span></p></td>
 
1729
<td>
 
1730
</td>
 
1731
</tr>
 
1732
<tr>
 
1733
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1734
<td>
 
1735
</td>
 
1736
</tr>
 
1737
</tbody>
 
1738
</table></div>
426
1739
</div>
427
1740
<hr>
428
1741
<div class="refsect2" title="bigint_sub_ui ()">
429
1742
<a name="bigint-sub-ui"></a><h3>bigint_sub_ui ()</h3>
430
 
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            bigint_sub_ui                       (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> w,
431
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
432
 
                                                         unsigned long  b);</pre>
 
1743
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (*bigint_sub_ui)                    (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> w</code></em>,
 
1744
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
1745
                                                         <em class="parameter"><code><span class="type">unsigned long </span> b</code></em>);</pre>
 
1746
<p>
 
1747
</p>
 
1748
<div class="variablelist"><table border="0">
 
1749
<col align="left" valign="top">
 
1750
<tbody>
 
1751
<tr>
 
1752
<td><p><span class="term"><em class="parameter"><code>w</code></em> :</span></p></td>
 
1753
<td>
 
1754
</td>
 
1755
</tr>
 
1756
<tr>
 
1757
<td><p><span class="term"><em class="parameter"><code>a</code></em> :</span></p></td>
 
1758
<td>
 
1759
</td>
 
1760
</tr>
 
1761
<tr>
 
1762
<td><p><span class="term"><em class="parameter"><code>b</code></em> :</span></p></td>
 
1763
<td>
 
1764
</td>
 
1765
</tr>
 
1766
<tr>
 
1767
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1768
<td>
 
1769
</td>
 
1770
</tr>
 
1771
</tbody>
 
1772
</table></div>
433
1773
</div>
434
1774
<hr>
435
1775
<div class="refsect2" title="bigint_mul_ui ()">
436
1776
<a name="bigint-mul-ui"></a><h3>bigint_mul_ui ()</h3>
437
 
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            bigint_mul_ui                       (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> w,
438
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
439
 
                                                         unsigned long  b);</pre>
 
1777
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (*bigint_mul_ui)                    (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> w</code></em>,
 
1778
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
1779
                                                         <em class="parameter"><code><span class="type">unsigned long </span> b</code></em>);</pre>
 
1780
<p>
 
1781
</p>
 
1782
<div class="variablelist"><table border="0">
 
1783
<col align="left" valign="top">
 
1784
<tbody>
 
1785
<tr>
 
1786
<td><p><span class="term"><em class="parameter"><code>w</code></em> :</span></p></td>
 
1787
<td>
 
1788
</td>
 
1789
</tr>
 
1790
<tr>
 
1791
<td><p><span class="term"><em class="parameter"><code>a</code></em> :</span></p></td>
 
1792
<td>
 
1793
</td>
 
1794
</tr>
 
1795
<tr>
 
1796
<td><p><span class="term"><em class="parameter"><code>b</code></em> :</span></p></td>
 
1797
<td>
 
1798
</td>
 
1799
</tr>
 
1800
<tr>
 
1801
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1802
<td>
 
1803
</td>
 
1804
</tr>
 
1805
</tbody>
 
1806
</table></div>
440
1807
</div>
441
1808
<hr>
442
1809
<div class="refsect2" title="bigint_div ()">
443
1810
<a name="bigint-div"></a><h3>bigint_div ()</h3>
444
 
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            bigint_div                          (<a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> q,
445
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
446
 
                                                         const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> b);</pre>
 
1811
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (*bigint_div)                       (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> q</code></em>,
 
1812
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
1813
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> b</code></em>);</pre>
 
1814
<p>
 
1815
</p>
 
1816
<div class="variablelist"><table border="0">
 
1817
<col align="left" valign="top">
 
1818
<tbody>
 
1819
<tr>
 
1820
<td><p><span class="term"><em class="parameter"><code>q</code></em> :</span></p></td>
 
1821
<td>
 
1822
</td>
 
1823
</tr>
 
1824
<tr>
 
1825
<td><p><span class="term"><em class="parameter"><code>a</code></em> :</span></p></td>
 
1826
<td>
 
1827
</td>
 
1828
</tr>
 
1829
<tr>
 
1830
<td><p><span class="term"><em class="parameter"><code>b</code></em> :</span></p></td>
 
1831
<td>
 
1832
</td>
 
1833
</tr>
 
1834
<tr>
 
1835
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1836
<td>
 
1837
</td>
 
1838
</tr>
 
1839
</tbody>
 
1840
</table></div>
447
1841
</div>
448
1842
<hr>
449
1843
<div class="refsect2" title="bigint_prime_check ()">
450
1844
<a name="bigint-prime-check"></a><h3>bigint_prime_check ()</h3>
451
 
<pre class="programlisting">int                 bigint_prime_check                  (const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> pp);</pre>
 
1845
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (*bigint_prime_check)               (<em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> pp</code></em>);</pre>
 
1846
<p>
 
1847
</p>
 
1848
<div class="variablelist"><table border="0">
 
1849
<col align="left" valign="top">
 
1850
<tbody>
 
1851
<tr>
 
1852
<td><p><span class="term"><em class="parameter"><code>pp</code></em> :</span></p></td>
 
1853
<td>
 
1854
</td>
 
1855
</tr>
 
1856
<tr>
 
1857
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1858
<td>
 
1859
</td>
 
1860
</tr>
 
1861
</tbody>
 
1862
</table></div>
452
1863
</div>
453
1864
<hr>
454
1865
<div class="refsect2" title="bigint_generate_group ()">
455
1866
<a name="bigint-generate-group"></a><h3>bigint_generate_group ()</h3>
456
 
<pre class="programlisting">int                 bigint_generate_group               (gnutls_group_st *gg,
457
 
                                                         unsigned int bits);</pre>
 
1867
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (*bigint_generate_group)            (<em class="parameter"><code><span class="type">gnutls_group_st</span> *gg</code></em>,
 
1868
                                                         <em class="parameter"><code>unsigned <a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> bits</code></em>);</pre>
 
1869
<p>
 
1870
</p>
 
1871
<div class="variablelist"><table border="0">
 
1872
<col align="left" valign="top">
 
1873
<tbody>
 
1874
<tr>
 
1875
<td><p><span class="term"><em class="parameter"><code>gg</code></em> :</span></p></td>
 
1876
<td>
 
1877
</td>
 
1878
</tr>
 
1879
<tr>
 
1880
<td><p><span class="term"><em class="parameter"><code>bits</code></em> :</span></p></td>
 
1881
<td>
 
1882
</td>
 
1883
</tr>
 
1884
<tr>
 
1885
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1886
<td>
 
1887
</td>
 
1888
</tr>
 
1889
</tbody>
 
1890
</table></div>
458
1891
</div>
459
1892
<hr>
460
1893
<div class="refsect2" title="bigint_scan ()">
461
1894
<a name="bigint-scan"></a><h3>bigint_scan ()</h3>
462
 
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a>            bigint_scan                         (const void *buf,
463
 
                                                         size_t buf_size,
464
 
                                                         <a class="link" href="gnutls-crypto.html#gnutls-bigint-format-t" title="enum gnutls_bigint_format_t">gnutls_bigint_format_t</a> format);</pre>
 
1895
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="returnvalue">bigint_t</span></a>            (*bigint_scan)                      (<em class="parameter"><code>const <span class="type">void</span> *buf</code></em>,
 
1896
                                                         <em class="parameter"><code><span class="type">size_t</span> buf_size</code></em>,
 
1897
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-bigint-format-t" title="enum gnutls_bigint_format_t"><span class="type">gnutls_bigint_format_t</span></a> format</code></em>);</pre>
 
1898
<p>
 
1899
</p>
 
1900
<div class="variablelist"><table border="0">
 
1901
<col align="left" valign="top">
 
1902
<tbody>
 
1903
<tr>
 
1904
<td><p><span class="term"><em class="parameter"><code>buf</code></em> :</span></p></td>
 
1905
<td>
 
1906
</td>
 
1907
</tr>
 
1908
<tr>
 
1909
<td><p><span class="term"><em class="parameter"><code>buf_size</code></em> :</span></p></td>
 
1910
<td>
 
1911
</td>
 
1912
</tr>
 
1913
<tr>
 
1914
<td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
 
1915
<td>
 
1916
</td>
 
1917
</tr>
 
1918
<tr>
 
1919
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1920
<td>
 
1921
</td>
 
1922
</tr>
 
1923
</tbody>
 
1924
</table></div>
465
1925
</div>
466
1926
<hr>
467
1927
<div class="refsect2" title="bigint_print ()">
468
1928
<a name="bigint-print"></a><h3>bigint_print ()</h3>
469
 
<pre class="programlisting">int                 bigint_print                        (const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t">bigint_t</a> a,
470
 
                                                         void *buf,
471
 
                                                         size_t *buf_size,
472
 
                                                         <a class="link" href="gnutls-crypto.html#gnutls-bigint-format-t" title="enum gnutls_bigint_format_t">gnutls_bigint_format_t</a> format);</pre>
 
1929
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (*bigint_print)                     (<em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#bigint-t" title="bigint_t"><span class="type">bigint_t</span></a> a</code></em>,
 
1930
                                                         <em class="parameter"><code><span class="type">void</span> *buf</code></em>,
 
1931
                                                         <em class="parameter"><code><span class="type">size_t</span> *buf_size</code></em>,
 
1932
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-bigint-format-t" title="enum gnutls_bigint_format_t"><span class="type">gnutls_bigint_format_t</span></a> format</code></em>);</pre>
 
1933
<p>
 
1934
</p>
 
1935
<div class="variablelist"><table border="0">
 
1936
<col align="left" valign="top">
 
1937
<tbody>
 
1938
<tr>
 
1939
<td><p><span class="term"><em class="parameter"><code>a</code></em> :</span></p></td>
 
1940
<td>
 
1941
</td>
 
1942
</tr>
 
1943
<tr>
 
1944
<td><p><span class="term"><em class="parameter"><code>buf</code></em> :</span></p></td>
 
1945
<td>
 
1946
</td>
 
1947
</tr>
 
1948
<tr>
 
1949
<td><p><span class="term"><em class="parameter"><code>buf_size</code></em> :</span></p></td>
 
1950
<td>
 
1951
</td>
 
1952
</tr>
 
1953
<tr>
 
1954
<td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td>
 
1955
<td>
 
1956
</td>
 
1957
</tr>
 
1958
<tr>
 
1959
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1960
<td>
 
1961
</td>
 
1962
</tr>
 
1963
</tbody>
 
1964
</table></div>
473
1965
</div>
474
1966
<hr>
475
1967
<div class="refsect2" title="GNUTLS_MAX_PK_PARAMS">
476
 
<a name="GNUTLS-MAX-PK-PARAMS--CAPS"></a><h3>GNUTLS_MAX_PK_PARAMS</h3>
 
1968
<a name="GNUTLS-MAX-PK-PARAMS:CAPS"></a><h3>GNUTLS_MAX_PK_PARAMS</h3>
477
1969
<pre class="programlisting">#define GNUTLS_MAX_PK_PARAMS 6
478
1970
</pre>
 
1971
<p>
 
1972
</p>
479
1973
</div>
480
1974
<hr>
481
1975
<div class="refsect2" title="gnutls_pk_params_release ()">
482
1976
<a name="gnutls-pk-params-release"></a><h3>gnutls_pk_params_release ()</h3>
483
 
<pre class="programlisting">void                gnutls_pk_params_release            (gnutls_pk_params_st *p);</pre>
 
1977
<pre class="programlisting"><span class="returnvalue">void</span>                gnutls_pk_params_release            (<em class="parameter"><code><span class="type">gnutls_pk_params_st</span> *p</code></em>);</pre>
 
1978
<p>
 
1979
</p>
 
1980
<div class="variablelist"><table border="0">
 
1981
<col align="left" valign="top">
 
1982
<tbody><tr>
 
1983
<td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
 
1984
<td>
 
1985
</td>
 
1986
</tr></tbody>
 
1987
</table></div>
484
1988
</div>
485
1989
<hr>
486
1990
<div class="refsect2" title="gnutls_pk_params_init ()">
487
1991
<a name="gnutls-pk-params-init"></a><h3>gnutls_pk_params_init ()</h3>
488
 
<pre class="programlisting">void                gnutls_pk_params_init               (gnutls_pk_params_st *p);</pre>
 
1992
<pre class="programlisting"><span class="returnvalue">void</span>                gnutls_pk_params_init               (<em class="parameter"><code><span class="type">gnutls_pk_params_st</span> *p</code></em>);</pre>
 
1993
<p>
 
1994
</p>
 
1995
<div class="variablelist"><table border="0">
 
1996
<col align="left" valign="top">
 
1997
<tbody><tr>
 
1998
<td><p><span class="term"><em class="parameter"><code>p</code></em> :</span></p></td>
 
1999
<td>
 
2000
</td>
 
2001
</tr></tbody>
 
2002
</table></div>
489
2003
</div>
490
2004
<hr>
491
2005
<div class="refsect2" title="enum gnutls_direction_t">
492
2006
<a name="gnutls-direction-t"></a><h3>enum gnutls_direction_t</h3>
493
2007
<pre class="programlisting">typedef enum
494
2008
{
495
 
  GNUTLS_IMPORT,
496
 
  GNUTLS_EXPORT
 
2009
  GNUTLS_IMPORT = 0,
 
2010
  GNUTLS_EXPORT = 1
497
2011
} gnutls_direction_t;
498
2012
</pre>
 
2013
<p>
 
2014
Enumeration of different directions.</p>
 
2015
<div class="variablelist"><table border="0">
 
2016
<col align="left" valign="top">
 
2017
<tbody>
 
2018
<tr>
 
2019
<td><p><a name="GNUTLS-IMPORT:CAPS"></a><span class="term"><code class="literal">GNUTLS_IMPORT</code></span></p></td>
 
2020
<td>Import direction.
 
2021
</td>
 
2022
</tr>
 
2023
<tr>
 
2024
<td><p><a name="GNUTLS-EXPORT:CAPS"></a><span class="term"><code class="literal">GNUTLS_EXPORT</code></span></p></td>
 
2025
<td>Export direction.
 
2026
</td>
 
2027
</tr>
 
2028
</tbody>
 
2029
</table></div>
499
2030
</div>
500
2031
<hr>
501
2032
<div class="refsect2" title="sign ()">
502
2033
<a name="sign"></a><h3>sign ()</h3>
503
 
<pre class="programlisting">int                 sign                                (<a class="link" href="gnutls-gnutls.html#gnutls-pk-algorithm-t" title="enum gnutls_pk_algorithm_t">gnutls_pk_algorithm_t</a> ,
504
 
                                                         gnutls_datum_t *signature,
505
 
                                                         const gnutls_datum_t *data,
506
 
                                                         const gnutls_pk_params_st *);</pre>
 
2034
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (*sign)                             (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-pk-algorithm-t" title="enum gnutls_pk_algorithm_t"><span class="type">gnutls_pk_algorithm_t</span></a> Param1</code></em>,
 
2035
                                                         <em class="parameter"><code><span class="type">gnutls_datum_t</span> *signature</code></em>,
 
2036
                                                         <em class="parameter"><code>const <span class="type">gnutls_datum_t</span> *data</code></em>,
 
2037
                                                         <em class="parameter"><code>const <span class="type">gnutls_pk_params_st</span> *private</code></em>);</pre>
 
2038
<p>
 
2039
</p>
 
2040
<div class="variablelist"><table border="0">
 
2041
<col align="left" valign="top">
 
2042
<tbody>
 
2043
<tr>
 
2044
<td><p><span class="term"><em class="parameter"><code>Param1</code></em> :</span></p></td>
 
2045
<td>
 
2046
</td>
 
2047
</tr>
 
2048
<tr>
 
2049
<td><p><span class="term"><em class="parameter"><code>signature</code></em> :</span></p></td>
 
2050
<td>
 
2051
</td>
 
2052
</tr>
 
2053
<tr>
 
2054
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
 
2055
<td>
 
2056
</td>
 
2057
</tr>
 
2058
<tr>
 
2059
<td><p><span class="term"><em class="parameter"><code>private</code></em> :</span></p></td>
 
2060
<td>
 
2061
</td>
 
2062
</tr>
 
2063
<tr>
 
2064
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
2065
<td>
 
2066
</td>
 
2067
</tr>
 
2068
</tbody>
 
2069
</table></div>
507
2070
</div>
508
2071
<hr>
509
2072
<div class="refsect2" title="verify ()">
510
2073
<a name="verify"></a><h3>verify ()</h3>
511
 
<pre class="programlisting">int                 verify                              (<a class="link" href="gnutls-gnutls.html#gnutls-pk-algorithm-t" title="enum gnutls_pk_algorithm_t">gnutls_pk_algorithm_t</a> ,
512
 
                                                         const gnutls_datum_t *data,
513
 
                                                         const gnutls_datum_t *signature,
514
 
                                                         const gnutls_pk_params_st *);</pre>
 
2074
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (*verify)                           (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-pk-algorithm-t" title="enum gnutls_pk_algorithm_t"><span class="type">gnutls_pk_algorithm_t</span></a> Param1</code></em>,
 
2075
                                                         <em class="parameter"><code>const <span class="type">gnutls_datum_t</span> *data</code></em>,
 
2076
                                                         <em class="parameter"><code>const <span class="type">gnutls_datum_t</span> *signature</code></em>,
 
2077
                                                         <em class="parameter"><code>const <span class="type">gnutls_pk_params_st</span> *public</code></em>);</pre>
 
2078
<p>
 
2079
</p>
 
2080
<div class="variablelist"><table border="0">
 
2081
<col align="left" valign="top">
 
2082
<tbody>
 
2083
<tr>
 
2084
<td><p><span class="term"><em class="parameter"><code>Param1</code></em> :</span></p></td>
 
2085
<td>
 
2086
</td>
 
2087
</tr>
 
2088
<tr>
 
2089
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
 
2090
<td>
 
2091
</td>
 
2092
</tr>
 
2093
<tr>
 
2094
<td><p><span class="term"><em class="parameter"><code>signature</code></em> :</span></p></td>
 
2095
<td>
 
2096
</td>
 
2097
</tr>
 
2098
<tr>
 
2099
<td><p><span class="term"><em class="parameter"><code>public</code></em> :</span></p></td>
 
2100
<td>
 
2101
</td>
 
2102
</tr>
 
2103
<tr>
 
2104
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
2105
<td>
 
2106
</td>
 
2107
</tr>
 
2108
</tbody>
 
2109
</table></div>
515
2110
</div>
516
2111
<hr>
517
2112
<div class="refsect2" title="generate ()">
518
2113
<a name="generate"></a><h3>generate ()</h3>
519
 
<pre class="programlisting">int                 generate                            (<a class="link" href="gnutls-gnutls.html#gnutls-pk-algorithm-t" title="enum gnutls_pk_algorithm_t">gnutls_pk_algorithm_t</a> ,
520
 
                                                         unsigned int level,
521
 
                                                         gnutls_pk_params_st *);</pre>
 
2114
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (*generate)                         (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-pk-algorithm-t" title="enum gnutls_pk_algorithm_t"><span class="type">gnutls_pk_algorithm_t</span></a> Param1</code></em>,
 
2115
                                                         <em class="parameter"><code>unsigned <a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> nbits</code></em>,
 
2116
                                                         <em class="parameter"><code><span class="type">gnutls_pk_params_st</span> *Param3</code></em>);</pre>
 
2117
<p>
 
2118
</p>
 
2119
<div class="variablelist"><table border="0">
 
2120
<col align="left" valign="top">
 
2121
<tbody>
 
2122
<tr>
 
2123
<td><p><span class="term"><em class="parameter"><code>Param1</code></em> :</span></p></td>
 
2124
<td>
 
2125
</td>
 
2126
</tr>
 
2127
<tr>
 
2128
<td><p><span class="term"><em class="parameter"><code>nbits</code></em> :</span></p></td>
 
2129
<td>
 
2130
</td>
 
2131
</tr>
 
2132
<tr>
 
2133
<td><p><span class="term"><em class="parameter"><code>Param3</code></em> :</span></p></td>
 
2134
<td>
 
2135
</td>
 
2136
</tr>
 
2137
<tr>
 
2138
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
2139
<td>
 
2140
</td>
 
2141
</tr>
 
2142
</tbody>
 
2143
</table></div>
522
2144
</div>
523
2145
<hr>
524
2146
<div class="refsect2" title="pk_fixup_private_params ()">
525
2147
<a name="pk-fixup-private-params"></a><h3>pk_fixup_private_params ()</h3>
526
 
<pre class="programlisting">int                 pk_fixup_private_params             (<a class="link" href="gnutls-gnutls.html#gnutls-pk-algorithm-t" title="enum gnutls_pk_algorithm_t">gnutls_pk_algorithm_t</a> ,
527
 
                                                         <a class="link" href="gnutls-crypto.html#gnutls-direction-t" title="enum gnutls_direction_t">gnutls_direction_t</a> ,
528
 
                                                         gnutls_pk_params_st *);</pre>
 
2148
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 (*pk_fixup_private_params)          (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-pk-algorithm-t" title="enum gnutls_pk_algorithm_t"><span class="type">gnutls_pk_algorithm_t</span></a> Param1</code></em>,
 
2149
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#gnutls-direction-t" title="enum gnutls_direction_t"><span class="type">gnutls_direction_t</span></a> Param2</code></em>,
 
2150
                                                         <em class="parameter"><code><span class="type">gnutls_pk_params_st</span> *Param3</code></em>);</pre>
 
2151
<p>
 
2152
</p>
 
2153
<div class="variablelist"><table border="0">
 
2154
<col align="left" valign="top">
 
2155
<tbody>
 
2156
<tr>
 
2157
<td><p><span class="term"><em class="parameter"><code>Param1</code></em> :</span></p></td>
 
2158
<td>
 
2159
</td>
 
2160
</tr>
 
2161
<tr>
 
2162
<td><p><span class="term"><em class="parameter"><code>Param2</code></em> :</span></p></td>
 
2163
<td>
 
2164
</td>
 
2165
</tr>
 
2166
<tr>
 
2167
<td><p><span class="term"><em class="parameter"><code>Param3</code></em> :</span></p></td>
 
2168
<td>
 
2169
</td>
 
2170
</tr>
 
2171
<tr>
 
2172
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
2173
<td>
 
2174
</td>
 
2175
</tr>
 
2176
</tbody>
 
2177
</table></div>
529
2178
</div>
530
2179
<hr>
531
2180
<div class="refsect2" title="gnutls_crypto_single_cipher_register()">
532
2181
<a name="gnutls-crypto-single-cipher-register"></a><h3>gnutls_crypto_single_cipher_register()</h3>
533
2182
<pre class="programlisting">#define             gnutls_crypto_single_cipher_register(algo, prio, st)</pre>
 
2183
<p>
 
2184
</p>
 
2185
<div class="variablelist"><table border="0">
 
2186
<col align="left" valign="top">
 
2187
<tbody>
 
2188
<tr>
 
2189
<td><p><span class="term"><em class="parameter"><code>algo</code></em> :</span></p></td>
 
2190
<td>
 
2191
</td>
 
2192
</tr>
 
2193
<tr>
 
2194
<td><p><span class="term"><em class="parameter"><code>prio</code></em> :</span></p></td>
 
2195
<td>
 
2196
</td>
 
2197
</tr>
 
2198
<tr>
 
2199
<td><p><span class="term"><em class="parameter"><code>st</code></em> :</span></p></td>
 
2200
<td>
 
2201
</td>
 
2202
</tr>
 
2203
</tbody>
 
2204
</table></div>
534
2205
</div>
535
2206
<hr>
536
2207
<div class="refsect2" title="gnutls_crypto_single_mac_register()">
537
2208
<a name="gnutls-crypto-single-mac-register"></a><h3>gnutls_crypto_single_mac_register()</h3>
538
2209
<pre class="programlisting">#define             gnutls_crypto_single_mac_register(algo, prio, st)</pre>
 
2210
<p>
 
2211
</p>
 
2212
<div class="variablelist"><table border="0">
 
2213
<col align="left" valign="top">
 
2214
<tbody>
 
2215
<tr>
 
2216
<td><p><span class="term"><em class="parameter"><code>algo</code></em> :</span></p></td>
 
2217
<td>
 
2218
</td>
 
2219
</tr>
 
2220
<tr>
 
2221
<td><p><span class="term"><em class="parameter"><code>prio</code></em> :</span></p></td>
 
2222
<td>
 
2223
</td>
 
2224
</tr>
 
2225
<tr>
 
2226
<td><p><span class="term"><em class="parameter"><code>st</code></em> :</span></p></td>
 
2227
<td>
 
2228
</td>
 
2229
</tr>
 
2230
</tbody>
 
2231
</table></div>
539
2232
</div>
540
2233
<hr>
541
2234
<div class="refsect2" title="gnutls_crypto_single_digest_register()">
542
2235
<a name="gnutls-crypto-single-digest-register"></a><h3>gnutls_crypto_single_digest_register()</h3>
543
2236
<pre class="programlisting">#define             gnutls_crypto_single_digest_register(algo, prio, st)</pre>
 
2237
<p>
 
2238
</p>
 
2239
<div class="variablelist"><table border="0">
 
2240
<col align="left" valign="top">
 
2241
<tbody>
 
2242
<tr>
 
2243
<td><p><span class="term"><em class="parameter"><code>algo</code></em> :</span></p></td>
 
2244
<td>
 
2245
</td>
 
2246
</tr>
 
2247
<tr>
 
2248
<td><p><span class="term"><em class="parameter"><code>prio</code></em> :</span></p></td>
 
2249
<td>
 
2250
</td>
 
2251
</tr>
 
2252
<tr>
 
2253
<td><p><span class="term"><em class="parameter"><code>st</code></em> :</span></p></td>
 
2254
<td>
 
2255
</td>
 
2256
</tr>
 
2257
</tbody>
 
2258
</table></div>
544
2259
</div>
545
2260
<hr>
546
2261
<div class="refsect2" title="gnutls_crypto_single_cipher_register2 ()">
547
2262
<a name="gnutls-crypto-single-cipher-register2"></a><h3>gnutls_crypto_single_cipher_register2 ()</h3>
548
 
<pre class="programlisting">int                 gnutls_crypto_single_cipher_register2
549
 
                                                        (<a class="link" href="gnutls-gnutls.html#gnutls-cipher-algorithm-t" title="enum gnutls_cipher_algorithm_t">gnutls_cipher_algorithm_t</a> algorithm,
550
 
                                                         int priority,
551
 
                                                         int version,
552
 
                                                         gnutls_crypto_single_cipher_st *s);</pre>
 
2263
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_crypto_single_cipher_register2
 
2264
                                                        (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-cipher-algorithm-t" title="enum gnutls_cipher_algorithm_t"><span class="type">gnutls_cipher_algorithm_t</span></a> algorithm</code></em>,
 
2265
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> priority</code></em>,
 
2266
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> version</code></em>,
 
2267
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-cipher-st" title="gnutls_crypto_single_cipher_st"><span class="type">gnutls_crypto_single_cipher_st</span></a> *s</code></em>);</pre>
 
2268
<p>
 
2269
This function will register a cipher algorithm to be used by
 
2270
gnutls.  Any algorithm registered will override the included
 
2271
algorithms and by convention kernel implemented algorithms have
 
2272
priority of 90.  The algorithm with the lowest priority will be
 
2273
used by gnutls.
 
2274
</p>
 
2275
<p>
 
2276
This function should be called before <a class="link" href="gnutls-gnutls.html#gnutls-global-init" title="gnutls_global_init ()"><code class="function">gnutls_global_init()</code></a>.
 
2277
</p>
 
2278
<p>
 
2279
For simplicity you can use the convenience
 
2280
<a class="link" href="gnutls-crypto.html#gnutls-crypto-single-cipher-register" title="gnutls_crypto_single_cipher_register()"><code class="function">gnutls_crypto_single_cipher_register()</code></a> macro.</p>
 
2281
<div class="variablelist"><table border="0">
 
2282
<col align="left" valign="top">
 
2283
<tbody>
 
2284
<tr>
 
2285
<td><p><span class="term"><em class="parameter"><code>algorithm</code></em> :</span></p></td>
 
2286
<td>is the gnutls algorithm identifier
 
2287
</td>
 
2288
</tr>
 
2289
<tr>
 
2290
<td><p><span class="term"><em class="parameter"><code>priority</code></em> :</span></p></td>
 
2291
<td>is the priority of the algorithm
 
2292
</td>
 
2293
</tr>
 
2294
<tr>
 
2295
<td><p><span class="term"><em class="parameter"><code>version</code></em> :</span></p></td>
 
2296
<td>should be set to <a class="link" href="gnutls-crypto.html#GNUTLS-CRYPTO-API-VERSION:CAPS" title="GNUTLS_CRYPTO_API_VERSION"><code class="literal">GNUTLS_CRYPTO_API_VERSION</code></a>
 
2297
</td>
 
2298
</tr>
 
2299
<tr>
 
2300
<td><p><span class="term"><em class="parameter"><code>s</code></em> :</span></p></td>
 
2301
<td>is a structure holding new cipher's data
 
2302
</td>
 
2303
</tr>
 
2304
<tr>
 
2305
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
2306
<td> <a class="link" href="gnutls-gnutls.html#GNUTLS-E-SUCCESS:CAPS" title="GNUTLS_E_SUCCESS"><code class="literal">GNUTLS_E_SUCCESS</code></a> on success, otherwise an error.
 
2307
 
 
2308
</td>
 
2309
</tr>
 
2310
</tbody>
 
2311
</table></div>
553
2312
<p class="since">Since 2.6.0</p>
554
2313
</div>
555
2314
<hr>
556
2315
<div class="refsect2" title="gnutls_crypto_single_mac_register2 ()">
557
2316
<a name="gnutls-crypto-single-mac-register2"></a><h3>gnutls_crypto_single_mac_register2 ()</h3>
558
 
<pre class="programlisting">int                 gnutls_crypto_single_mac_register2  (<a class="link" href="gnutls-gnutls.html#gnutls-mac-algorithm-t" title="enum gnutls_mac_algorithm_t">gnutls_mac_algorithm_t</a> algorithm,
559
 
                                                         int priority,
560
 
                                                         int version,
561
 
                                                         gnutls_crypto_single_mac_st *s);</pre>
 
2317
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_crypto_single_mac_register2  (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-mac-algorithm-t" title="enum gnutls_mac_algorithm_t"><span class="type">gnutls_mac_algorithm_t</span></a> algorithm</code></em>,
 
2318
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> priority</code></em>,
 
2319
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> version</code></em>,
 
2320
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-mac-st" title="gnutls_crypto_single_mac_st"><span class="type">gnutls_crypto_single_mac_st</span></a> *s</code></em>);</pre>
 
2321
<p>
 
2322
This function will register a MAC algorithm to be used by gnutls.
 
2323
Any algorithm registered will override the included algorithms and
 
2324
by convention kernel implemented algorithms have priority of 90.
 
2325
The algorithm with the lowest priority will be used by gnutls.
 
2326
</p>
 
2327
<p>
 
2328
This function should be called before <a class="link" href="gnutls-gnutls.html#gnutls-global-init" title="gnutls_global_init ()"><code class="function">gnutls_global_init()</code></a>.
 
2329
</p>
 
2330
<p>
 
2331
For simplicity you can use the convenience
 
2332
<a class="link" href="gnutls-crypto.html#gnutls-crypto-single-mac-register" title="gnutls_crypto_single_mac_register()"><code class="function">gnutls_crypto_single_mac_register()</code></a> macro.</p>
 
2333
<div class="variablelist"><table border="0">
 
2334
<col align="left" valign="top">
 
2335
<tbody>
 
2336
<tr>
 
2337
<td><p><span class="term"><em class="parameter"><code>algorithm</code></em> :</span></p></td>
 
2338
<td>is the gnutls algorithm identifier
 
2339
</td>
 
2340
</tr>
 
2341
<tr>
 
2342
<td><p><span class="term"><em class="parameter"><code>priority</code></em> :</span></p></td>
 
2343
<td>is the priority of the algorithm
 
2344
</td>
 
2345
</tr>
 
2346
<tr>
 
2347
<td><p><span class="term"><em class="parameter"><code>version</code></em> :</span></p></td>
 
2348
<td>should be set to <a class="link" href="gnutls-crypto.html#GNUTLS-CRYPTO-API-VERSION:CAPS" title="GNUTLS_CRYPTO_API_VERSION"><code class="literal">GNUTLS_CRYPTO_API_VERSION</code></a>
 
2349
</td>
 
2350
</tr>
 
2351
<tr>
 
2352
<td><p><span class="term"><em class="parameter"><code>s</code></em> :</span></p></td>
 
2353
<td>is a structure holding new algorithms's data
 
2354
</td>
 
2355
</tr>
 
2356
<tr>
 
2357
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
2358
<td> <a class="link" href="gnutls-gnutls.html#GNUTLS-E-SUCCESS:CAPS" title="GNUTLS_E_SUCCESS"><code class="literal">GNUTLS_E_SUCCESS</code></a> on success, otherwise an error.
 
2359
 
 
2360
</td>
 
2361
</tr>
 
2362
</tbody>
 
2363
</table></div>
562
2364
<p class="since">Since 2.6.0</p>
563
2365
</div>
564
2366
<hr>
565
2367
<div class="refsect2" title="gnutls_crypto_single_digest_register2 ()">
566
2368
<a name="gnutls-crypto-single-digest-register2"></a><h3>gnutls_crypto_single_digest_register2 ()</h3>
567
 
<pre class="programlisting">int                 gnutls_crypto_single_digest_register2
568
 
                                                        (<a class="link" href="gnutls-gnutls.html#gnutls-digest-algorithm-t" title="enum gnutls_digest_algorithm_t">gnutls_digest_algorithm_t</a> algorithm,
569
 
                                                         int priority,
570
 
                                                         int version,
571
 
                                                         <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-digest-st" title="gnutls_crypto_single_digest_st">gnutls_crypto_single_digest_st</a> *s);</pre>
 
2369
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_crypto_single_digest_register2
 
2370
                                                        (<em class="parameter"><code><a class="link" href="gnutls-gnutls.html#gnutls-digest-algorithm-t" title="enum gnutls_digest_algorithm_t"><span class="type">gnutls_digest_algorithm_t</span></a> algorithm</code></em>,
 
2371
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> priority</code></em>,
 
2372
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> version</code></em>,
 
2373
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#gnutls-crypto-single-digest-st" title="gnutls_crypto_single_digest_st"><span class="type">gnutls_crypto_single_digest_st</span></a> *s</code></em>);</pre>
 
2374
<p>
 
2375
This function will register a digest (hash) algorithm to be used by
 
2376
gnutls.  Any algorithm registered will override the included
 
2377
algorithms and by convention kernel implemented algorithms have
 
2378
priority of 90.  The algorithm with the lowest priority will be
 
2379
used by gnutls.
 
2380
</p>
 
2381
<p>
 
2382
This function should be called before <a class="link" href="gnutls-gnutls.html#gnutls-global-init" title="gnutls_global_init ()"><code class="function">gnutls_global_init()</code></a>.
 
2383
</p>
 
2384
<p>
 
2385
For simplicity you can use the convenience
 
2386
<a class="link" href="gnutls-crypto.html#gnutls-crypto-single-digest-register" title="gnutls_crypto_single_digest_register()"><code class="function">gnutls_crypto_single_digest_register()</code></a> macro.</p>
 
2387
<div class="variablelist"><table border="0">
 
2388
<col align="left" valign="top">
 
2389
<tbody>
 
2390
<tr>
 
2391
<td><p><span class="term"><em class="parameter"><code>algorithm</code></em> :</span></p></td>
 
2392
<td>is the gnutls algorithm identifier
 
2393
</td>
 
2394
</tr>
 
2395
<tr>
 
2396
<td><p><span class="term"><em class="parameter"><code>priority</code></em> :</span></p></td>
 
2397
<td>is the priority of the algorithm
 
2398
</td>
 
2399
</tr>
 
2400
<tr>
 
2401
<td><p><span class="term"><em class="parameter"><code>version</code></em> :</span></p></td>
 
2402
<td>should be set to <a class="link" href="gnutls-crypto.html#GNUTLS-CRYPTO-API-VERSION:CAPS" title="GNUTLS_CRYPTO_API_VERSION"><code class="literal">GNUTLS_CRYPTO_API_VERSION</code></a>
 
2403
</td>
 
2404
</tr>
 
2405
<tr>
 
2406
<td><p><span class="term"><em class="parameter"><code>s</code></em> :</span></p></td>
 
2407
<td>is a structure holding new algorithms's data
 
2408
</td>
 
2409
</tr>
 
2410
<tr>
 
2411
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
2412
<td> <a class="link" href="gnutls-gnutls.html#GNUTLS-E-SUCCESS:CAPS" title="GNUTLS_E_SUCCESS"><code class="literal">GNUTLS_E_SUCCESS</code></a> on success, otherwise an error.
 
2413
 
 
2414
</td>
 
2415
</tr>
 
2416
</tbody>
 
2417
</table></div>
572
2418
<p class="since">Since 2.6.0</p>
573
2419
</div>
574
2420
<hr>
575
2421
<div class="refsect2" title="gnutls_crypto_cipher_register()">
576
2422
<a name="gnutls-crypto-cipher-register"></a><h3>gnutls_crypto_cipher_register()</h3>
577
2423
<pre class="programlisting">#define             gnutls_crypto_cipher_register(prio, st)</pre>
 
2424
<p>
 
2425
</p>
 
2426
<div class="variablelist"><table border="0">
 
2427
<col align="left" valign="top">
 
2428
<tbody>
 
2429
<tr>
 
2430
<td><p><span class="term"><em class="parameter"><code>prio</code></em> :</span></p></td>
 
2431
<td>
 
2432
</td>
 
2433
</tr>
 
2434
<tr>
 
2435
<td><p><span class="term"><em class="parameter"><code>st</code></em> :</span></p></td>
 
2436
<td>
 
2437
</td>
 
2438
</tr>
 
2439
</tbody>
 
2440
</table></div>
578
2441
</div>
579
2442
<hr>
580
2443
<div class="refsect2" title="gnutls_crypto_mac_register()">
581
2444
<a name="gnutls-crypto-mac-register"></a><h3>gnutls_crypto_mac_register()</h3>
582
2445
<pre class="programlisting">#define             gnutls_crypto_mac_register(prio, st)</pre>
 
2446
<p>
 
2447
</p>
 
2448
<div class="variablelist"><table border="0">
 
2449
<col align="left" valign="top">
 
2450
<tbody>
 
2451
<tr>
 
2452
<td><p><span class="term"><em class="parameter"><code>prio</code></em> :</span></p></td>
 
2453
<td>
 
2454
</td>
 
2455
</tr>
 
2456
<tr>
 
2457
<td><p><span class="term"><em class="parameter"><code>st</code></em> :</span></p></td>
 
2458
<td>
 
2459
</td>
 
2460
</tr>
 
2461
</tbody>
 
2462
</table></div>
583
2463
</div>
584
2464
<hr>
585
2465
<div class="refsect2" title="gnutls_crypto_digest_register()">
586
2466
<a name="gnutls-crypto-digest-register"></a><h3>gnutls_crypto_digest_register()</h3>
587
2467
<pre class="programlisting">#define             gnutls_crypto_digest_register(prio, st)</pre>
 
2468
<p>
 
2469
</p>
 
2470
<div class="variablelist"><table border="0">
 
2471
<col align="left" valign="top">
 
2472
<tbody>
 
2473
<tr>
 
2474
<td><p><span class="term"><em class="parameter"><code>prio</code></em> :</span></p></td>
 
2475
<td>
 
2476
</td>
 
2477
</tr>
 
2478
<tr>
 
2479
<td><p><span class="term"><em class="parameter"><code>st</code></em> :</span></p></td>
 
2480
<td>
 
2481
</td>
 
2482
</tr>
 
2483
</tbody>
 
2484
</table></div>
588
2485
</div>
589
2486
<hr>
590
2487
<div class="refsect2" title="gnutls_crypto_cipher_register2 ()">
591
2488
<a name="gnutls-crypto-cipher-register2"></a><h3>gnutls_crypto_cipher_register2 ()</h3>
592
 
<pre class="programlisting">int                 gnutls_crypto_cipher_register2      (int priority,
593
 
                                                         int version,
594
 
                                                         gnutls_crypto_cipher_st *s);</pre>
 
2489
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_crypto_cipher_register2      (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> priority</code></em>,
 
2490
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> version</code></em>,
 
2491
                                                         <em class="parameter"><code>const <span class="type">gnutls_crypto_cipher_st</span> *s</code></em>);</pre>
 
2492
<p>
 
2493
This function will register a cipher interface to be used by
 
2494
gnutls. Any interface registered will override the included engine
 
2495
and by convention kernel implemented interfaces should have
 
2496
priority of 90. The interface with the lowest priority will be used
 
2497
by gnutls.
 
2498
</p>
 
2499
<p>
 
2500
This function should be called before <a class="link" href="gnutls-gnutls.html#gnutls-global-init" title="gnutls_global_init ()"><code class="function">gnutls_global_init()</code></a>.
 
2501
</p>
 
2502
<p>
 
2503
For simplicity you can use the convenience
 
2504
<a class="link" href="gnutls-crypto.html#gnutls-crypto-cipher-register" title="gnutls_crypto_cipher_register()"><code class="function">gnutls_crypto_cipher_register()</code></a> macro.</p>
 
2505
<div class="variablelist"><table border="0">
 
2506
<col align="left" valign="top">
 
2507
<tbody>
 
2508
<tr>
 
2509
<td><p><span class="term"><em class="parameter"><code>priority</code></em> :</span></p></td>
 
2510
<td>is the priority of the cipher interface
 
2511
</td>
 
2512
</tr>
 
2513
<tr>
 
2514
<td><p><span class="term"><em class="parameter"><code>version</code></em> :</span></p></td>
 
2515
<td>should be set to <a class="link" href="gnutls-crypto.html#GNUTLS-CRYPTO-API-VERSION:CAPS" title="GNUTLS_CRYPTO_API_VERSION"><code class="literal">GNUTLS_CRYPTO_API_VERSION</code></a>
 
2516
</td>
 
2517
</tr>
 
2518
<tr>
 
2519
<td><p><span class="term"><em class="parameter"><code>s</code></em> :</span></p></td>
 
2520
<td>is a structure holding new interface's data
 
2521
</td>
 
2522
</tr>
 
2523
<tr>
 
2524
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
2525
<td> <a class="link" href="gnutls-gnutls.html#GNUTLS-E-SUCCESS:CAPS" title="GNUTLS_E_SUCCESS"><code class="literal">GNUTLS_E_SUCCESS</code></a> on success, otherwise an error.
 
2526
 
 
2527
</td>
 
2528
</tr>
 
2529
</tbody>
 
2530
</table></div>
595
2531
<p class="since">Since 2.6.0</p>
596
2532
</div>
597
2533
<hr>
598
2534
<div class="refsect2" title="gnutls_crypto_mac_register2 ()">
599
2535
<a name="gnutls-crypto-mac-register2"></a><h3>gnutls_crypto_mac_register2 ()</h3>
600
 
<pre class="programlisting">int                 gnutls_crypto_mac_register2         (int priority,
601
 
                                                         int version,
602
 
                                                         gnutls_crypto_mac_st *s);</pre>
 
2536
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_crypto_mac_register2         (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> priority</code></em>,
 
2537
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> version</code></em>,
 
2538
                                                         <em class="parameter"><code>const <span class="type">gnutls_crypto_mac_st</span> *s</code></em>);</pre>
 
2539
<p>
 
2540
This function will register a mac interface to be used by
 
2541
gnutls. Any interface registered will override the included engine
 
2542
and by convention kernel implemented interfaces should have
 
2543
priority of 90. The interface with the lowest priority will be used
 
2544
by gnutls.
 
2545
</p>
 
2546
<p>
 
2547
This function should be called before <a class="link" href="gnutls-gnutls.html#gnutls-global-init" title="gnutls_global_init ()"><code class="function">gnutls_global_init()</code></a>.
 
2548
</p>
 
2549
<p>
 
2550
For simplicity you can use the convenience
 
2551
<a class="link" href="gnutls-crypto.html#gnutls-crypto-digest-register" title="gnutls_crypto_digest_register()"><code class="function">gnutls_crypto_digest_register()</code></a> macro.</p>
 
2552
<div class="variablelist"><table border="0">
 
2553
<col align="left" valign="top">
 
2554
<tbody>
 
2555
<tr>
 
2556
<td><p><span class="term"><em class="parameter"><code>priority</code></em> :</span></p></td>
 
2557
<td>is the priority of the mac interface
 
2558
</td>
 
2559
</tr>
 
2560
<tr>
 
2561
<td><p><span class="term"><em class="parameter"><code>version</code></em> :</span></p></td>
 
2562
<td>should be set to <a class="link" href="gnutls-crypto.html#GNUTLS-CRYPTO-API-VERSION:CAPS" title="GNUTLS_CRYPTO_API_VERSION"><code class="literal">GNUTLS_CRYPTO_API_VERSION</code></a>
 
2563
</td>
 
2564
</tr>
 
2565
<tr>
 
2566
<td><p><span class="term"><em class="parameter"><code>s</code></em> :</span></p></td>
 
2567
<td>is a structure holding new interface's data
 
2568
</td>
 
2569
</tr>
 
2570
<tr>
 
2571
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
2572
<td> <a class="link" href="gnutls-gnutls.html#GNUTLS-E-SUCCESS:CAPS" title="GNUTLS_E_SUCCESS"><code class="literal">GNUTLS_E_SUCCESS</code></a> on success, otherwise an error.
 
2573
 
 
2574
</td>
 
2575
</tr>
 
2576
</tbody>
 
2577
</table></div>
603
2578
<p class="since">Since 2.6.0</p>
604
2579
</div>
605
2580
<hr>
606
2581
<div class="refsect2" title="gnutls_crypto_digest_register2 ()">
607
2582
<a name="gnutls-crypto-digest-register2"></a><h3>gnutls_crypto_digest_register2 ()</h3>
608
 
<pre class="programlisting">int                 gnutls_crypto_digest_register2      (int priority,
609
 
                                                         int version,
610
 
                                                         <a class="link" href="gnutls-crypto.html#gnutls-crypto-digest-st" title="gnutls_crypto_digest_st">gnutls_crypto_digest_st</a> *s);</pre>
 
2583
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_crypto_digest_register2      (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> priority</code></em>,
 
2584
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> version</code></em>,
 
2585
                                                         <em class="parameter"><code>const <a class="link" href="gnutls-crypto.html#gnutls-crypto-digest-st" title="gnutls_crypto_digest_st"><span class="type">gnutls_crypto_digest_st</span></a> *s</code></em>);</pre>
 
2586
<p>
 
2587
This function will register a digest interface to be used by
 
2588
gnutls. Any interface registered will override the included engine
 
2589
and by convention kernel implemented interfaces should have
 
2590
priority of 90. The interface with the lowest priority will be used
 
2591
by gnutls.
 
2592
</p>
 
2593
<p>
 
2594
This function should be called before <a class="link" href="gnutls-gnutls.html#gnutls-global-init" title="gnutls_global_init ()"><code class="function">gnutls_global_init()</code></a>.
 
2595
</p>
 
2596
<p>
 
2597
For simplicity you can use the convenience
 
2598
<a class="link" href="gnutls-crypto.html#gnutls-crypto-digest-register" title="gnutls_crypto_digest_register()"><code class="function">gnutls_crypto_digest_register()</code></a> macro.</p>
 
2599
<div class="variablelist"><table border="0">
 
2600
<col align="left" valign="top">
 
2601
<tbody>
 
2602
<tr>
 
2603
<td><p><span class="term"><em class="parameter"><code>priority</code></em> :</span></p></td>
 
2604
<td>is the priority of the digest interface
 
2605
</td>
 
2606
</tr>
 
2607
<tr>
 
2608
<td><p><span class="term"><em class="parameter"><code>version</code></em> :</span></p></td>
 
2609
<td>should be set to <a class="link" href="gnutls-crypto.html#GNUTLS-CRYPTO-API-VERSION:CAPS" title="GNUTLS_CRYPTO_API_VERSION"><code class="literal">GNUTLS_CRYPTO_API_VERSION</code></a>
 
2610
</td>
 
2611
</tr>
 
2612
<tr>
 
2613
<td><p><span class="term"><em class="parameter"><code>s</code></em> :</span></p></td>
 
2614
<td>is a structure holding new interface's data
 
2615
</td>
 
2616
</tr>
 
2617
<tr>
 
2618
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
2619
<td> <a class="link" href="gnutls-gnutls.html#GNUTLS-E-SUCCESS:CAPS" title="GNUTLS_E_SUCCESS"><code class="literal">GNUTLS_E_SUCCESS</code></a> on success, otherwise an error.
 
2620
 
 
2621
</td>
 
2622
</tr>
 
2623
</tbody>
 
2624
</table></div>
611
2625
<p class="since">Since 2.6.0</p>
612
2626
</div>
613
2627
<hr>
614
2628
<div class="refsect2" title="gnutls_crypto_rnd_register()">
615
2629
<a name="gnutls-crypto-rnd-register"></a><h3>gnutls_crypto_rnd_register()</h3>
616
2630
<pre class="programlisting">#define             gnutls_crypto_rnd_register(prio, st)</pre>
 
2631
<p>
 
2632
</p>
 
2633
<div class="variablelist"><table border="0">
 
2634
<col align="left" valign="top">
 
2635
<tbody>
 
2636
<tr>
 
2637
<td><p><span class="term"><em class="parameter"><code>prio</code></em> :</span></p></td>
 
2638
<td>
 
2639
</td>
 
2640
</tr>
 
2641
<tr>
 
2642
<td><p><span class="term"><em class="parameter"><code>st</code></em> :</span></p></td>
 
2643
<td>
 
2644
</td>
 
2645
</tr>
 
2646
</tbody>
 
2647
</table></div>
617
2648
</div>
618
2649
<hr>
619
2650
<div class="refsect2" title="gnutls_crypto_pk_register()">
620
2651
<a name="gnutls-crypto-pk-register"></a><h3>gnutls_crypto_pk_register()</h3>
621
2652
<pre class="programlisting">#define             gnutls_crypto_pk_register(prio, st)</pre>
 
2653
<p>
 
2654
</p>
 
2655
<div class="variablelist"><table border="0">
 
2656
<col align="left" valign="top">
 
2657
<tbody>
 
2658
<tr>
 
2659
<td><p><span class="term"><em class="parameter"><code>prio</code></em> :</span></p></td>
 
2660
<td>
 
2661
</td>
 
2662
</tr>
 
2663
<tr>
 
2664
<td><p><span class="term"><em class="parameter"><code>st</code></em> :</span></p></td>
 
2665
<td>
 
2666
</td>
 
2667
</tr>
 
2668
</tbody>
 
2669
</table></div>
622
2670
</div>
623
2671
<hr>
624
2672
<div class="refsect2" title="gnutls_crypto_bigint_register()">
625
2673
<a name="gnutls-crypto-bigint-register"></a><h3>gnutls_crypto_bigint_register()</h3>
626
2674
<pre class="programlisting">#define             gnutls_crypto_bigint_register(prio, st)</pre>
 
2675
<p>
 
2676
</p>
 
2677
<div class="variablelist"><table border="0">
 
2678
<col align="left" valign="top">
 
2679
<tbody>
 
2680
<tr>
 
2681
<td><p><span class="term"><em class="parameter"><code>prio</code></em> :</span></p></td>
 
2682
<td>
 
2683
</td>
 
2684
</tr>
 
2685
<tr>
 
2686
<td><p><span class="term"><em class="parameter"><code>st</code></em> :</span></p></td>
 
2687
<td>
 
2688
</td>
 
2689
</tr>
 
2690
</tbody>
 
2691
</table></div>
627
2692
</div>
628
2693
<hr>
629
2694
<div class="refsect2" title="gnutls_crypto_rnd_register2 ()">
630
2695
<a name="gnutls-crypto-rnd-register2"></a><h3>gnutls_crypto_rnd_register2 ()</h3>
631
 
<pre class="programlisting">int                 gnutls_crypto_rnd_register2         (int priority,
632
 
                                                         int version,
633
 
                                                         gnutls_crypto_rnd_st *s);</pre>
 
2696
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_crypto_rnd_register2         (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> priority</code></em>,
 
2697
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> version</code></em>,
 
2698
                                                         <em class="parameter"><code>const <span class="type">gnutls_crypto_rnd_st</span> *s</code></em>);</pre>
 
2699
<p>
 
2700
This function will register a random generator to be used by
 
2701
gnutls.  Any generator registered will override the included
 
2702
generator and by convention kernel implemented generators have
 
2703
priority of 90.  The generator with the lowest priority will be
 
2704
used by gnutls.
 
2705
</p>
 
2706
<p>
 
2707
This function should be called before <a class="link" href="gnutls-gnutls.html#gnutls-global-init" title="gnutls_global_init ()"><code class="function">gnutls_global_init()</code></a>.
 
2708
</p>
 
2709
<p>
 
2710
For simplicity you can use the convenience
 
2711
<a class="link" href="gnutls-crypto.html#gnutls-crypto-rnd-register" title="gnutls_crypto_rnd_register()"><code class="function">gnutls_crypto_rnd_register()</code></a> macro.</p>
 
2712
<div class="variablelist"><table border="0">
 
2713
<col align="left" valign="top">
 
2714
<tbody>
 
2715
<tr>
 
2716
<td><p><span class="term"><em class="parameter"><code>priority</code></em> :</span></p></td>
 
2717
<td>is the priority of the generator
 
2718
</td>
 
2719
</tr>
 
2720
<tr>
 
2721
<td><p><span class="term"><em class="parameter"><code>version</code></em> :</span></p></td>
 
2722
<td>should be set to <a class="link" href="gnutls-crypto.html#GNUTLS-CRYPTO-API-VERSION:CAPS" title="GNUTLS_CRYPTO_API_VERSION"><code class="literal">GNUTLS_CRYPTO_API_VERSION</code></a>
 
2723
</td>
 
2724
</tr>
 
2725
<tr>
 
2726
<td><p><span class="term"><em class="parameter"><code>s</code></em> :</span></p></td>
 
2727
<td>is a structure holding new generator's data
 
2728
</td>
 
2729
</tr>
 
2730
<tr>
 
2731
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
2732
<td> <a class="link" href="gnutls-gnutls.html#GNUTLS-E-SUCCESS:CAPS" title="GNUTLS_E_SUCCESS"><code class="literal">GNUTLS_E_SUCCESS</code></a> on success, otherwise an error.
 
2733
 
 
2734
</td>
 
2735
</tr>
 
2736
</tbody>
 
2737
</table></div>
634
2738
<p class="since">Since 2.6.0</p>
635
2739
</div>
636
2740
<hr>
637
2741
<div class="refsect2" title="gnutls_crypto_pk_register2 ()">
638
2742
<a name="gnutls-crypto-pk-register2"></a><h3>gnutls_crypto_pk_register2 ()</h3>
639
 
<pre class="programlisting">int                 gnutls_crypto_pk_register2          (int priority,
640
 
                                                         int version,
641
 
                                                         gnutls_crypto_pk_st *s);</pre>
 
2743
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_crypto_pk_register2          (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> priority</code></em>,
 
2744
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> version</code></em>,
 
2745
                                                         <em class="parameter"><code>const <span class="type">gnutls_crypto_pk_st</span> *s</code></em>);</pre>
 
2746
<p>
 
2747
This function will register an interface for gnutls to operate
 
2748
on public key operations. Any interface registered will override
 
2749
the included interface. The interface with the lowest
 
2750
priority will be used by gnutls.
 
2751
</p>
 
2752
<p>
 
2753
Note that the bigint interface must interoperate with the bigint
 
2754
interface. Thus if this interface is updated the
 
2755
<a class="link" href="gnutls-crypto.html#gnutls-crypto-bigint-register" title="gnutls_crypto_bigint_register()"><code class="function">gnutls_crypto_bigint_register()</code></a> should also be used.
 
2756
</p>
 
2757
<p>
 
2758
This function should be called before <a class="link" href="gnutls-gnutls.html#gnutls-global-init" title="gnutls_global_init ()"><code class="function">gnutls_global_init()</code></a>.
 
2759
</p>
 
2760
<p>
 
2761
For simplicity you can use the convenience <a class="link" href="gnutls-crypto.html#gnutls-crypto-pk-register" title="gnutls_crypto_pk_register()"><code class="function">gnutls_crypto_pk_register()</code></a>
 
2762
macro.</p>
 
2763
<div class="variablelist"><table border="0">
 
2764
<col align="left" valign="top">
 
2765
<tbody>
 
2766
<tr>
 
2767
<td><p><span class="term"><em class="parameter"><code>priority</code></em> :</span></p></td>
 
2768
<td>is the priority of the interface
 
2769
</td>
 
2770
</tr>
 
2771
<tr>
 
2772
<td><p><span class="term"><em class="parameter"><code>version</code></em> :</span></p></td>
 
2773
<td>should be set to <a class="link" href="gnutls-crypto.html#GNUTLS-CRYPTO-API-VERSION:CAPS" title="GNUTLS_CRYPTO_API_VERSION"><code class="literal">GNUTLS_CRYPTO_API_VERSION</code></a>
 
2774
</td>
 
2775
</tr>
 
2776
<tr>
 
2777
<td><p><span class="term"><em class="parameter"><code>s</code></em> :</span></p></td>
 
2778
<td>is a structure holding new interface's data
 
2779
</td>
 
2780
</tr>
 
2781
<tr>
 
2782
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
2783
<td> <a class="link" href="gnutls-gnutls.html#GNUTLS-E-SUCCESS:CAPS" title="GNUTLS_E_SUCCESS"><code class="literal">GNUTLS_E_SUCCESS</code></a> on success, otherwise an error.
 
2784
 
 
2785
</td>
 
2786
</tr>
 
2787
</tbody>
 
2788
</table></div>
642
2789
<p class="since">Since 2.6.0</p>
643
2790
</div>
644
2791
<hr>
645
2792
<div class="refsect2" title="gnutls_crypto_bigint_register2 ()">
646
2793
<a name="gnutls-crypto-bigint-register2"></a><h3>gnutls_crypto_bigint_register2 ()</h3>
647
 
<pre class="programlisting">int                 gnutls_crypto_bigint_register2      (int priority,
648
 
                                                         int version,
649
 
                                                         gnutls_crypto_bigint_st *s);</pre>
 
2794
<pre class="programlisting"><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="returnvalue">int</span></a>                 gnutls_crypto_bigint_register2      (<em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> priority</code></em>,
 
2795
                                                         <em class="parameter"><code><a class="link" href="gnutls-crypto.html#int" title="int ()"><span class="type">int</span></a> version</code></em>,
 
2796
                                                         <em class="parameter"><code>const <span class="type">gnutls_crypto_bigint_st</span> *s</code></em>);</pre>
 
2797
<p>
 
2798
This function will register an interface for gnutls to operate
 
2799
on big integers. Any interface registered will override
 
2800
the included interface. The interface with the lowest
 
2801
priority will be used by gnutls.
 
2802
</p>
 
2803
<p>
 
2804
Note that the bigint interface must interoperate with the public
 
2805
key interface. Thus if this interface is updated the
 
2806
<a class="link" href="gnutls-crypto.html#gnutls-crypto-pk-register" title="gnutls_crypto_pk_register()"><code class="function">gnutls_crypto_pk_register()</code></a> should also be used.
 
2807
</p>
 
2808
<p>
 
2809
This function should be called before <a class="link" href="gnutls-gnutls.html#gnutls-global-init" title="gnutls_global_init ()"><code class="function">gnutls_global_init()</code></a>.
 
2810
</p>
 
2811
<p>
 
2812
For simplicity you can use the convenience <a class="link" href="gnutls-crypto.html#gnutls-crypto-bigint-register" title="gnutls_crypto_bigint_register()"><code class="function">gnutls_crypto_bigint_register()</code></a>
 
2813
macro.</p>
 
2814
<div class="variablelist"><table border="0">
 
2815
<col align="left" valign="top">
 
2816
<tbody>
 
2817
<tr>
 
2818
<td><p><span class="term"><em class="parameter"><code>priority</code></em> :</span></p></td>
 
2819
<td>is the priority of the interface
 
2820
</td>
 
2821
</tr>
 
2822
<tr>
 
2823
<td><p><span class="term"><em class="parameter"><code>version</code></em> :</span></p></td>
 
2824
<td>should be set to <a class="link" href="gnutls-crypto.html#GNUTLS-CRYPTO-API-VERSION:CAPS" title="GNUTLS_CRYPTO_API_VERSION"><code class="literal">GNUTLS_CRYPTO_API_VERSION</code></a>
 
2825
</td>
 
2826
</tr>
 
2827
<tr>
 
2828
<td><p><span class="term"><em class="parameter"><code>s</code></em> :</span></p></td>
 
2829
<td>is a structure holding new interface's data
 
2830
</td>
 
2831
</tr>
 
2832
<tr>
 
2833
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
2834
<td> <a class="link" href="gnutls-gnutls.html#GNUTLS-E-SUCCESS:CAPS" title="GNUTLS_E_SUCCESS"><code class="literal">GNUTLS_E_SUCCESS</code></a> on success, otherwise an error.
 
2835
 
 
2836
</td>
 
2837
</tr>
 
2838
</tbody>
 
2839
</table></div>
650
2840
<p class="since">Since 2.6.0</p>
651
2841
</div>
652
2842
</div>
653
2843
</div>
654
2844
<div class="footer">
655
2845
<hr>
656
 
          Generated by GTK-Doc V1.11</div>
 
2846
          Generated by GTK-Doc V1.14</div>
657
2847
</body>
658
 
</html>
 
2848
</html>
 
 
b'\\ No newline at end of file'