summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2009-04-22 16:21:20 +0000
committerDr. Stephen Henson <steve@openssl.org>2009-04-22 16:21:20 +0000
commit346b1001eb239a122e955ece3a44ad38c4a78898 (patch)
tree2128af736e101932643a94a592eb8281d96cbd3e
parentb61a84c8e6ab217b0700ce6d95e6b4138762e921 (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).
-rwxr-xr-xConfigure2
-rw-r--r--crypto/rand/rand_os2.c6
2 files changed, 7 insertions, 1 deletions
diff --git a/Configure b/Configure
index 8f9f2ded4a..e651475019 100755
--- a/Configure
+++ b/Configure
@@ -573,7 +573,7 @@ my %table=(
my @MK1MF_Builds=qw(VC-WIN64I VC-WIN64A
VC-NT VC-CE VC-WIN32
- BC-32 OS2-EMX
+ BC-32
netware-clib netware-clib-bsdsock
netware-libc netware-libc-bsdsock);
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
}
}