--- mrand48.c.orig 2009-11-07 14:51:38.000000000 -0800 +++ mrand48.c 2009-11-07 14:51:39.000000000 -0800 @@ -16,11 +16,9 @@ __FBSDID("$FreeBSD: src/lib/libc/gen/mra #include "rand48.h" -extern unsigned short _rand48_seed[3]; - long mrand48(void) { - _dorand48(_rand48_seed); - return ((long) _rand48_seed[2] << 16) + (long) _rand48_seed[1]; + _DORAND48(_rand48_seed); + return (int)((_rand48_seed >> 16) & 0xffffffff); }