From edffaf4998902baa8112fbdd357ca8d9f34c7b30 Mon Sep 17 00:00:00 2001 From: deraadt <> Date: Tue, 9 Dec 2014 08:00:53 +0000 Subject: improve warnings from rand_r(), rand(), and random() It may take a few iterations to get the tone right. previously discussed with millert --- src/lib/libc/stdlib/rand.c | 4 ++-- src/lib/libc/stdlib/random.c | 7 ++++++- 2 files changed, 8 insertions(+), 3 deletions(-) (limited to 'src/lib/libc/stdlib') diff --git a/src/lib/libc/stdlib/rand.c b/src/lib/libc/stdlib/rand.c index 00390a23e7..ee2fd44bac 100644 --- a/src/lib/libc/stdlib/rand.c +++ b/src/lib/libc/stdlib/rand.c @@ -42,7 +42,7 @@ rand_r(u_int *seed) #if defined(APIWARN) __warn_references(rand_r, - "warning: rand_r() isn't random; consider using arc4random()"); + "warning: rand_r() is not random, it is deterministic."); #endif int @@ -55,7 +55,7 @@ rand(void) #if defined(APIWARN) __warn_references(rand, - "warning: rand() isn't random; consider using arc4random()"); + "warning: rand() may return determinstic values, is that what you want?"); #endif void diff --git a/src/lib/libc/stdlib/random.c b/src/lib/libc/stdlib/random.c index cba088c751..375bfbd0e6 100644 --- a/src/lib/libc/stdlib/random.c +++ b/src/lib/libc/stdlib/random.c @@ -1,4 +1,4 @@ -/* $OpenBSD: random.c,v 1.25 2014/12/08 21:45:20 deraadt Exp $ */ +/* $OpenBSD: random.c,v 1.26 2014/12/09 08:00:53 deraadt Exp $ */ /* * Copyright (c) 1983 Regents of the University of California. * All rights reserved. @@ -415,3 +415,8 @@ random(void) UNLOCK(); return r; } + +#if defined(APIWARN) +__warn_references(rand, + "warning: random() may return determinstic values, is that what you want?"); +#endif -- cgit v1.2.3-55-g6feb