#include <config.h>#include <isc/random.h>#include <isc/result.h>#include <isc/mem.h>#include <isc/util.h>#include <atf-c.h>#include <stdlib.h>#include <stdint.h>#include <math.h>Go to the source code of this file.
Typedefs | |
| typedef double( | pvalue_func_t )(isc_mem_t *mctx, isc_uint16_t *values, size_t length) |
Functions | |
| static double | igamc (double a, double x) |
| static double | igam (double a, double x) |
| static isc_int8_t | scount_calculate (isc_uint16_t n) |
| static isc_uint8_t | bitcount_calculate (isc_uint16_t n) |
| static void | tables_init (void) |
| static isc_uint32_t | matrix_binaryrank (isc_uint32_t *bits, ssize_t rows, ssize_t cols) |
| static void | random_test (pvalue_func_t *func) |
| static double | monobit (isc_mem_t *mctx, isc_uint16_t *values, size_t length) |
| static double | runs (isc_mem_t *mctx, isc_uint16_t *values, size_t length) |
| static double | blockfrequency (isc_mem_t *mctx, isc_uint16_t *values, size_t length) |
| static double | binarymatrixrank (isc_mem_t *mctx, isc_uint16_t *values, size_t length) |
| ATF_TC (isc_rng_monobit) | |
| ATF_TC_HEAD (isc_rng_monobit, tc) | |
| ATF_TC_BODY (isc_rng_monobit, tc) | |
| ATF_TC (isc_rng_runs) | |
| ATF_TC_HEAD (isc_rng_runs, tc) | |
| ATF_TC_BODY (isc_rng_runs, tc) | |
| ATF_TC (isc_rng_blockfrequency) | |
| ATF_TC_HEAD (isc_rng_blockfrequency, tc) | |
| ATF_TC_BODY (isc_rng_blockfrequency, tc) | |
| ATF_TC (isc_rng_binarymatrixrank) | |
| ATF_TC_HEAD (isc_rng_binarymatrixrank, tc) | |
| ATF_TC_BODY (isc_rng_binarymatrixrank, tc) | |
| ATF_TP_ADD_TCS (tp) | |
Variables | |
| static double | MACHEP = 1.11022302462515654042E-16 |
| static double | MAXLOG = 7.09782712893383996843E2 |
| static double | big = 4.503599627370496e15 |
| static double | biginv = 2.22044604925031308085e-16 |
| static isc_int8_t | scounts_table [65536] |
| static isc_uint8_t | bitcounts_table [65536] |
| typedef double( pvalue_func_t)(isc_mem_t *mctx, isc_uint16_t *values, size_t length) |
Definition at line 30 of file random_test.c.
| static double igamc | ( | double | a, | |
| double | x | |||
| ) | [static] |
Definition at line 52 of file random_test.c.
References big, biginv, igam(), MACHEP, MAXLOG, and r.
Referenced by blockfrequency(), igam(), and random_test().
| static double igam | ( | double | a, | |
| double | x | |||
| ) | [static] |
| static isc_int8_t scount_calculate | ( | isc_uint16_t | n | ) | [static] |
| static isc_uint8_t bitcount_calculate | ( | isc_uint16_t | n | ) | [static] |
| static void tables_init | ( | void | ) | [static] |
Definition at line 185 of file random_test.c.
References bitcount_calculate(), bitcounts_table, scount_calculate(), and scounts_table.
Referenced by random_test().
| static isc_uint32_t matrix_binaryrank | ( | isc_uint32_t * | bits, | |
| ssize_t | rows, | |||
| ssize_t | cols | |||
| ) | [static] |
| static void random_test | ( | pvalue_func_t * | func | ) | [static] |
Definition at line 248 of file random_test.c.
References igamc(), isc_mem_create(), ISC_R_SUCCESS, isc_rng_create(), isc_rng_detach(), isc_rng_random(), mctx, and tables_init().
Referenced by ATF_TC_BODY().
| static double monobit | ( | isc_mem_t * | mctx, | |
| isc_uint16_t * | values, | |||
| size_t | length | |||
| ) | [static] |
Definition at line 353 of file random_test.c.
References scounts_table, and UNUSED.
Referenced by ATF_TC_BODY().
| static double runs | ( | isc_mem_t * | mctx, | |
| isc_uint16_t * | values, | |||
| size_t | length | |||
| ) | [static] |
Definition at line 384 of file random_test.c.
References bcount, bitcounts_table, tau, and UNUSED.
Referenced by ATF_TC_BODY().
| static double blockfrequency | ( | isc_mem_t * | mctx, | |
| isc_uint16_t * | values, | |||
| size_t | length | |||
| ) | [static] |
Definition at line 460 of file random_test.c.
References bitcounts_table, igamc(), isc_mem_get, and isc_mem_put.
Referenced by ATF_TC_BODY().
| static double binarymatrixrank | ( | isc_mem_t * | mctx, | |
| isc_uint16_t * | values, | |||
| size_t | length | |||
| ) | [static] |
Definition at line 525 of file random_test.c.
References matrix_binaryrank(), r1, r2, and UNUSED.
Referenced by ATF_TC_BODY().
| ATF_TC | ( | isc_rng_monobit | ) |
| ATF_TC_HEAD | ( | isc_rng_monobit | , | |
| tc | ||||
| ) |
Definition at line 607 of file random_test.c.
| ATF_TC_BODY | ( | isc_rng_monobit | , | |
| tc | ||||
| ) |
| ATF_TC | ( | isc_rng_runs | ) |
| ATF_TC_HEAD | ( | isc_rng_runs | , | |
| tc | ||||
| ) |
Definition at line 618 of file random_test.c.
| ATF_TC_BODY | ( | isc_rng_runs | , | |
| tc | ||||
| ) |
| ATF_TC | ( | isc_rng_blockfrequency | ) |
| ATF_TC_HEAD | ( | isc_rng_blockfrequency | , | |
| tc | ||||
| ) |
Definition at line 629 of file random_test.c.
| ATF_TC_BODY | ( | isc_rng_blockfrequency | , | |
| tc | ||||
| ) |
Definition at line 633 of file random_test.c.
References blockfrequency(), random_test(), and UNUSED.
| ATF_TC | ( | isc_rng_binarymatrixrank | ) |
| ATF_TC_HEAD | ( | isc_rng_binarymatrixrank | , | |
| tc | ||||
| ) |
Definition at line 640 of file random_test.c.
| ATF_TC_BODY | ( | isc_rng_binarymatrixrank | , | |
| tc | ||||
| ) |
Definition at line 648 of file random_test.c.
References binarymatrixrank(), random_test(), and UNUSED.
| ATF_TP_ADD_TCS | ( | tp | ) |
Definition at line 657 of file random_test.c.
double MACHEP = 1.11022302462515654042E-16 [static] |
double MAXLOG = 7.09782712893383996843E2 [static] |
double big = 4.503599627370496e15 [static] |
double biginv = 2.22044604925031308085e-16 [static] |
isc_int8_t scounts_table[65536] [static] |
isc_uint8_t bitcounts_table[65536] [static] |
Definition at line 142 of file random_test.c.
Referenced by blockfrequency(), runs(), and tables_init().