summaryrefslogtreecommitdiffstats
path: root/crypto/engine/eng_rdrand.c
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2011-08-11 21:12:17 +0000
committerDr. Stephen Henson <steve@openssl.org>2011-08-11 21:12:17 +0000
commit19ad3457391c9e398889c6e0858d3fda403ffdd2 (patch)
treea338eaaf90ebd52651ad40dff90dd23c5804c7eb /crypto/engine/eng_rdrand.c
parent513e28c0a41b4d38091e500ec26fe917ce42f2ad (diff)
prevent compilation errors and warnings
Diffstat (limited to 'crypto/engine/eng_rdrand.c')
-rw-r--r--crypto/engine/eng_rdrand.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/crypto/engine/eng_rdrand.c b/crypto/engine/eng_rdrand.c
index 26507c56a6..266e1a192d 100644
--- a/crypto/engine/eng_rdrand.c
+++ b/crypto/engine/eng_rdrand.c
@@ -52,6 +52,8 @@
#include <stdio.h>
#include <string.h>
#include <openssl/engine.h>
+#include <openssl/rand.h>
+#include <openssl/err.h>
#if (defined(__i386) || defined(__i386__) || defined(_M_IX86) || \
defined(__x86_64) || defined(__x86_64__) || \
@@ -59,11 +61,11 @@
size_t OPENSSL_ia32_rdrand(void);
-static int get_random_bytes (unsigned char *buf, size_t num)
+static int get_random_bytes (unsigned char *buf, int num)
{
size_t rnd;
- while (num>=sizeof(size_t)) {
+ while (num>=(int)sizeof(size_t)) {
if ((rnd = OPENSSL_ia32_rdrand()) == 0) return 0;
*((size_t *)buf) = rnd;
@@ -124,7 +126,7 @@ static ENGINE *ENGINE_rdrand(void)
void ENGINE_load_rdrand (void)
{
- extern OPENSSL_ia32cap_P[];
+ extern unsigned int OPENSSL_ia32cap_P[];
if (OPENSSL_ia32cap_P[1] & (1<<(62-32)))
{