1*3ff40c12SJohn Marino /* 2*3ff40c12SJohn Marino * Random number generator 3*3ff40c12SJohn Marino * Copyright (c) 2010-2011, Jouni Malinen <j@w1.fi> 4*3ff40c12SJohn Marino * 5*3ff40c12SJohn Marino * This software may be distributed under the terms of the BSD license. 6*3ff40c12SJohn Marino * See README for more details. 7*3ff40c12SJohn Marino */ 8*3ff40c12SJohn Marino 9*3ff40c12SJohn Marino #ifndef RANDOM_H 10*3ff40c12SJohn Marino #define RANDOM_H 11*3ff40c12SJohn Marino 12*3ff40c12SJohn Marino #ifdef CONFIG_NO_RANDOM_POOL 13*3ff40c12SJohn Marino #define random_init(e) do { } while (0) 14*3ff40c12SJohn Marino #define random_deinit() do { } while (0) 15*3ff40c12SJohn Marino #define random_add_randomness(b, l) do { } while (0) 16*3ff40c12SJohn Marino #define random_get_bytes(b, l) os_get_random((b), (l)) 17*3ff40c12SJohn Marino #define random_pool_ready() 1 18*3ff40c12SJohn Marino #define random_mark_pool_ready() do { } while (0) 19*3ff40c12SJohn Marino #else /* CONFIG_NO_RANDOM_POOL */ 20*3ff40c12SJohn Marino void random_init(const char *entropy_file); 21*3ff40c12SJohn Marino void random_deinit(void); 22*3ff40c12SJohn Marino void random_add_randomness(const void *buf, size_t len); 23*3ff40c12SJohn Marino int random_get_bytes(void *buf, size_t len); 24*3ff40c12SJohn Marino int random_pool_ready(void); 25*3ff40c12SJohn Marino void random_mark_pool_ready(void); 26*3ff40c12SJohn Marino #endif /* CONFIG_NO_RANDOM_POOL */ 27*3ff40c12SJohn Marino 28*3ff40c12SJohn Marino #endif /* RANDOM_H */ 29