|
FreeBSD kernel libkern code
|
#include <sys/cdefs.h>#include <sys/types.h>#include <sys/param.h>#include <sys/kernel.h>#include <sys/random.h>#include <sys/libkern.h>#include <sys/lock.h>#include <sys/mutex.h>#include <sys/time.h>
Go to the source code of this file.
Macros | |
| #define | ARC4_RESEED_BYTES 65536 |
| #define | ARC4_RESEED_SECONDS 300 |
| #define | ARC4_KEYBYTES (256 / 8) |
Functions | |
| __FBSDID ("$BSDSUniX$") | |
| static u_int8_t | arc4_randbyte (void) |
| static __inline void | arc4_swap (u_int8_t *a, u_int8_t *b) |
| static void | arc4_randomstir (void) |
| static void | arc4_init (void) |
| SYSINIT (arc4_init, SI_SUB_LOCK, SI_ORDER_ANY, arc4_init, NULL) | |
| void | arc4rand (void *ptr, u_int len, int reseed) |
| uint32_t | arc4random (void) |
Variables | |
| int | arc4rand_iniseed_state = ARC4_ENTR_NONE |
| static u_int8_t | arc4_i |
| static u_int8_t | arc4_j |
| static int | arc4_numruns = 0 |
| static u_int8_t | arc4_sbox [256] |
| static time_t | arc4_t_reseed |
| static struct mtx | arc4_mtx |
| #define ARC4_KEYBYTES (256 / 8) |
Definition at line 25 of file arc4random.c.
Referenced by arc4_randomstir().
| #define ARC4_RESEED_BYTES 65536 |
Definition at line 23 of file arc4random.c.
Referenced by arc4rand().
| #define ARC4_RESEED_SECONDS 300 |
Definition at line 24 of file arc4random.c.
Referenced by arc4_randomstir().
| __FBSDID | ( | "$BSDSUniX$" | ) |
|
static |
Definition at line 94 of file arc4random.c.
References arc4_i, arc4_j, arc4_mtx, arc4_sbox, and arc4_t_reseed.
|
static |
Definition at line 112 of file arc4random.c.
References arc4_i, arc4_j, arc4_sbox, and arc4_swap().
Referenced by arc4_randomstir(), and arc4rand().


|
static |
Definition at line 51 of file arc4random.c.
References arc4_i, arc4_j, ARC4_KEYBYTES, arc4_mtx, arc4_numruns, arc4_randbyte(), ARC4_RESEED_SECONDS, arc4_sbox, arc4_swap(), and arc4_t_reseed.
Referenced by arc4rand().


|
static |
Definition at line 38 of file arc4random.c.
References c.
Referenced by arc4_randbyte(), and arc4_randomstir().

| void arc4rand | ( | void * | ptr, |
| u_int | len, | ||
| int | reseed | ||
| ) |
Definition at line 129 of file arc4random.c.
References arc4_mtx, arc4_numruns, arc4_randbyte(), arc4_randomstir(), ARC4_RESEED_BYTES, arc4_t_reseed, and arc4rand_iniseed_state.
Referenced by arc4random().


| uint32_t arc4random | ( | void | ) |
Definition at line 150 of file arc4random.c.
References arc4rand().

|
static |
Definition at line 29 of file arc4random.c.
Referenced by arc4_init(), arc4_randbyte(), and arc4_randomstir().
|
static |
Definition at line 29 of file arc4random.c.
Referenced by arc4_init(), arc4_randbyte(), and arc4_randomstir().
|
static |
Definition at line 33 of file arc4random.c.
Referenced by arc4_init(), arc4_randomstir(), and arc4rand().
|
static |
Definition at line 30 of file arc4random.c.
Referenced by arc4_randomstir(), and arc4rand().
|
static |
Definition at line 31 of file arc4random.c.
Referenced by arc4_init(), arc4_randbyte(), and arc4_randomstir().
|
static |
Definition at line 32 of file arc4random.c.
Referenced by arc4_init(), arc4_randomstir(), and arc4rand().
| int arc4rand_iniseed_state = ARC4_ENTR_NONE |
Definition at line 27 of file arc4random.c.
Referenced by arc4rand().