1*88c3eadbSlukem /* $NetBSD: srand48.c,v 1.7 2005/06/12 05:21:28 lukem Exp $ */ 24e067afcSperry 3933a7b3aSbrezak /* 4933a7b3aSbrezak * Copyright (c) 1993 Martin Birgmeier 5933a7b3aSbrezak * All rights reserved. 6933a7b3aSbrezak * 7933a7b3aSbrezak * You may redistribute unmodified or modified versions of this source 8933a7b3aSbrezak * code provided that the above copyright notice and this and the 9933a7b3aSbrezak * following conditions are retained. 10933a7b3aSbrezak * 11933a7b3aSbrezak * This software is provided ``as is'', and comes with no warranties 12933a7b3aSbrezak * of any kind. I shall in no event be liable for anything that happens 13933a7b3aSbrezak * to anyone/anything when using this software. 14933a7b3aSbrezak */ 15933a7b3aSbrezak 16*88c3eadbSlukem #include <sys/cdefs.h> 17*88c3eadbSlukem #if defined(LIBC_SCCS) && !defined(lint) 18*88c3eadbSlukem __RCSID("$NetBSD: srand48.c,v 1.7 2005/06/12 05:21:28 lukem Exp $"); 19*88c3eadbSlukem #endif /* LIBC_SCCS and not lint */ 20*88c3eadbSlukem 2143fa6fe3Sjtc #include "namespace.h" 22933a7b3aSbrezak #include "rand48.h" 23933a7b3aSbrezak 2443fa6fe3Sjtc #ifdef __weak_alias __weak_alias(srand48,_srand48)2560549036Smycroft__weak_alias(srand48,_srand48) 2643fa6fe3Sjtc #endif 27933a7b3aSbrezak 28933a7b3aSbrezak void 29933a7b3aSbrezak srand48(long seed) 30933a7b3aSbrezak { 31d2b1e8e4Sjtc __rand48_seed[0] = RAND48_SEED_0; 32d2b1e8e4Sjtc __rand48_seed[1] = (unsigned short) seed; 3333edc15aSchristos __rand48_seed[2] = (unsigned short) ((unsigned long)seed >> 16); 34d2b1e8e4Sjtc __rand48_mult[0] = RAND48_MULT_0; 35d2b1e8e4Sjtc __rand48_mult[1] = RAND48_MULT_1; 36d2b1e8e4Sjtc __rand48_mult[2] = RAND48_MULT_2; 37d2b1e8e4Sjtc __rand48_add = RAND48_ADD; 38933a7b3aSbrezak } 39