diff options
Diffstat (limited to 'src/lib/libc/stdlib/seed48.c')
-rw-r--r-- | src/lib/libc/stdlib/seed48.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/lib/libc/stdlib/seed48.c b/src/lib/libc/stdlib/seed48.c index 583262f2d5..7acb4e6d1d 100644 --- a/src/lib/libc/stdlib/seed48.c +++ b/src/lib/libc/stdlib/seed48.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: seed48.c,v 1.3 2005/08/08 08:05:37 espie Exp $ */ | 1 | /* $OpenBSD: seed48.c,v 1.4 2014/12/08 21:45:20 deraadt Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 1993 Martin Birgmeier | 3 | * Copyright (c) 1993 Martin Birgmeier |
4 | * All rights reserved. | 4 | * All rights reserved. |
@@ -21,8 +21,19 @@ extern unsigned short __rand48_add; | |||
21 | unsigned short * | 21 | unsigned short * |
22 | seed48(unsigned short xseed[3]) | 22 | seed48(unsigned short xseed[3]) |
23 | { | 23 | { |
24 | unsigned short *res; | ||
25 | |||
26 | res = seed48_deterministic(xseed); | ||
27 | __rand48_deterministic = 0; | ||
28 | return res; | ||
29 | } | ||
30 | |||
31 | unsigned short * | ||
32 | seed48_deterministic(unsigned short xseed[3]) | ||
33 | { | ||
24 | static unsigned short sseed[3]; | 34 | static unsigned short sseed[3]; |
25 | 35 | ||
36 | __rand48_deterministic = 1; | ||
26 | sseed[0] = __rand48_seed[0]; | 37 | sseed[0] = __rand48_seed[0]; |
27 | sseed[1] = __rand48_seed[1]; | 38 | sseed[1] = __rand48_seed[1]; |
28 | sseed[2] = __rand48_seed[2]; | 39 | sseed[2] = __rand48_seed[2]; |