1 /*
2  * Copyright (c) 1993 Martin Birgmeier
3  * All rights reserved.
4  *
5  * You may redistribute unmodified or modified versions of this source
6  * code provided that the above copyright notice and this and the
7  * following conditions are retained.
8  *
9  * This software is provided ``as is'', and comes with no warranties
10  * of any kind. I shall in no event be liable for anything that happens
11  * to anyone/anything when using this software.
12  */
13 
14 #include "rand48.h"
15 
16 long
_mrand48_r(struct _rand48 * r)17 _mrand48_r (struct _rand48 *r)
18 {
19   int32_t i;
20   __dorand48(r, r->_seed);
21   i = (int32_t) ((uint32_t) (r->_seed[2]) << 16 | (uint32_t) (r->_seed[1]));
22   return (long) i;
23 }
24 
25 #ifndef _REENT_ONLY
26 long
mrand48(void)27 mrand48 (void)
28 {
29   return _mrand48_r (&_rand48);
30 }
31 #endif /* !_REENT_ONLY */
32