James Carlson wrote:
> I don't think there's really a good option available with just one
> mechanism.
> 
> If you make $RANDOM "really random" by default, but revert to normal
> seeded rand() mode when written to, then users will be confused.  On
> some platforms, reading from $RANDOM alone (without initializing) will
> produce high quality random numbers.  On other platforms, it'll
> produce the worst-possible randomness.  If smart users try to make
> their applications robust by writing $$ (or some such) to $RANDOM,
> they'll perversely end up with lower quality randomness by accident on
> platforms that have /dev/urandom (which isn't just Solaris, but may
> not be all platforms).
> 
> I think it'd be better to keep the default $RANDOM behavior, and
> create a new $URANDOM defined to return higher-quality randomness
> without initialization.

I second that.

And though James has summarised well, I'd like to stress that the use
of ${RANDOM} has a documented interface - the fact that you can assign
a seed to it implies a pseudo-random series.

I also support Roland's proposal, but there should be a separate interface.

"Change an interface, change the name" is the holy writ in Solaris.

(and should be in all systems development)

Cheers,
Henk




Reply via email to