| To: | Stephen Hemminger <shemminger@xxxxxxxx> |
|---|---|
| Subject: | Re: [PATCH] (4/4) use system get_random_bytes in hdlcdrv |
| From: | Andi Kleen <ak@xxxxxxx> |
| Date: | Fri, 19 Sep 2003 23:46:42 +0200 |
| Cc: | Thomas Sailer <t.sailer@xxxxxxxxxxxxxx>, Jeff Garzik <jgarzik@xxxxxxxxx>, linux-hams@xxxxxxxxxxxxxxx, netdev@xxxxxxxxxxx |
| In-reply-to: | <20030919133809.5390e8cb.shemminger@xxxxxxxx> |
| References: | <20030919133809.5390e8cb.shemminger@xxxxxxxx> |
| Sender: | netdev-bounce@xxxxxxxxxxx |
> void hdlcdrv_arbitrate(struct net_device *dev, struct hdlcdrv_state *s)
> {
> + u8 prand;
> +
> if (!s || s->magic != HDLCDRV_MAGIC || s->hdlctx.ptt || !s->skb)
> return;
> if (s->ch_params.fulldup) {
> @@ -459,7 +452,9 @@
> if ((--s->hdlctx.slotcnt) > 0)
> return;
> s->hdlctx.slotcnt = s->ch_params.slottime;
> - if ((random_num() % 256) > s->ch_params.ppersist)
> +
> + get_random_bytes(&prand, sizeof(prand));
> + if (prand > s->ch_params.ppersist)
The "hard" random numbers generated by get_random_bytes
are a precious scarce resource (many systems don't generate them very often).
They should only be used as seed or when it is needed for security, otherwise
users who really need them risk blocking on /dev/random.
Especially if that function is called often it would be a bad idea.
-Andi
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | Re: patricia tries vs. hash for routing?, Kristen Carlson |
|---|---|
| Next by Date: | Re: net/sctp/sm_make_chunk.c alignment problems on parisc64, Sridhar Samudrala |
| Previous by Thread: | [PATCH] (4/4) use system get_random_bytes in hdlcdrv, Stephen Hemminger |
| Next by Thread: | Re: [PATCH] (4/4) use system get_random_bytes in hdlcdrv, Stephen Hemminger |
| Indexes: | [Date] [Thread] [Top] [All Lists] |