diff options
Diffstat (limited to 'klibc/klibc/seed48.c')
-rw-r--r-- | klibc/klibc/seed48.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/klibc/klibc/seed48.c b/klibc/klibc/seed48.c new file mode 100644 index 0000000000..f8353c8715 --- /dev/null +++ b/klibc/klibc/seed48.c @@ -0,0 +1,19 @@ +/* + * seed48.c + */ + +#include <stdlib.h> +#include <stdint.h> +#include <string.h> + +extern unsigned short __rand48_seed[3]; + +unsigned short *seed48(const unsigned short xsubi[3]) +{ + static unsigned short oldseed[3]; + memcpy(oldseed, __rand48_seed, sizeof __rand48_seed); + memcpy(__rand48_seed, xsubi, sizeof __rand48_seed); + + return oldseed; +} + |