rand.h revision 6017:7e310503019e
12810Srdreslin@umich.edu/* 211375Sandreas.hansson@arm.com * rand.h 311051Sandreas.hansson@arm.com * 411051Sandreas.hansson@arm.com * Pseudo-random number generation, based on OpenBSD arc4random(). 511051Sandreas.hansson@arm.com * 611051Sandreas.hansson@arm.com * Copyright (c) 2000 Dug Song <dugsong@monkey.org> 711051Sandreas.hansson@arm.com * Copyright (c) 1996 David Mazieres <dm@lcs.mit.edu> 811051Sandreas.hansson@arm.com * 911051Sandreas.hansson@arm.com * $Id: rand.h,v 1.4 2002/04/07 19:01:25 dugsong Exp $ 1011051Sandreas.hansson@arm.com */ 1111051Sandreas.hansson@arm.com 1211051Sandreas.hansson@arm.com#ifndef DNET_RAND_H 1311051Sandreas.hansson@arm.com#define DNET_RAND_H 1411051Sandreas.hansson@arm.com 1511051Sandreas.hansson@arm.comtypedef struct rand_handle rand_t; 162810Srdreslin@umich.edu 172810Srdreslin@umich.edu__BEGIN_DECLS 182810Srdreslin@umich.edurand_t *rand_open(void); 192810Srdreslin@umich.edu 202810Srdreslin@umich.eduint rand_get(rand_t *r, void *buf, size_t len); 212810Srdreslin@umich.eduint rand_set(rand_t *r, const void *seed, size_t len); 222810Srdreslin@umich.eduint rand_add(rand_t *r, const void *buf, size_t len); 232810Srdreslin@umich.edu 242810Srdreslin@umich.eduuint8_t rand_uint8(rand_t *r); 252810Srdreslin@umich.eduuint16_t rand_uint16(rand_t *r); 262810Srdreslin@umich.eduuint32_t rand_uint32(rand_t *r); 272810Srdreslin@umich.edu 282810Srdreslin@umich.eduint rand_shuffle(rand_t *r, void *base, size_t nmemb, size_t size); 292810Srdreslin@umich.edu 302810Srdreslin@umich.edurand_t *rand_close(rand_t *r); 312810Srdreslin@umich.edu__END_DECLS 322810Srdreslin@umich.edu 332810Srdreslin@umich.edu#endif /* DNET_RAND_H */ 342810Srdreslin@umich.edu