131a1060a5a75d4f2aa3c3a5a7b948eb512d53387Elliott Hughes/* $NetBSD: seed48.c,v 1.8 2005/06/12 05:21:28 lukem Exp $ */ 231a1060a5a75d4f2aa3c3a5a7b948eb512d53387Elliott Hughes 31dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project/* 41dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * Copyright (c) 1993 Martin Birgmeier 51dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * All rights reserved. 61dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * 71dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * You may redistribute unmodified or modified versions of this source 81dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * code provided that the above copyright notice and this and the 91dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * following conditions are retained. 101dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * 111dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * This software is provided ``as is'', and comes with no warranties 121dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * of any kind. I shall in no event be liable for anything that happens 131dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * to anyone/anything when using this software. 141dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project */ 151dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 1631a1060a5a75d4f2aa3c3a5a7b948eb512d53387Elliott Hughes#include <sys/cdefs.h> 1731a1060a5a75d4f2aa3c3a5a7b948eb512d53387Elliott Hughes#if defined(LIBC_SCCS) && !defined(lint) 1831a1060a5a75d4f2aa3c3a5a7b948eb512d53387Elliott Hughes__RCSID("$NetBSD: seed48.c,v 1.8 2005/06/12 05:21:28 lukem Exp $"); 1931a1060a5a75d4f2aa3c3a5a7b948eb512d53387Elliott Hughes#endif /* LIBC_SCCS and not lint */ 2031a1060a5a75d4f2aa3c3a5a7b948eb512d53387Elliott Hughes 2131a1060a5a75d4f2aa3c3a5a7b948eb512d53387Elliott Hughes#include "namespace.h" 2231a1060a5a75d4f2aa3c3a5a7b948eb512d53387Elliott Hughes 2331a1060a5a75d4f2aa3c3a5a7b948eb512d53387Elliott Hughes#include <assert.h> 2431a1060a5a75d4f2aa3c3a5a7b948eb512d53387Elliott Hughes 251dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#include "rand48.h" 261dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 2731a1060a5a75d4f2aa3c3a5a7b948eb512d53387Elliott Hughes#ifdef __weak_alias 2831a1060a5a75d4f2aa3c3a5a7b948eb512d53387Elliott Hughes__weak_alias(seed48,_seed48) 2931a1060a5a75d4f2aa3c3a5a7b948eb512d53387Elliott Hughes#endif 301dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 311dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectunsigned short * 321dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectseed48(unsigned short xseed[3]) 331dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project{ 341dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project static unsigned short sseed[3]; 35e734769276045c0cb89d4620fdd4ef35a0e6c335André Goddard Rosa 3631a1060a5a75d4f2aa3c3a5a7b948eb512d53387Elliott Hughes _DIAGASSERT(xseed != NULL); 3731a1060a5a75d4f2aa3c3a5a7b948eb512d53387Elliott Hughes 381dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project sseed[0] = __rand48_seed[0]; 391dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project sseed[1] = __rand48_seed[1]; 401dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project sseed[2] = __rand48_seed[2]; 411dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __rand48_seed[0] = xseed[0]; 421dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __rand48_seed[1] = xseed[1]; 431dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __rand48_seed[2] = xseed[2]; 441dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __rand48_mult[0] = RAND48_MULT_0; 451dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __rand48_mult[1] = RAND48_MULT_1; 461dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __rand48_mult[2] = RAND48_MULT_2; 471dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project __rand48_add = RAND48_ADD; 481dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project return sseed; 491dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project} 50