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