提交 5eb8ca4d 编写于 作者: B Bodo Möller

Use RAND_METHOD for implementing RAND_status.

上级 2d092edf
......@@ -4,6 +4,11 @@
Changes between 0.9.5 and 0.9.6 [XX XXX 2000]
*) Include RAND_status() into RAND_METHOD instead of implementing
it only for md_rand.c Otherwise replacing the PRNG by calling
RAND_set_rand_method would be impossible.
[Bodo Moeller]
*) Don't let DSA_generate_key() enter an infinite loop if the random
number generation fails.
[Bodo Moeller]
......
......@@ -156,6 +156,7 @@ static void ssleay_rand_seed(const void *buf, int num);
static void ssleay_rand_add(const void *buf, int num, double add_entropy);
static int ssleay_rand_bytes(unsigned char *buf, int num);
static int ssleay_rand_pseudo_bytes(unsigned char *buf, int num);
static int ssleay_rand_status(void);
RAND_METHOD rand_ssleay_meth={
ssleay_rand_seed,
......@@ -163,6 +164,7 @@ RAND_METHOD rand_ssleay_meth={
ssleay_rand_cleanup,
ssleay_rand_add,
ssleay_rand_pseudo_bytes,
ssleay_rand_status
};
RAND_METHOD *RAND_SSLeay(void)
......@@ -502,7 +504,7 @@ static int ssleay_rand_pseudo_bytes(unsigned char *buf, int num)
return (ret);
}
int RAND_status(void)
static int ssleay_rand_status(void)
{
if (!initialized)
ssleay_rand_initialize();
......
......@@ -70,6 +70,7 @@ typedef struct rand_meth_st
void (*cleanup)(void);
void (*add)(const void *buf, int num, double entropy);
int (*pseudorand)(unsigned char *buf, int num);
int (*status)(void);
} RAND_METHOD;
#ifdef BN_DEBUG
......
......@@ -108,3 +108,10 @@ int RAND_pseudo_bytes(unsigned char *buf, int num)
return rand_meth->pseudorand(buf,num);
return(-1);
}
int RAND_status(void)
{
if (rand_meth != NULL)
return rand_meth->status();
return 0;
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册