1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>crypto_rng_reset</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="Linux Kernel Crypto API"><link rel="up" href="ch05s14.html" title="Crypto API Random Number API"><link rel="prev" href="API-crypto-rng-get-bytes.html" title="crypto_rng_get_bytes"><link rel="next" href="API-crypto-rng-seedsize.html" title="crypto_rng_seedsize"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center"><span class="phrase">crypto_rng_reset</span></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="API-crypto-rng-get-bytes.html">Prev</a>&#160;</td><th width="60%" align="center">Crypto API Random Number API</th><td width="20%" align="right">&#160;<a accesskey="n" href="API-crypto-rng-seedsize.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="API-crypto-rng-reset"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>crypto_rng_reset &#8212; 
2  re-initialize the RNG
3 </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int <b class="fsfunc">crypto_rng_reset </b>(</code></td><td>struct crypto_rng * <var class="pdparam">tfm</var>, </td></tr><tr><td>&#160;</td><td>u8 * <var class="pdparam">seed</var>, </td></tr><tr><td>&#160;</td><td>unsigned int <var class="pdparam">slen</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">&#160;</div></div></div><div class="refsect1"><a name="idp1098406300"></a><h2>Arguments</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term"><em class="parameter"><code>tfm</code></em></span></dt><dd><p>
4     cipher handle
5    </p></dd><dt><span class="term"><em class="parameter"><code>seed</code></em></span></dt><dd><p>
6     seed input data
7    </p></dd><dt><span class="term"><em class="parameter"><code>slen</code></em></span></dt><dd><p>
8     length of the seed input data
9    </p></dd></dl></div></div><div class="refsect1"><a name="idp1098409940"></a><h2>Description</h2><p>
10   The reset function completely re-initializes the random number generator
11   referenced by the cipher handle by clearing the current state. The new state
12   is initialized with the caller provided seed or automatically, depending
13   on the random number generator type (the ANSI X9.31 RNG requires
14   caller-provided seed, the SP800-90A DRBGs perform an automatic seeding).
15   The seed is provided as a parameter to this function call. The provided seed
16   should have the length of the seed size defined for the random number
17   generator as defined by crypto_rng_seedsize.
18</p></div><div class="refsect1"><a name="idp1098411116"></a><h2>Return</h2><p>
19   0 if the setting of the key was successful; &lt; 0 if an error occurred
20</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="API-crypto-rng-get-bytes.html">Prev</a>&#160;</td><td width="20%" align="center"><a accesskey="u" href="ch05s14.html">Up</a></td><td width="40%" align="right">&#160;<a accesskey="n" href="API-crypto-rng-seedsize.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><span class="phrase">crypto_rng_get_bytes</span>&#160;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">&#160;<span class="phrase">crypto_rng_seedsize</span></td></tr></table></div></body></html>
21