rand.h revision 6017:7e310503019e
16145SN/A/* 26145SN/A * rand.h 36145SN/A * 46145SN/A * Pseudo-random number generation, based on OpenBSD arc4random(). 56145SN/A * 66145SN/A * Copyright (c) 2000 Dug Song <dugsong@monkey.org> 76145SN/A * Copyright (c) 1996 David Mazieres <dm@lcs.mit.edu> 86145SN/A * 96145SN/A * $Id: rand.h,v 1.4 2002/04/07 19:01:25 dugsong Exp $ 106145SN/A */ 116145SN/A 126145SN/A#ifndef DNET_RAND_H 136145SN/A#define DNET_RAND_H 146145SN/A 156145SN/Atypedef struct rand_handle rand_t; 166145SN/A 176145SN/A__BEGIN_DECLS 186145SN/Arand_t *rand_open(void); 196145SN/A 206145SN/Aint rand_get(rand_t *r, void *buf, size_t len); 216145SN/Aint rand_set(rand_t *r, const void *seed, size_t len); 226145SN/Aint rand_add(rand_t *r, const void *buf, size_t len); 236145SN/A 246145SN/Auint8_t rand_uint8(rand_t *r); 256145SN/Auint16_t rand_uint16(rand_t *r); 266145SN/Auint32_t rand_uint32(rand_t *r); 276145SN/A 286145SN/Aint rand_shuffle(rand_t *r, void *base, size_t nmemb, size_t size); 297056SN/A 308232SN/Arand_t *rand_close(rand_t *r); 319104SN/A__END_DECLS 327039SN/A 3310301Snilay@cs.wisc.edu#endif /* DNET_RAND_H */ 3411108Sdavid.hashe@amd.com