diff options
Diffstat (limited to 'crypto/rng.c')
-rw-r--r-- | crypto/rng.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/crypto/rng.c b/crypto/rng.c new file mode 100644 index 0000000..779a106 --- /dev/null +++ b/crypto/rng.c @@ -0,0 +1,24 @@ +#include "project.h" + + + + +uint8_t random_vector_generate(uint8_t * p_buff, uint8_t size) +{ + uint8_t available; + uint32_t err_code; + err_code = nrf_drv_rng_bytes_available(&available); + APP_ERROR_CHECK(err_code); + uint8_t length = (size<available) ? size : available; + err_code = nrf_drv_rng_rand(p_buff,length); + APP_ERROR_CHECK(err_code); + return length; +} + + +void rng_init(void) +{ + uint32_t err_code; + err_code = nrf_drv_rng_init(NULL); + APP_ERROR_CHECK(err_code); +} |