summaryrefslogtreecommitdiff
path: root/usr/src/lib/libuuid/common/uuid_misc.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/lib/libuuid/common/uuid_misc.c')
-rw-r--r--usr/src/lib/libuuid/common/uuid_misc.c14
1 files changed, 2 insertions, 12 deletions
diff --git a/usr/src/lib/libuuid/common/uuid_misc.c b/usr/src/lib/libuuid/common/uuid_misc.c
index 547531c19e..a6c320c158 100644
--- a/usr/src/lib/libuuid/common/uuid_misc.c
+++ b/usr/src/lib/libuuid/common/uuid_misc.c
@@ -22,6 +22,7 @@
/*
* Copyright 2008 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
+ * Copyright (c) 2015, Joyent, Inc.
*/
/*
@@ -120,18 +121,7 @@ get_current_time(uuid_time_t *timestamp)
uint16_t
get_random(void)
{
- static int initted = 0;
- uuid_time_t time_now;
- long seed;
-
- if (!initted) {
- get_system_time(&time_now);
- time_now = time_now/UUIDS_PER_TOD_CALL;
- seed = (unsigned)(((time_now >> 32) ^ time_now)&0xffffffff);
- srand48(seed);
- initted = 1;
- }
- return (mrand48());
+ return (arc4random_uniform(UINT16_MAX));
}
/*