diff options
author | Dr. Stephen Henson <steve@openssl.org> | 2009-04-22 16:21:20 +0000 |
---|---|---|
committer | Dr. Stephen Henson <steve@openssl.org> | 2009-04-22 16:21:20 +0000 |
commit | 346b1001eb239a122e955ece3a44ad38c4a78898 (patch) | |
tree | 2128af736e101932643a94a592eb8281d96cbd3e /crypto/rand | |
parent | b61a84c8e6ab217b0700ce6d95e6b4138762e921 (diff) |
PR: 1903
Submitted by: "Paul Smedley" <pauldespam@despamsmedley.id.au>
Approved by: steve@openssl.org
OS/2 fixes (excludes Makefile.shared patch for now).
Diffstat (limited to 'crypto/rand')
-rw-r--r-- | crypto/rand/rand_os2.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/crypto/rand/rand_os2.c b/crypto/rand/rand_os2.c index c3e36d4e5e..fc1e78b179 100644 --- a/crypto/rand/rand_os2.c +++ b/crypto/rand/rand_os2.c @@ -78,8 +78,10 @@ typedef struct _CPUUTIL { ULONG ulIntrHigh; /* High 32 bits of interrupt time */ } CPUUTIL; +#ifndef __KLIBC__ APIRET APIENTRY(*DosPerfSysCall) (ULONG ulCommand, ULONG ulParm1, ULONG ulParm2, ULONG ulParm3) = NULL; APIRET APIENTRY(*DosQuerySysState) (ULONG func, ULONG arg1, ULONG pid, ULONG _res_, PVOID buf, ULONG bufsz) = NULL; +#endif HMODULE hDoscalls = 0; int RAND_poll(void) @@ -91,6 +93,7 @@ int RAND_poll(void) if (hDoscalls == 0) { ULONG rc = DosLoadModule(failed_module, sizeof(failed_module), "DOSCALLS", &hDoscalls); +#ifndef __KLIBC__ if (rc == 0) { rc = DosQueryProcAddr(hDoscalls, 976, NULL, (PFN *)&DosPerfSysCall); @@ -102,6 +105,7 @@ int RAND_poll(void) if (rc) DosQuerySysState = NULL; } +#endif } /* Sample the hi-res timer, runs at around 1.1 MHz */ @@ -122,7 +126,9 @@ int RAND_poll(void) RAND_add(&util, sizeof(util), 10); } else { +#ifndef __KLIBC__ DosPerfSysCall = NULL; +#endif } } |