提交 f2b86c95 编写于 作者: U Ulf Möller

minor change for the prng

上级 11afb40c
......@@ -360,15 +360,13 @@ static int ssleay_rand_bytes(unsigned char *buf, int num)
*/
if ((fh = fopen(DEVRANDOM, "r")) != NULL)
{
unsigned char tmpbuf[32];
unsigned char tmpbuf[ENTROPY_NEEDED];
int i;
fread((unsigned char *)tmpbuf,1,32,fh);
/* we don't care how many bytes we read,
* we will just copy the 'stack' if there is
* nothing else :-) */
i=fread((unsigned char *)tmpbuf,1,ENTROPY_NEEDED,fh);
fclose(fh);
RAND_seed(tmpbuf,32);
memset(tmpbuf,0,32);
RAND_seed(tmpbuf,i);
memset(tmpbuf,0,i);
}
#endif
#ifdef PURIFY
......
......@@ -279,7 +279,8 @@ int RSA_ref_public_encrypt(int len, unsigned char *from, unsigned char *to,
R_GetRandomBytesNeeded((unsigned int *)&i,&rnd);
while (i > 0)
{
RAND_bytes(buf,16);
if (RAND_bytes(buf,16) <= 0)
goto err;
R_RandomUpdate(&rnd,buf,(unsigned int)((i>16)?16:i));
i-=16;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册