<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/libkern/arc4random.c, branch releng/7.3</title>
<subtitle>FreeBSD source tree</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/'/>
<entry>
<title>Lock down arc4random so it can be safely called w/o Giant.</title>
<updated>2003-08-15T06:34:47+00:00</updated>
<author>
<name>Mike Silbersack</name>
<email>silby@FreeBSD.org</email>
</author>
<published>2003-08-15T06:34:47+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=2f823fa326f4b593bb8b9e74606e70a864c25426'/>
<id>2f823fa326f4b593bb8b9e74606e70a864c25426</id>
<content type='text'>
Minor code reorganization was required, but the only functional
change was that the first 1024 bytes of output are thrown out
after each reseed, rather than just the initial seed.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Minor code reorganization was required, but the only functional
change was that the first 1024 bytes of output are thrown out
after each reseed, rather than just the initial seed.
</pre>
</div>
</content>
</entry>
<entry>
<title>Use __FBSDID().</title>
<updated>2003-06-11T05:37:42+00:00</updated>
<author>
<name>David E. O'Brien</name>
<email>obrien@FreeBSD.org</email>
</author>
<published>2003-06-11T05:37:42+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=ab0de15baf7234734b1b64c3145cd36f867c98ea'/>
<id>ab0de15baf7234734b1b64c3145cd36f867c98ea</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Slight overhaul of arc4random() and friends.</title>
<updated>2002-10-11T13:13:08+00:00</updated>
<author>
<name>Poul-Henning Kamp</name>
<email>phk@FreeBSD.org</email>
</author>
<published>2002-10-11T13:13:08+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=2c38619b524c7d3ada336fc2aa3afcbb7dbff0f5'/>
<id>2c38619b524c7d3ada336fc2aa3afcbb7dbff0f5</id>
<content type='text'>
One bug fixed:  Use getmicrouptime() to trigger reseeds so that we
cannot be tricked by a clock being stepped backwards.

Express parameters in natural units and with natural names.

Don't use struct timeval more than we need to.

Various stylistic and readability polishing.

Introduce arc4rand(void *ptr, u_int len, int reseed) function which
returns a stream of pseudo-random bytes, observing the automatic
reseed criteria as well as allowing forced reseeds.

Rewrite arc4random() in terms of arc4rand().

Sponsored by:   DARPA &amp; NAI Labs.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
One bug fixed:  Use getmicrouptime() to trigger reseeds so that we
cannot be tricked by a clock being stepped backwards.

Express parameters in natural units and with natural names.

Don't use struct timeval more than we need to.

Various stylistic and readability polishing.

Introduce arc4rand(void *ptr, u_int len, int reseed) function which
returns a stream of pseudo-random bytes, observing the automatic
reseed criteria as well as allowing forced reseeds.

Rewrite arc4random() in terms of arc4rand().

Sponsored by:   DARPA &amp; NAI Labs.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed some typos, verboseness and misformatting in comments.</title>
<updated>2001-08-30T12:30:58+00:00</updated>
<author>
<name>Bruce Evans</name>
<email>bde@FreeBSD.org</email>
</author>
<published>2001-08-30T12:30:58+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=60f8e3af927efe398a78f8fe960ab14a132a066b'/>
<id>60f8e3af927efe398a78f8fe960ab14a132a066b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Minor improvements to arc4random():</title>
<updated>2001-08-30T01:15:25+00:00</updated>
<author>
<name>Mike Silbersack</name>
<email>silby@FreeBSD.org</email>
</author>
<published>2001-08-30T01:15:25+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=3a7810bc39bcf802c5cd2c95364a2b0bb8744356'/>
<id>3a7810bc39bcf802c5cd2c95364a2b0bb8744356</id>
<content type='text'>
- Decrease reseeding interval from every 64 to every 16384 runs
  to reduce entropy usage.
- Add time based reseeding.  (Every 5 minutes.)
- Throw away the first 256 words of output as suggested in
  "Weaknesses in the Key Scheduling Algorithm of RC4."

Reviewed by: Mark Murray
MFC After: jkh says ok
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Decrease reseeding interval from every 64 to every 16384 runs
  to reduce entropy usage.
- Add time based reseeding.  (Every 5 minutes.)
- Throw away the first 256 words of output as suggested in
  "Weaknesses in the Key Scheduling Algorithm of RC4."

Reviewed by: Mark Murray
MFC After: jkh says ok
</pre>
</div>
</content>
</entry>
<entry>
<title>Recouple arc4random(9) to the entropy device. This works whether the</title>
<updated>2000-12-02T16:23:54+00:00</updated>
<author>
<name>Mark Murray</name>
<email>markm@FreeBSD.org</email>
</author>
<published>2000-12-02T16:23:54+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=4cb1e53914f0333c68cecbac7c3e4ca054cd84be'/>
<id>4cb1e53914f0333c68cecbac7c3e4ca054cd84be</id>
<content type='text'>
entropy device is loaded or not.

If the entropy device is NOT loaded, the the quality of perturbations
supplied by this will suffer.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
entropy device is loaded or not.

If the entropy device is NOT loaded, the the quality of perturbations
supplied by this will suffer.
</pre>
</div>
</content>
</entry>
<entry>
<title>Back out previous revision now that sys/random.h is properly fixed.</title>
<updated>2000-09-11T19:34:04+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2000-09-11T19:34:04+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=e2059d0bfbc164748cd0cdb85f047c31df162eb5'/>
<id>e2059d0bfbc164748cd0cdb85f047c31df162eb5</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add #include's of sys/proc.h and sys/param.h to silence a warning.</title>
<updated>2000-09-11T05:51:58+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2000-09-11T05:51:58+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=ebbb6afce34728d917b233ee192643b5f4283655'/>
<id>ebbb6afce34728d917b233ee192643b5f4283655</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Comment out unavailable call. This needs to be revisited when the entropy</title>
<updated>2000-06-25T10:15:58+00:00</updated>
<author>
<name>Mark Murray</name>
<email>markm@FreeBSD.org</email>
</author>
<published>2000-06-25T10:15:58+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=bf3191e9fa00fe44c58cfd0484fa1cbee135f3f0'/>
<id>bf3191e9fa00fe44c58cfd0484fa1cbee135f3f0</id>
<content type='text'>
device is complete.
Reviewed by:	dfr
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
device is complete.
Reviewed by:	dfr
</pre>
</div>
</content>
</entry>
<entry>
<title>In the extremely miniscule chance that read_random returns &lt;= 0, don't try</title>
<updated>1999-11-29T19:23:35+00:00</updated>
<author>
<name>Dan Moschuk</name>
<email>dan@FreeBSD.org</email>
</author>
<published>1999-11-29T19:23:35+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=e6082d1936f6269db744aa6ae6e2761a77580ab7'/>
<id>e6082d1936f6269db744aa6ae6e2761a77580ab7</id>
<content type='text'>
and use that return code as a modulus (panics are bad, mmmkay?)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
and use that return code as a modulus (panics are bad, mmmkay?)
</pre>
</div>
</content>
</entry>
</feed>
