00001
00023 #ifndef MBEDTLS_ENTROPY_POLL_H
00024 #define MBEDTLS_ENTROPY_POLL_H
00025
00026 #if !defined(MBEDTLS_CONFIG_FILE)
00027 #include "config.h"
00028 #else
00029 #include MBEDTLS_CONFIG_FILE
00030 #endif
00031
00032 #include <stddef.h>
00033
00034 #ifdef __cplusplus
00035 extern "C" {
00036 #endif
00037
00038
00039
00040
00041 #define MBEDTLS_ENTROPY_MIN_PLATFORM 32
00042 #define MBEDTLS_ENTROPY_MIN_HAVEGE 32
00043 #define MBEDTLS_ENTROPY_MIN_HARDCLOCK 4
00044 #if !defined(MBEDTLS_ENTROPY_MIN_HARDWARE)
00045 #define MBEDTLS_ENTROPY_MIN_HARDWARE 32
00046 #endif
00047
00051 #if defined(MBEDTLS_TEST_NULL_ENTROPY)
00052 int mbedtls_null_entropy_poll( void *data,
00053 unsigned char *output, size_t len, size_t *olen );
00054 #endif
00055
00056 #if !defined(MBEDTLS_NO_PLATFORM_ENTROPY)
00057
00060 int mbedtls_platform_entropy_poll( void *data,
00061 unsigned char *output, size_t len, size_t *olen );
00062 #endif
00063
00064 #if defined(MBEDTLS_HAVEGE_C)
00065
00070 int mbedtls_havege_poll( void *data,
00071 unsigned char *output, size_t len, size_t *olen );
00072 #endif
00073
00074 #if defined(MBEDTLS_TIMING_C)
00075
00078 int mbedtls_hardclock_poll( void *data,
00079 unsigned char *output, size_t len, size_t *olen );
00080 #endif
00081
00082 #if defined(MBEDTLS_ENTROPY_HARDWARE_ALT)
00083
00091 int mbedtls_hardware_poll( void *data,
00092 unsigned char *output, size_t len, size_t *olen );
00093 #endif
00094
00095 #if defined(MBEDTLS_ENTROPY_NV_SEED)
00096
00101 int mbedtls_nv_seed_poll( void *data,
00102 unsigned char *output, size_t len, size_t *olen );
00103 #endif
00104
00105 #ifdef __cplusplus
00106 }
00107 #endif
00108
00109 #endif