1ae771770SStanislav Sedov<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2ae771770SStanislav Sedov<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> 3ae771770SStanislav Sedov<title>Heimdal crypto library: RAND crypto functions</title> 4ae771770SStanislav Sedov<link href="doxygen.css" rel="stylesheet" type="text/css"> 5ae771770SStanislav Sedov<link href="tabs.css" rel="stylesheet" type="text/css"> 6ae771770SStanislav Sedov</head><body> 7ae771770SStanislav Sedov<p> 8ae771770SStanislav Sedov<a href="http://www.h5l.org/"><img src="http://www.h5l.org/keyhole-heimdal.png" alt="keyhole logo"/></a> 9ae771770SStanislav Sedov</p> 10ae771770SStanislav Sedov<!-- end of header marker --> 11ae771770SStanislav Sedov<!-- Generated by Doxygen 1.5.6 --> 12ae771770SStanislav Sedov<div class="navigation" id="top"> 13ae771770SStanislav Sedov <div class="tabs"> 14ae771770SStanislav Sedov <ul> 15ae771770SStanislav Sedov <li><a href="index.html"><span>Main Page</span></a></li> 16ae771770SStanislav Sedov <li><a href="modules.html"><span>Modules</span></a></li> 17ae771770SStanislav Sedov <li><a href="examples.html"><span>Examples</span></a></li> 18ae771770SStanislav Sedov </ul> 19ae771770SStanislav Sedov </div> 20ae771770SStanislav Sedov</div> 21ae771770SStanislav Sedov<div class="contents"> 22ae771770SStanislav Sedov<h1>RAND crypto functions</h1><table border="0" cellpadding="0" cellspacing="0"> 23ae771770SStanislav Sedov<tr><td></td></tr> 24ae771770SStanislav Sedov<tr><td colspan="2"><br><h2>Functions</h2></td></tr> 25ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rand.html#g700cd34f79c820f427f95c243befe085">RAND_seed</a> (const void *indata, size_t size)</td></tr> 26ae771770SStanislav Sedov 27ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rand.html#g957a044ad71e3c915ff7acc564be84a4">RAND_bytes</a> (void *outdata, size_t size)</td></tr> 28ae771770SStanislav Sedov 29ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rand.html#gd797e371751dedbcce4e975c3cad1947">RAND_cleanup</a> (void)</td></tr> 30ae771770SStanislav Sedov 31ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rand.html#g08927181178dc6329264982f2fb1b39b">RAND_add</a> (const void *indata, size_t size, double entropi)</td></tr> 32ae771770SStanislav Sedov 33ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rand.html#g93d10a9ba8647408a3b5306c2cd423f2">RAND_pseudo_bytes</a> (void *outdata, size_t size)</td></tr> 34ae771770SStanislav Sedov 35ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rand.html#g38d21605e6e777451769a8ee7087933b">RAND_status</a> (void)</td></tr> 36ae771770SStanislav Sedov 37ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rand.html#g292ae50ca725d0c529dc077467b40254">RAND_set_rand_method</a> (const RAND_METHOD *meth)</td></tr> 38ae771770SStanislav Sedov 39ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">const RAND_METHOD * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rand.html#g8a8cac7a3262c4527e08f57f07c4c586">RAND_get_rand_method</a> (void)</td></tr> 40ae771770SStanislav Sedov 41ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rand.html#g6a4f2c2cf723ef63522d4b33c79d5f0f">RAND_set_rand_engine</a> (ENGINE *engine)</td></tr> 42ae771770SStanislav Sedov 43ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rand.html#g9ca9fe0e799e41e8e745a88e3a60ccfd">RAND_load_file</a> (const char *filename, size_t size)</td></tr> 44ae771770SStanislav Sedov 45ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rand.html#gb9638d698e0a8ab94a31322693588eba">RAND_write_file</a> (const char *filename)</td></tr> 46ae771770SStanislav Sedov 47ae771770SStanislav Sedov<tr><td class="memItemLeft" nowrap align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__hcrypto__rand.html#g77b2d2555388b5d75a4bab3843fc8f02">RAND_file_name</a> (char *filename, size_t size)</td></tr> 48ae771770SStanislav Sedov 49ae771770SStanislav Sedov</table> 50ae771770SStanislav Sedov<hr><a name="_details"></a><h2>Detailed Description</h2> 51ae771770SStanislav SedovSee the <a class="el" href="page_rand.html">RAND - random number</a> for description and examples. <hr><h2>Function Documentation</h2> 52ae771770SStanislav Sedov<a class="anchor" name="g08927181178dc6329264982f2fb1b39b"></a><!-- doxytag: member="rand.c::RAND_add" ref="g08927181178dc6329264982f2fb1b39b" args="(const void *indata, size_t size, double entropi)" --> 53ae771770SStanislav Sedov<div class="memitem"> 54ae771770SStanislav Sedov<div class="memproto"> 55ae771770SStanislav Sedov <table class="memname"> 56ae771770SStanislav Sedov <tr> 57ae771770SStanislav Sedov <td class="memname">void RAND_add </td> 58ae771770SStanislav Sedov <td>(</td> 59ae771770SStanislav Sedov <td class="paramtype">const void * </td> 60ae771770SStanislav Sedov <td class="paramname"> <em>indata</em>, </td> 61ae771770SStanislav Sedov </tr> 62ae771770SStanislav Sedov <tr> 63ae771770SStanislav Sedov <td class="paramkey"></td> 64ae771770SStanislav Sedov <td></td> 65ae771770SStanislav Sedov <td class="paramtype">size_t </td> 66ae771770SStanislav Sedov <td class="paramname"> <em>size</em>, </td> 67ae771770SStanislav Sedov </tr> 68ae771770SStanislav Sedov <tr> 69ae771770SStanislav Sedov <td class="paramkey"></td> 70ae771770SStanislav Sedov <td></td> 71ae771770SStanislav Sedov <td class="paramtype">double </td> 72ae771770SStanislav Sedov <td class="paramname"> <em>entropi</em></td><td> </td> 73ae771770SStanislav Sedov </tr> 74ae771770SStanislav Sedov <tr> 75ae771770SStanislav Sedov <td></td> 76ae771770SStanislav Sedov <td>)</td> 77ae771770SStanislav Sedov <td></td><td></td><td></td> 78ae771770SStanislav Sedov </tr> 79ae771770SStanislav Sedov </table> 80ae771770SStanislav Sedov</div> 81ae771770SStanislav Sedov<div class="memdoc"> 82ae771770SStanislav Sedov 83ae771770SStanislav Sedov<p> 84ae771770SStanislav SedovSeed that random number generator. Secret material can securely be feed into the function, they will never be returned.<p> 85ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 86ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 87ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>indata</em> </td><td>the input data. </td></tr> 88ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>size</em> </td><td>size of in data. </td></tr> 89ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>entropi</em> </td><td>entropi in data. </td></tr> 90ae771770SStanislav Sedov </table> 91ae771770SStanislav Sedov</dl> 92ae771770SStanislav Sedov 93ae771770SStanislav Sedov</div> 94ae771770SStanislav Sedov</div><p> 95ae771770SStanislav Sedov<a class="anchor" name="g957a044ad71e3c915ff7acc564be84a4"></a><!-- doxytag: member="rand.c::RAND_bytes" ref="g957a044ad71e3c915ff7acc564be84a4" args="(void *outdata, size_t size)" --> 96ae771770SStanislav Sedov<div class="memitem"> 97ae771770SStanislav Sedov<div class="memproto"> 98ae771770SStanislav Sedov <table class="memname"> 99ae771770SStanislav Sedov <tr> 100ae771770SStanislav Sedov <td class="memname">int RAND_bytes </td> 101ae771770SStanislav Sedov <td>(</td> 102ae771770SStanislav Sedov <td class="paramtype">void * </td> 103ae771770SStanislav Sedov <td class="paramname"> <em>outdata</em>, </td> 104ae771770SStanislav Sedov </tr> 105ae771770SStanislav Sedov <tr> 106ae771770SStanislav Sedov <td class="paramkey"></td> 107ae771770SStanislav Sedov <td></td> 108ae771770SStanislav Sedov <td class="paramtype">size_t </td> 109ae771770SStanislav Sedov <td class="paramname"> <em>size</em></td><td> </td> 110ae771770SStanislav Sedov </tr> 111ae771770SStanislav Sedov <tr> 112ae771770SStanislav Sedov <td></td> 113ae771770SStanislav Sedov <td>)</td> 114ae771770SStanislav Sedov <td></td><td></td><td></td> 115ae771770SStanislav Sedov </tr> 116ae771770SStanislav Sedov </table> 117ae771770SStanislav Sedov</div> 118ae771770SStanislav Sedov<div class="memdoc"> 119ae771770SStanislav Sedov 120ae771770SStanislav Sedov<p> 121ae771770SStanislav SedovGet a random block from the random generator, can be used for key material.<p> 122ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 123ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 124ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>outdata</em> </td><td>random data </td></tr> 125ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>size</em> </td><td>length random data</td></tr> 126ae771770SStanislav Sedov </table> 127ae771770SStanislav Sedov</dl> 128ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>1 on success, 0 on failure. </dd></dl> 129ae771770SStanislav Sedov 130ae771770SStanislav Sedov</div> 131ae771770SStanislav Sedov</div><p> 132ae771770SStanislav Sedov<a class="anchor" name="gd797e371751dedbcce4e975c3cad1947"></a><!-- doxytag: member="rand.c::RAND_cleanup" ref="gd797e371751dedbcce4e975c3cad1947" args="(void)" --> 133ae771770SStanislav Sedov<div class="memitem"> 134ae771770SStanislav Sedov<div class="memproto"> 135ae771770SStanislav Sedov <table class="memname"> 136ae771770SStanislav Sedov <tr> 137ae771770SStanislav Sedov <td class="memname">void RAND_cleanup </td> 138ae771770SStanislav Sedov <td>(</td> 139ae771770SStanislav Sedov <td class="paramtype">void </td> 140ae771770SStanislav Sedov <td class="paramname"> </td> 141ae771770SStanislav Sedov <td> ) </td> 142ae771770SStanislav Sedov <td></td> 143ae771770SStanislav Sedov </tr> 144ae771770SStanislav Sedov </table> 145ae771770SStanislav Sedov</div> 146ae771770SStanislav Sedov<div class="memdoc"> 147ae771770SStanislav Sedov 148ae771770SStanislav Sedov<p> 149ae771770SStanislav SedovReset and free memory used by the random generator. 150ae771770SStanislav Sedov</div> 151ae771770SStanislav Sedov</div><p> 152ae771770SStanislav Sedov<a class="anchor" name="g77b2d2555388b5d75a4bab3843fc8f02"></a><!-- doxytag: member="rand.c::RAND_file_name" ref="g77b2d2555388b5d75a4bab3843fc8f02" args="(char *filename, size_t size)" --> 153ae771770SStanislav Sedov<div class="memitem"> 154ae771770SStanislav Sedov<div class="memproto"> 155ae771770SStanislav Sedov <table class="memname"> 156ae771770SStanislav Sedov <tr> 157ae771770SStanislav Sedov <td class="memname">const char* RAND_file_name </td> 158ae771770SStanislav Sedov <td>(</td> 159ae771770SStanislav Sedov <td class="paramtype">char * </td> 160ae771770SStanislav Sedov <td class="paramname"> <em>filename</em>, </td> 161ae771770SStanislav Sedov </tr> 162ae771770SStanislav Sedov <tr> 163ae771770SStanislav Sedov <td class="paramkey"></td> 164ae771770SStanislav Sedov <td></td> 165ae771770SStanislav Sedov <td class="paramtype">size_t </td> 166ae771770SStanislav Sedov <td class="paramname"> <em>size</em></td><td> </td> 167ae771770SStanislav Sedov </tr> 168ae771770SStanislav Sedov <tr> 169ae771770SStanislav Sedov <td></td> 170ae771770SStanislav Sedov <td>)</td> 171ae771770SStanislav Sedov <td></td><td></td><td></td> 172ae771770SStanislav Sedov </tr> 173ae771770SStanislav Sedov </table> 174ae771770SStanislav Sedov</div> 175ae771770SStanislav Sedov<div class="memdoc"> 176ae771770SStanislav Sedov 177ae771770SStanislav Sedov<p> 178ae771770SStanislav SedovReturn the default random state filename for a user to use for <a class="el" href="group__hcrypto__rand.html#g9ca9fe0e799e41e8e745a88e3a60ccfd">RAND_load_file()</a>, and <a class="el" href="group__hcrypto__rand.html#gb9638d698e0a8ab94a31322693588eba">RAND_write_file()</a>.<p> 179ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 180ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 181ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>filename</em> </td><td>buffer to hold file name. </td></tr> 182ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>size</em> </td><td>size of buffer filename.</td></tr> 183ae771770SStanislav Sedov </table> 184ae771770SStanislav Sedov</dl> 185ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>the buffer filename or NULL on failure. </dd></dl> 186ae771770SStanislav Sedov 187ae771770SStanislav Sedov</div> 188ae771770SStanislav Sedov</div><p> 189ae771770SStanislav Sedov<a class="anchor" name="g8a8cac7a3262c4527e08f57f07c4c586"></a><!-- doxytag: member="rand.c::RAND_get_rand_method" ref="g8a8cac7a3262c4527e08f57f07c4c586" args="(void)" --> 190ae771770SStanislav Sedov<div class="memitem"> 191ae771770SStanislav Sedov<div class="memproto"> 192ae771770SStanislav Sedov <table class="memname"> 193ae771770SStanislav Sedov <tr> 194ae771770SStanislav Sedov <td class="memname">const RAND_METHOD* RAND_get_rand_method </td> 195ae771770SStanislav Sedov <td>(</td> 196ae771770SStanislav Sedov <td class="paramtype">void </td> 197ae771770SStanislav Sedov <td class="paramname"> </td> 198ae771770SStanislav Sedov <td> ) </td> 199ae771770SStanislav Sedov <td></td> 200ae771770SStanislav Sedov </tr> 201ae771770SStanislav Sedov </table> 202ae771770SStanislav Sedov</div> 203ae771770SStanislav Sedov<div class="memdoc"> 204ae771770SStanislav Sedov 205ae771770SStanislav Sedov<p> 206ae771770SStanislav SedovGet the default random method. 207ae771770SStanislav Sedov</div> 208ae771770SStanislav Sedov</div><p> 209ae771770SStanislav Sedov<a class="anchor" name="g9ca9fe0e799e41e8e745a88e3a60ccfd"></a><!-- doxytag: member="rand.c::RAND_load_file" ref="g9ca9fe0e799e41e8e745a88e3a60ccfd" args="(const char *filename, size_t size)" --> 210ae771770SStanislav Sedov<div class="memitem"> 211ae771770SStanislav Sedov<div class="memproto"> 212ae771770SStanislav Sedov <table class="memname"> 213ae771770SStanislav Sedov <tr> 214ae771770SStanislav Sedov <td class="memname">int RAND_load_file </td> 215ae771770SStanislav Sedov <td>(</td> 216ae771770SStanislav Sedov <td class="paramtype">const char * </td> 217ae771770SStanislav Sedov <td class="paramname"> <em>filename</em>, </td> 218ae771770SStanislav Sedov </tr> 219ae771770SStanislav Sedov <tr> 220ae771770SStanislav Sedov <td class="paramkey"></td> 221ae771770SStanislav Sedov <td></td> 222ae771770SStanislav Sedov <td class="paramtype">size_t </td> 223ae771770SStanislav Sedov <td class="paramname"> <em>size</em></td><td> </td> 224ae771770SStanislav Sedov </tr> 225ae771770SStanislav Sedov <tr> 226ae771770SStanislav Sedov <td></td> 227ae771770SStanislav Sedov <td>)</td> 228ae771770SStanislav Sedov <td></td><td></td><td></td> 229ae771770SStanislav Sedov </tr> 230ae771770SStanislav Sedov </table> 231ae771770SStanislav Sedov</div> 232ae771770SStanislav Sedov<div class="memdoc"> 233ae771770SStanislav Sedov 234ae771770SStanislav Sedov<p> 235ae771770SStanislav SedovLoad a a file and feed it into <a class="el" href="group__hcrypto__rand.html#g700cd34f79c820f427f95c243befe085">RAND_seed()</a>.<p> 236ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 237ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 238ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>filename</em> </td><td>name of file to read. </td></tr> 239ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>size</em> </td><td>minimum size to read. </td></tr> 240ae771770SStanislav Sedov </table> 241ae771770SStanislav Sedov</dl> 242ae771770SStanislav Sedov 243ae771770SStanislav Sedov</div> 244ae771770SStanislav Sedov</div><p> 245ae771770SStanislav Sedov<a class="anchor" name="g93d10a9ba8647408a3b5306c2cd423f2"></a><!-- doxytag: member="rand.c::RAND_pseudo_bytes" ref="g93d10a9ba8647408a3b5306c2cd423f2" args="(void *outdata, size_t size)" --> 246ae771770SStanislav Sedov<div class="memitem"> 247ae771770SStanislav Sedov<div class="memproto"> 248ae771770SStanislav Sedov <table class="memname"> 249ae771770SStanislav Sedov <tr> 250ae771770SStanislav Sedov <td class="memname">int RAND_pseudo_bytes </td> 251ae771770SStanislav Sedov <td>(</td> 252ae771770SStanislav Sedov <td class="paramtype">void * </td> 253ae771770SStanislav Sedov <td class="paramname"> <em>outdata</em>, </td> 254ae771770SStanislav Sedov </tr> 255ae771770SStanislav Sedov <tr> 256ae771770SStanislav Sedov <td class="paramkey"></td> 257ae771770SStanislav Sedov <td></td> 258ae771770SStanislav Sedov <td class="paramtype">size_t </td> 259ae771770SStanislav Sedov <td class="paramname"> <em>size</em></td><td> </td> 260ae771770SStanislav Sedov </tr> 261ae771770SStanislav Sedov <tr> 262ae771770SStanislav Sedov <td></td> 263ae771770SStanislav Sedov <td>)</td> 264ae771770SStanislav Sedov <td></td><td></td><td></td> 265ae771770SStanislav Sedov </tr> 266ae771770SStanislav Sedov </table> 267ae771770SStanislav Sedov</div> 268ae771770SStanislav Sedov<div class="memdoc"> 269ae771770SStanislav Sedov 270ae771770SStanislav Sedov<p> 271ae771770SStanislav SedovGet a random block from the random generator, should NOT be used for key material.<p> 272ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 273ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 274ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>outdata</em> </td><td>random data </td></tr> 275ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>size</em> </td><td>length random data</td></tr> 276ae771770SStanislav Sedov </table> 277ae771770SStanislav Sedov</dl> 278ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>1 on success, 0 on failure. </dd></dl> 279ae771770SStanislav Sedov 280ae771770SStanislav Sedov</div> 281ae771770SStanislav Sedov</div><p> 282ae771770SStanislav Sedov<a class="anchor" name="g700cd34f79c820f427f95c243befe085"></a><!-- doxytag: member="rand.c::RAND_seed" ref="g700cd34f79c820f427f95c243befe085" args="(const void *indata, size_t size)" --> 283ae771770SStanislav Sedov<div class="memitem"> 284ae771770SStanislav Sedov<div class="memproto"> 285ae771770SStanislav Sedov <table class="memname"> 286ae771770SStanislav Sedov <tr> 287ae771770SStanislav Sedov <td class="memname">void RAND_seed </td> 288ae771770SStanislav Sedov <td>(</td> 289ae771770SStanislav Sedov <td class="paramtype">const void * </td> 290ae771770SStanislav Sedov <td class="paramname"> <em>indata</em>, </td> 291ae771770SStanislav Sedov </tr> 292ae771770SStanislav Sedov <tr> 293ae771770SStanislav Sedov <td class="paramkey"></td> 294ae771770SStanislav Sedov <td></td> 295ae771770SStanislav Sedov <td class="paramtype">size_t </td> 296ae771770SStanislav Sedov <td class="paramname"> <em>size</em></td><td> </td> 297ae771770SStanislav Sedov </tr> 298ae771770SStanislav Sedov <tr> 299ae771770SStanislav Sedov <td></td> 300ae771770SStanislav Sedov <td>)</td> 301ae771770SStanislav Sedov <td></td><td></td><td></td> 302ae771770SStanislav Sedov </tr> 303ae771770SStanislav Sedov </table> 304ae771770SStanislav Sedov</div> 305ae771770SStanislav Sedov<div class="memdoc"> 306ae771770SStanislav Sedov 307ae771770SStanislav Sedov<p> 308ae771770SStanislav SedovSeed that random number generator. Secret material can securely be feed into the function, they will never be returned.<p> 309ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 310ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 311ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>indata</em> </td><td>seed data </td></tr> 312ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>size</em> </td><td>length seed data </td></tr> 313ae771770SStanislav Sedov </table> 314ae771770SStanislav Sedov</dl> 315ae771770SStanislav Sedov 316ae771770SStanislav Sedov</div> 317ae771770SStanislav Sedov</div><p> 318ae771770SStanislav Sedov<a class="anchor" name="g6a4f2c2cf723ef63522d4b33c79d5f0f"></a><!-- doxytag: member="rand.c::RAND_set_rand_engine" ref="g6a4f2c2cf723ef63522d4b33c79d5f0f" args="(ENGINE *engine)" --> 319ae771770SStanislav Sedov<div class="memitem"> 320ae771770SStanislav Sedov<div class="memproto"> 321ae771770SStanislav Sedov <table class="memname"> 322ae771770SStanislav Sedov <tr> 323ae771770SStanislav Sedov <td class="memname">int RAND_set_rand_engine </td> 324ae771770SStanislav Sedov <td>(</td> 325ae771770SStanislav Sedov <td class="paramtype">ENGINE * </td> 326ae771770SStanislav Sedov <td class="paramname"> <em>engine</em> </td> 327ae771770SStanislav Sedov <td> ) </td> 328ae771770SStanislav Sedov <td></td> 329ae771770SStanislav Sedov </tr> 330ae771770SStanislav Sedov </table> 331ae771770SStanislav Sedov</div> 332ae771770SStanislav Sedov<div class="memdoc"> 333ae771770SStanislav Sedov 334ae771770SStanislav Sedov<p> 335ae771770SStanislav SedovSet the default random method from engine.<p> 336ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 337ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 338ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>engine</em> </td><td>use engine, if NULL is passed it, old method and engine is cleared.</td></tr> 339ae771770SStanislav Sedov </table> 340ae771770SStanislav Sedov</dl> 341ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>1 on success, 0 on failure. </dd></dl> 342ae771770SStanislav Sedov 343ae771770SStanislav Sedov</div> 344ae771770SStanislav Sedov</div><p> 345ae771770SStanislav Sedov<a class="anchor" name="g292ae50ca725d0c529dc077467b40254"></a><!-- doxytag: member="rand.c::RAND_set_rand_method" ref="g292ae50ca725d0c529dc077467b40254" args="(const RAND_METHOD *meth)" --> 346ae771770SStanislav Sedov<div class="memitem"> 347ae771770SStanislav Sedov<div class="memproto"> 348ae771770SStanislav Sedov <table class="memname"> 349ae771770SStanislav Sedov <tr> 350ae771770SStanislav Sedov <td class="memname">int RAND_set_rand_method </td> 351ae771770SStanislav Sedov <td>(</td> 352ae771770SStanislav Sedov <td class="paramtype">const RAND_METHOD * </td> 353ae771770SStanislav Sedov <td class="paramname"> <em>meth</em> </td> 354ae771770SStanislav Sedov <td> ) </td> 355ae771770SStanislav Sedov <td></td> 356ae771770SStanislav Sedov </tr> 357ae771770SStanislav Sedov </table> 358ae771770SStanislav Sedov</div> 359ae771770SStanislav Sedov<div class="memdoc"> 360ae771770SStanislav Sedov 361ae771770SStanislav Sedov<p> 362ae771770SStanislav SedovSet the default random method.<p> 363ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 364ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 365ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>meth</em> </td><td>set the new default method.</td></tr> 366ae771770SStanislav Sedov </table> 367ae771770SStanislav Sedov</dl> 368ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>1 on success. </dd></dl> 369ae771770SStanislav Sedov 370ae771770SStanislav Sedov</div> 371ae771770SStanislav Sedov</div><p> 372ae771770SStanislav Sedov<a class="anchor" name="g38d21605e6e777451769a8ee7087933b"></a><!-- doxytag: member="rand.c::RAND_status" ref="g38d21605e6e777451769a8ee7087933b" args="(void)" --> 373ae771770SStanislav Sedov<div class="memitem"> 374ae771770SStanislav Sedov<div class="memproto"> 375ae771770SStanislav Sedov <table class="memname"> 376ae771770SStanislav Sedov <tr> 377ae771770SStanislav Sedov <td class="memname">int RAND_status </td> 378ae771770SStanislav Sedov <td>(</td> 379ae771770SStanislav Sedov <td class="paramtype">void </td> 380ae771770SStanislav Sedov <td class="paramname"> </td> 381ae771770SStanislav Sedov <td> ) </td> 382ae771770SStanislav Sedov <td></td> 383ae771770SStanislav Sedov </tr> 384ae771770SStanislav Sedov </table> 385ae771770SStanislav Sedov</div> 386ae771770SStanislav Sedov<div class="memdoc"> 387ae771770SStanislav Sedov 388ae771770SStanislav Sedov<p> 389ae771770SStanislav SedovReturn status of the random generator<p> 390ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>1 if the random generator can deliver random data. </dd></dl> 391ae771770SStanislav Sedov 392ae771770SStanislav Sedov</div> 393ae771770SStanislav Sedov</div><p> 394ae771770SStanislav Sedov<a class="anchor" name="gb9638d698e0a8ab94a31322693588eba"></a><!-- doxytag: member="rand.c::RAND_write_file" ref="gb9638d698e0a8ab94a31322693588eba" args="(const char *filename)" --> 395ae771770SStanislav Sedov<div class="memitem"> 396ae771770SStanislav Sedov<div class="memproto"> 397ae771770SStanislav Sedov <table class="memname"> 398ae771770SStanislav Sedov <tr> 399ae771770SStanislav Sedov <td class="memname">int RAND_write_file </td> 400ae771770SStanislav Sedov <td>(</td> 401ae771770SStanislav Sedov <td class="paramtype">const char * </td> 402ae771770SStanislav Sedov <td class="paramname"> <em>filename</em> </td> 403ae771770SStanislav Sedov <td> ) </td> 404ae771770SStanislav Sedov <td></td> 405ae771770SStanislav Sedov </tr> 406ae771770SStanislav Sedov </table> 407ae771770SStanislav Sedov</div> 408ae771770SStanislav Sedov<div class="memdoc"> 409ae771770SStanislav Sedov 410ae771770SStanislav Sedov<p> 411ae771770SStanislav SedovWrite of random numbers to a file to store for later initiation with <a class="el" href="group__hcrypto__rand.html#g9ca9fe0e799e41e8e745a88e3a60ccfd">RAND_load_file()</a>.<p> 412ae771770SStanislav Sedov<dl compact><dt><b>Parameters:</b></dt><dd> 413ae771770SStanislav Sedov <table border="0" cellspacing="2" cellpadding="0"> 414ae771770SStanislav Sedov <tr><td valign="top"></td><td valign="top"><em>filename</em> </td><td>name of file to write.</td></tr> 415ae771770SStanislav Sedov </table> 416ae771770SStanislav Sedov</dl> 417ae771770SStanislav Sedov<dl class="return" compact><dt><b>Returns:</b></dt><dd>1 on success and non-one on failure. </dd></dl> 418ae771770SStanislav Sedov 419ae771770SStanislav Sedov</div> 420ae771770SStanislav Sedov</div><p> 421ae771770SStanislav Sedov</div> 422ae771770SStanislav Sedov<hr size="1"><address style="text-align: right;"><small> 423*cf771f22SStanislav SedovGenerated on Wed Jan 11 14:07:38 2012 for Heimdal crypto library by <a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address> 424ae771770SStanislav Sedov</body> 425ae771770SStanislav Sedov</html> 426