The NetBSD Project

CVS log for src/sys/lib/libkern/arc4random.c

[BACK] Up to [cvs.NetBSD.org] / src / sys / lib / libkern

Request diff between arbitrary revisions


Default branch: MAIN
Current tag: MAIN


Revision 1.32 / (download) - annotate - [select for diffs], Tue Apr 10 14:02:28 2012 UTC (13 months, 1 week ago) by tls
Branch: MAIN
CVS Tags: yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, tls-maxphys-nbase, tls-maxphys-base, tls-maxphys, khorben-n900, jmcneill-usbmp-base9, jmcneill-usbmp-base10, agc-symver-base, agc-symver, HEAD
Changes since 1.31: +6 -1 lines
Diff to previous 1.31 (colored)


Add a spin mutex to the rndsink structure; it is used to avoid lock
ordering and sleep-holding-locks problems when rekeying, and thus
to avoid a nasty race between cprng destruction and reseeding.

Revision 1.31 / (download) - annotate - [select for diffs], Tue Feb 14 18:57:35 2012 UTC (15 months ago) by njoly
Branch: MAIN
CVS Tags: netbsd-6-base, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base2
Branch point for: netbsd-6
Changes since 1.30: +3 -2 lines
Diff to previous 1.30 (colored)

void function _arc4randbytes cannot return a value.

Revision 1.30 / (download) - annotate - [select for diffs], Thu Feb 2 19:43:07 2012 UTC (15 months, 2 weeks ago) by tls
Branch: MAIN
Changes since 1.29: +2 -2 lines
Diff to previous 1.29 (colored)

Entropy-pool implementation move and cleanup.

1) Move core entropy-pool code and source/sink/sample management code
   to sys/kern from sys/dev.

2) Remove use of NRND as test for presence of entropy-pool code throughout
   source tree.

3) Remove use of RND_ENABLED in device drivers as microoptimization to
   avoid expensive operations on disabled entropy sources; make the
   rnd_add calls do this directly so all callers benefit.

4) Fix bug in recent rnd_add_data()/rnd_add_uint32() changes that might
   have lead to slight entropy overestimation for some sources.

5) Add new source types for environmental sensors, power sensors, VM
   system events, and skew between clocks, with a sample implementation
   for each.

ok releng to go in before the branch due to the difficulty of later
pullup (widespread #ifdef removal and moved files).  Tested with release
builds on amd64 and evbarm and live testing on amd64.

Revision 1.29 / (download) - annotate - [select for diffs], Tue Nov 29 13:16:27 2011 UTC (17 months, 2 weeks ago) by drochner
Branch: MAIN
CVS Tags: jmcneill-usbmp-pre-base2, jmcneill-usbmp-base
Branch point for: jmcneill-usbmp
Changes since 1.28: +2 -2 lines
Diff to previous 1.28 (colored)

make "rs" static -- this name is too unspecific for the global namespace

Revision 1.28 / (download) - annotate - [select for diffs], Tue Nov 29 03:50:32 2011 UTC (17 months, 2 weeks ago) by tls
Branch: MAIN
Changes since 1.27: +2 -1 lines
Diff to previous 1.27 (colored)

Remove rnd_extract_data from the public kernel API (it is for use by the
stream generators only).  Clean up some related minor issues.

Revision 1.27 / (download) - annotate - [select for diffs], Mon Nov 28 08:05:05 2011 UTC (17 months, 2 weeks ago) by tls
Branch: MAIN
Changes since 1.26: +16 -15 lines
Diff to previous 1.26 (colored)

Remove arc4random() and arc4randbytes() from the kernel API.  Replace
arc4random() hacks in rump with stubs that call the host arc4random() to
get numbers that are hopefully actually random (arc4random() keyed with
stack junk is not).  This should fix some of the currently failing anita
tests -- we should no longer generate duplicate "random" MAC addresses in
the test environment.

Revision 1.26 / (download) - annotate - [select for diffs], Sun Nov 27 00:09:04 2011 UTC (17 months, 3 weeks ago) by tsutsui
Branch: MAIN
Changes since 1.25: +5 -1 lines
Diff to previous 1.25 (colored)

Disable a DIAGNOSTIC test which causes kernel stack overflow on all arm ports.

Boot failure is reported from several arm users (nonaka@, ryo@, and others),
and too large auto variable in arc4_randrekey() is pointed out by enami@.

Revision 1.25 / (download) - annotate - [select for diffs], Sat Nov 26 14:04:20 2011 UTC (17 months, 3 weeks ago) by enami
Branch: MAIN
Changes since 1.24: +2 -2 lines
Diff to previous 1.24 (colored)

Use exact 32bit integral type to declare variable to store
32bit random value.  This is necessary since it is overwritten
by four bytes.

Revision 1.24 / (download) - annotate - [select for diffs], Sat Nov 26 13:53:37 2011 UTC (17 months, 3 weeks ago) by enami
Branch: MAIN
Changes since 1.23: +10 -10 lines
Diff to previous 1.23 (colored)

Fix white space usage.

Revision 1.23 / (download) - annotate - [select for diffs], Sun Nov 20 15:37:31 2011 UTC (17 months, 4 weeks ago) by para
Branch: MAIN
Changes since 1.22: +3 -1 lines
Diff to previous 1.22 (colored)

make it compile without DIAGNOSTIC defined

Revision 1.22 / (download) - annotate - [select for diffs], Sat Nov 19 22:51:25 2011 UTC (17 months, 4 weeks ago) by tls
Branch: MAIN
Changes since 1.21: +164 -71 lines
Diff to previous 1.21 (colored)

First step of random number subsystem rework described in
<20111022023242.BA26F14A158@mail.netbsd.org>.  This change includes
the following:

	An initial cleanup and minor reorganization of the entropy pool
	code in sys/dev/rnd.c and sys/dev/rndpool.c.  Several bugs are
	fixed.  Some effort is made to accumulate entropy more quickly at
	boot time.

	A generic interface, "rndsink", is added, for stream generators to
	request that they be re-keyed with good quality entropy from the pool
	as soon as it is available.

	The arc4random()/arc4randbytes() implementation in libkern is
	adjusted to use the rndsink interface for rekeying, which helps
	address the problem of low-quality keys at boot time.

	An implementation of the FIPS 140-2 statistical tests for random
	number generator quality is provided (libkern/rngtest.c).  This
	is based on Greg Rose's implementation from Qualcomm.

	A new random stream generator, nist_ctr_drbg, is provided.  It is
	based on an implementation of the NIST SP800-90 CTR_DRBG by
	Henric Jungheim.  This generator users AES in a modified counter
	mode to generate a backtracking-resistant random stream.

	An abstraction layer, "cprng", is provided for in-kernel consumers
	of randomness.  The arc4random/arc4randbytes API is deprecated for
	in-kernel use.  It is replaced by "cprng_strong".  The current
	cprng_fast implementation wraps the existing arc4random
	implementation.  The current cprng_strong implementation wraps the
	new CTR_DRBG implementation.  Both interfaces are rekeyed from
	the entropy pool automatically at intervals justifiable from best
	current cryptographic practice.

	In some quick tests, cprng_fast() is about the same speed as
	the old arc4randbytes(), and cprng_strong() is about 20% faster
	than rnd_extract_data().  Performance is expected to improve.

	The AES code in src/crypto/rijndael is no longer an optional
	kernel component, as it is required by cprng_strong, which is
	not an optional kernel component.

	The entropy pool output is subjected to the rngtest tests at
	startup time; if it fails, the system will reboot.  There is
	approximately a 3/10000 chance of a false positive from these
	tests.  Entropy pool _input_ from hardware random numbers is
	subjected to the rngtest tests at attach time, as well as the
	FIPS continuous-output test, to detect bad or stuck hardware
	RNGs; if any are detected, they are detached, but the system
	continues to run.

	A problem with rndctl(8) is fixed -- datastructures with
	pointers in arrays are no longer passed to userspace (this
	was not a security problem, but rather a major issue for
	compat32).  A new kernel will require a new rndctl.

	The sysctl kern.arandom() and kern.urandom() nodes are hooked
	up to the new generators, but the /dev/*random pseudodevices
	are not, yet.

	Manual pages for the new kernel interfaces are forthcoming.

Revision 1.21 / (download) - annotate - [select for diffs], Mon Jan 18 20:54:54 2010 UTC (3 years, 3 months ago) by joerg
Branch: MAIN
CVS Tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, yamt-nfs-mp-base9, yamt-nfs-mp-base11, yamt-nfs-mp-base10, uebayasi-xip-base4, uebayasi-xip-base3, uebayasi-xip-base2, uebayasi-xip-base1, uebayasi-xip-base, uebayasi-xip, rmind-uvmplock-nbase, rmind-uvmplock-base, rmind-uvmplock, matt-mips64-premerge-20101231, jruoho-x86intr-base, jruoho-x86intr, jmcneill-audiomp3-base, jmcneill-audiomp3, cherry-xenmp-base, cherry-xenmp, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Branch point for: yamt-pagecache
Changes since 1.20: +2 -1 lines
Diff to previous 1.20 (colored)

Keep arc4_i and arc4_j synchronised after a rekeying. This prevents
accidentally ending up in a short ARC4 cycle.

Revision 1.20 / (download) - annotate - [select for diffs], Mon Apr 28 20:24:06 2008 UTC (5 years ago) by martin
Branch: MAIN
CVS Tags: yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, yamt-nfs-mp-base2, wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, wrstuden-revivesa, simonb-wapbl-nbase, simonb-wapbl-base, simonb-wapbl, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base2, nick-hppapmap-base, nick-hppapmap, netbsd-5-base, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-1-RELEASE, mjf-devfs2-base, matt-premerge-20091211, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20091211, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, jymxensuspend-base, jym-xensuspend-nbase, jym-xensuspend-base, jym-xensuspend, hpcarm-cleanup-nbase, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, haad-dm, ad-audiomp2-base, ad-audiomp2
Branch point for: netbsd-5-0, netbsd-5, matt-nb5-mips64
Changes since 1.19: +1 -8 lines
Diff to previous 1.19 (colored)

Remove clause 3 and 4 from TNF licenses

Revision 1.19 / (download) - annotate - [select for diffs], Thu Jul 19 22:00:04 2007 UTC (5 years, 10 months ago) by dsl
Branch: MAIN
CVS Tags: yamt-x86pmap-base4, yamt-x86pmap-base3, yamt-x86pmap-base2, yamt-x86pmap-base, yamt-x86pmap, yamt-pf42-baseX, yamt-pf42-base, yamt-nfs-mp-base, yamt-lazymbuf-base15, yamt-lazymbuf-base14, yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, vmlocking2-base3, vmlocking2-base2, vmlocking2-base1, vmlocking2, vmlocking-nbase, vmlocking-base, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, nick-net80211-sync-base, nick-net80211-sync, nick-csl-alignment-base5, mjf-devfs-base, mjf-devfs, matt-mips64-base, matt-armv6-prevmlocking, matt-armv6-nbase, matt-armv6-base, matt-armv6, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, jmcneill-pm-base, jmcneill-pm, jmcneill-base, hpcarm-cleanup-base, hpcarm-cleanup, cube-autoconf-base, cube-autoconf, bouyer-xeni386-nbase, bouyer-xeni386-merge1, bouyer-xeni386-base, bouyer-xeni386, bouyer-xenamd64-base2, bouyer-xenamd64-base, bouyer-xenamd64, ad-socklock-base1
Branch point for: yamt-pf42, yamt-nfs-mp, mjf-devfs2, matt-mips64
Changes since 1.18: +3 -1 lines
Diff to previous 1.18 (colored)

include sys/cdefs.h

Revision 1.18 / (download) - annotate - [select for diffs], Sun Nov 5 14:13:56 2006 UTC (6 years, 6 months ago) by christos
Branch: MAIN
CVS Tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, yamt-idlelwp-base8, yamt-idlelwp, wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup, post-newlock2-merge, nick-csl-alignment-base, newlock2-nbase, newlock2-base, netbsd-4-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, mjf-ufs-trans-base, mjf-ufs-trans, matt-nb4-arm-base, matt-nb4-arm, ad-audiomp-base, ad-audiomp
Branch point for: vmlocking, nick-csl-alignment, netbsd-4-0, netbsd-4
Changes since 1.17: +7 -3 lines
Diff to previous 1.17 (colored)

- call the initialization routine for arc4randbytes.
- knf (add continues)

Revision 1.17 / (download) - annotate - [select for diffs], Wed Jun 7 22:33:41 2006 UTC (6 years, 11 months ago) by kardel
Branch: MAIN
CVS Tags: yamt-splraiseipl-base2, yamt-splraiseipl-base, yamt-pdpolicy-base9, yamt-pdpolicy-base8, yamt-pdpolicy-base7, yamt-pdpolicy-base6, rpaulo-netinet-merge-pcb-base, gdamore-uart-base, gdamore-uart, chap-midi-nbase, chap-midi-base, abandoned-netbsd-4-base, abandoned-netbsd-4
Branch point for: yamt-splraiseipl, newlock2
Changes since 1.16: +10 -11 lines
Diff to previous 1.16 (colored)

merge FreeBSD timecounters from branch simonb-timecounters
- struct timeval time is gone
  time.tv_sec -> time_second
- struct timeval mono_time is gone
  mono_time.tv_sec -> time_uptime
- access to time via
	{get,}{micro,nano,bin}time()
	get* versions are fast but less precise
- support NTP nanokernel implementation (NTP API 4)
- further reading:
  Timecounter Paper: http://phk.freebsd.dk/pubs/timecounter.pdf
  NTP Nanokernel: http://www.eecis.udel.edu/~mills/ntp/html/kern.html

Revision 1.16 / (download) - annotate - [select for diffs], Sat Dec 24 20:45:09 2005 UTC (7 years, 4 months ago) by perry
Branch: MAIN
CVS Tags: yamt-uio_vmspace-base5, yamt-uio_vmspace, yamt-pdpolicy-base5, yamt-pdpolicy-base4, yamt-pdpolicy-base3, yamt-pdpolicy-base2, yamt-pdpolicy-base, simonb-timecounters-base, peter-altq-base, peter-altq, elad-kernelauth-base, elad-kernelauth
Branch point for: yamt-pdpolicy, simonb-timecounters, rpaulo-netinet-merge-pcb, chap-midi
Changes since 1.15: +3 -3 lines
Diff to previous 1.15 (colored)

Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.

Revision 1.15 / (download) - annotate - [select for diffs], Sun Dec 11 12:24:37 2005 UTC (7 years, 5 months ago) by christos
Branch: MAIN
Changes since 1.14: +1 -1 lines
Diff to previous 1.14 (colored)

merge ktrace-lwp.

Revision 1.14 / (download) - annotate - [select for diffs], Sat Feb 26 22:58:56 2005 UTC (8 years, 2 months ago) by perry
Branch: MAIN
CVS Tags: yamt-vop-base3, yamt-vop-base2, yamt-vop-base, yamt-vop, yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base3, yamt-readahead-base2, yamt-readahead-base, yamt-readahead, yamt-km-base4, yamt-km-base3, thorpej-vnode-attr-base, thorpej-vnode-attr, netbsd-3-base, netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0, netbsd-3, ktrace-lwp-base, kent-audio2-base
Branch point for: yamt-lazymbuf
Changes since 1.13: +3 -3 lines
Diff to previous 1.13 (colored)

nuke trailing whitespace

Revision 1.13 / (download) - annotate - [select for diffs], Fri Sep 17 21:54:28 2004 UTC (8 years, 8 months ago) by enami
Branch: MAIN
CVS Tags: yamt-km-base2, yamt-km-base, matt-timespec, kent-audio1-beforemerge, kent-audio1-base, kent-audio1
Branch point for: yamt-km, kent-audio2
Changes since 1.12: +4 -3 lines
Diff to previous 1.12 (colored)

Redo part of rev. 1.10.

Revision 1.12 / (download) - annotate - [select for diffs], Wed Sep 8 04:06:15 2004 UTC (8 years, 8 months ago) by yamt
Branch: MAIN
Changes since 1.11: +2 -2 lines
Diff to previous 1.11 (colored)

arc4random: fix a bug introduced by rev.1.7.
actually generate four bytes random value, rather than
leaving a byte always zero.

Revision 1.11 / (download) - annotate - [select for diffs], Thu Oct 2 10:39:27 2003 UTC (9 years, 7 months ago) by itojun
Branch: MAIN
CVS Tags: netbsd-2-0-base
Branch point for: netbsd-2-0
Changes since 1.10: +6 -1 lines
Diff to previous 1.10 (colored)

fix build for bootloaders (no /usr/include/sys/kernel.h any more).

Revision 1.10 / (download) - annotate - [select for diffs], Wed Aug 20 13:32:33 2003 UTC (9 years, 9 months ago) by itojun
Branch: MAIN
Changes since 1.9: +10 -9 lines
Diff to previous 1.9 (colored)

KNF

Revision 1.9 / (download) - annotate - [select for diffs], Sun Oct 6 13:42:36 2002 UTC (10 years, 7 months ago) by dan
Branch: MAIN
CVS Tags: nathanw_sa_before_merge, nathanw_sa_base, kqueue-beforemerge, kqueue-aftermerge, gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw, fvdl_fs64_base
Branch point for: ktrace-lwp
Changes since 1.8: +5 -2 lines
Diff to previous 1.8 (colored)

let this compile in the non KERNEL case without NRND.

Revision 1.8 / (download) - annotate - [select for diffs], Sun Oct 6 08:51:44 2002 UTC (10 years, 7 months ago) by tls
Branch: MAIN
Changes since 1.7: +17 -1 lines
Diff to previous 1.7 (colored)

ESP output was drawing down the entropy pool at a ferocious rate, a
particular problem on hosts with only wireless interfaces that are
definitely not safe to use as entropy sources.

Add arc4randbytes() which hands out bytes from the same source used
by arc4random().  This is intended to be a _temporary_ interface
until we can design and implement a better general PRNG interface
that is decoupled from the entropy-pool implementation.

Modify key_randomfill() (used only for initialization vectors on
SA creation and via key_sa_stir_iv(), which does not "stir",
despite its name) to use arc4randbytes() instead of pulling bits
directly from the entropy pool.  It is my hope that this change
will pose minimal integration problems for the KAME folks as the
random-pool interface is *already* different between each BSD
variant; this just simplifies the NetBSD case and solves a
fairly serious problem.

Note that it is generally considered acceptable cryptographic
practice to use a fast stream cipher to generate IVs for encryption
with stronger block ciphers.  For example, the use of "non-Approved"
PRNGs to generate IVs for "Approved" block ciphers is explicitly
sanctioned by FIPS 140-2.

Revision 1.7 / (download) - annotate - [select for diffs], Sun Oct 6 06:47:40 2002 UTC (10 years, 7 months ago) by tls
Branch: MAIN
Changes since 1.6: +75 -21 lines
Diff to previous 1.6 (colored)

This commit includes two major changes:

1) Speed up arc4random().  We make arc4randbyte() inline, which makes this
   not much slower than, say, the other arc4 implementation in our kernel.

   We also replace four calls to arc4randbyte() with a loop, saving about
   20% on some processors where the "unrolled" arc4randbyte() calls would
   needlessly stomp the cache.

2) Address various problems with the initialization/"stirring" code,
   primarily in the area of handling of the source data from the kernel
   entropy pool.  We used to:

	a) Ask the entropy pool for 32 bytes

	b) If we got zero bytes, key with junk from the stack (ouch!)
	   which has some nasty implications, to say the least.  For
	   example, we're most likely to get zero bytes at boot time,
	   when the stack contents are even more predictable than usual.

	c) If we got less than 32 bytes but more than zero bytes, use
	   however many bytes we got as the arc4 key, copying it
	   repeatedly as per usual arc4 key setup.

	   Because of the way NetBSD's entropy pool works, this was
	   mostly harmless, because if you ask for RND_EXTRACT_ANY,
	   you always get as many bytes as you ask for.  However,
	   this is probably a security hole in the original FreeBSD
	   code, where AFAICT you might end up using an 8-bit arc4
	   key -- not good, much worse than using the output of the
	   entropy pool hash function even when it thinks it only
	   has 8 bits of entropy to give you.

	   One thing this code could do on NetBSD that was not so
	   good was to replace a key with a lot of entropy with
	   one with less entropy.  That's clearly counterproductive.

   The new code, instead:

	a) Asks for 32 good bytes.  If it gets them, use them as the
	   arc4 key in the usual way.

	b) Tracks how many entropy bytes the key it's replacing had.
	   If the new entropy request got less bytes, leave the old
	   key in place.  Note that the first time through, the "old
	   key" had zero bytes, so we'll always replace it.

	c) If we get less then 32 bytes but more than we had, request
	   EXTRACT_ANY bytes from the entropy pool, padding the key
	   out to 32 bytes which we then use as the arc4 key in the
	   usual way.

This is still really all rather backwards.  Instead of this generator
deciding to rekey itself using a basically arbitrary metric, it should
register a callback so that the entropy pool code could rekey it when
a lot of bits were available.  Details at 11.

Finally, rename the "stir" function (which did not stir) to "rekey",
which is what it actually does.

Revision 1.6 / (download) - annotate - [select for diffs], Fri Oct 4 07:33:26 2002 UTC (10 years, 7 months ago) by itojun
Branch: MAIN
Changes since 1.5: +5 -1 lines
Diff to previous 1.5 (colored)

include rnd.h only under kernel build.
caveat: arc4random() will not get stirred in bootstrap code.

Revision 1.5 / (download) - annotate - [select for diffs], Fri Oct 4 02:37:23 2002 UTC (10 years, 7 months ago) by itojun
Branch: MAIN
Changes since 1.4: +4 -2 lines
Diff to previous 1.4 (colored)

add missing "rnd.h" include - noted by simonb

Revision 1.4 / (download) - annotate - [select for diffs], Fri Jun 14 03:05:46 2002 UTC (10 years, 11 months ago) by itojun
Branch: MAIN
CVS Tags: kqueue-base, gehenna-devsw-base
Branch point for: nathanw_sa, kqueue
Changes since 1.3: +9 -9 lines
Diff to previous 1.3 (colored)

discard 256 bytes of output every time we stir (not just when initializing)

Revision 1.3 / (download) - annotate - [select for diffs], Wed May 29 06:27:15 2002 UTC (10 years, 11 months ago) by itojun
Branch: MAIN
Branch point for: gehenna-devsw
Changes since 1.2: +3 -1 lines
Diff to previous 1.2 (colored)

need libkern.h for bootloaders

Revision 1.2 / (download) - annotate - [select for diffs], Tue May 28 12:21:22 2002 UTC (10 years, 11 months ago) by itojun
Branch: MAIN
Changes since 1.1: +1 -3 lines
Diff to previous 1.1 (colored)

no need for libkern.h

Revision 1.1 / (download) - annotate - [select for diffs], Tue May 28 10:09:24 2002 UTC (10 years, 11 months ago) by itojun
Branch: MAIN

have arc4random(9).

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>