Date: Sun, 22 Jan 2012 16:59:55 +0000 From: Mark Murray <markm@FreeBSD.org> To: Andrey Chernov <ache@FreeBSD.ORG> Cc: svn-src-head@FreeBSD.ORG, David Schultz <das@FreeBSD.ORG>, src-committers@FreeBSD.ORG, svn-src-all@FreeBSD.ORG Subject: Re: svn commit: r230230 - head/sys/dev/random Message-ID: <E1Rp0lq-000Gly-FT@groundzero.grondar.org> In-Reply-To: <20120120215649.GA40016@vniz.net> References: <201201162018.q0GKIADK050161@svn.freebsd.org> <20120118061943.GA80874@vniz.net> <E1Rny2A-000C3x-O6@groundzero.grondar.org> <20120120055823.GA28177@vniz.net> <E1RoG98-000DiP-0Y@groundzero.grondar.org> <20120120215649.GA40016@vniz.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Andrey Chernov writes: > > The usual way round this is with a flag. Set a static, volatile > > flag, defaulting "off", and set it to "on" when the seeding has > > happened. Then arc4random() can do the right thing, depending on > > this flag. > > Ok, what about this version, is it right? libkern/arc4rand.c is not a > module but always present in the kernel, so "arc4rand_iniseed_state" > will be always accessible. > > --- dev/random/randomdev_soft.c.old 2011-09-26 07:35:48.000000000 +0400 > +++ dev/random/randomdev_soft.c 2012-01-21 01:41:37.000000000 +0400 > @@ -55,6 +55,8 @@ __FBSDID("$FreeBSD: src/sys/dev/random/r > > #define RANDOM_FIFO_MAX 256 /* How many events to queue up */ > > +extern int arc4rand_iniseed_state; > + Should be in a header file, nad _possibly_ should be volatile. If it works without being volatile, then OK. The rest is OK. I've not tested it, so this is not a review, simply an "OK" :-) M -- Mark R V Murray Cert APS(Open) Dip Phys(Open) BSc Open(Open) BSc(Hons)(Open) Pi: 132511160
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E1Rp0lq-000Gly-FT>