From c0dc04b60d8c5c238f791f97daf57ce4dce8eceb Mon Sep 17 00:00:00 2001 From: "7u83@mail.ru" <7u83@mail.ru@noemail.net> Date: Sun, 8 Mar 2015 10:36:30 +0000 Subject: [PATCH] Improved random generation. FossilOrigin-Name: 090238dd1d98eeb490edd893288236e8cf2083822bd65981add1278a489fcae7 --- src/capwap/Makefile | 1 - src/capwap/cw_rand.c | 38 +++++++++++++++++++++++++++++++++----- src/capwap/cw_util.h | 1 - 3 files changed, 33 insertions(+), 7 deletions(-) diff --git a/src/capwap/Makefile b/src/capwap/Makefile index f64b30f7..b66389e8 100644 --- a/src/capwap/Makefile +++ b/src/capwap/Makefile @@ -47,7 +47,6 @@ UTILOBJS= \ cw_setstr.o \ cw_is_printable.o \ cw_rand.o \ - cw_pseudo_rand.o \ cw_foreach_msgelem.o \ avltree.o \ avltree_get.o \ diff --git a/src/capwap/cw_rand.c b/src/capwap/cw_rand.c index d718eb2b..46780257 100644 --- a/src/capwap/cw_rand.c +++ b/src/capwap/cw_rand.c @@ -16,6 +16,7 @@ */ +#include #include #include #include @@ -31,7 +32,7 @@ char * cw_rand_dev = "/dev/random"; -int cw_rand(uint8_t*dst, int len) +int cw_rand_r(uint8_t*dst, int len) { int rf; int l; @@ -40,7 +41,7 @@ int cw_rand(uint8_t*dst, int len) if (rf<0){ cw_log(LOG_ERR,"Can't open %s: %s",cw_rand_dev,strerror(errno)); - return cw_pseudo_rand(dst,len); + return 0; } @@ -49,13 +50,40 @@ int cw_rand(uint8_t*dst, int len) if ((l<0) && (errno != EAGAIN)){ cw_log(LOG_ERR,"Cant read from %s: %s",cw_rand_dev,strerror(errno)); - return cw_pseudo_rand(dst,len); + return 0; } - if (l