diff --git a/nse_openssl.cc b/nse_openssl.cc index 84b9d8287..4ba44c193 100644 --- a/nse_openssl.cc +++ b/nse_openssl.cc @@ -225,7 +225,9 @@ static int l_rand_pseudo_bytes( lua_State *L ) /** rand_pseudo_bytes( number byt unsigned char * result = (unsigned char *) malloc( len ); if (!result) return luaL_error( L, "Couldn't allocate memory."); - RAND_pseudo_bytes( result, len ); + if (RAND_bytes( result, len ) != 1) { + return luaL_error(L, "Failure in RAND_bytes."); + } lua_pushlstring( L, (char *) result, len ); free( result ); return 1;