Commit 47c1735a authored by Richard Levitte's avatar Richard Levitte
Browse files

NetWare fixes provided by Verdon Walker for OpenSSL 0.9.8-dev.

The changes have been mailed to <crypt@bis.doc.gov> as well.

PR: 903
parent 7d3932e8
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -529,6 +529,7 @@ my %table=(
"netware-clib", "mwccnlm:::::${x86_gcc_opts}:::",
# netware-libc => LibC/NKS support
"netware-libc", "mwccnlm:::::BN_LLONG ${x86_gcc_opts}:::",
"netware-libc-gcc", "i586-netware-gcc:-nostdinc -I/ndk/libc/include -I/ndk/libc/include/winsock -DL_ENDIAN -DNETWARE_LIBC -DOPENSSL_SYSNAME_NETWARE -DTERMIO -O2 -Wall::::${x86_gcc_opts}:::",

# DJGPP
"DJGPP", "gcc:-I/dev/env/WATT_ROOT/inc -DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O2 -Wall:::MSDOS:-L/dev/env/WATT_ROOT/lib -lwatt:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::",
+31 −32
Original line number Diff line number Diff line
@@ -149,13 +149,11 @@ environment variables:
            LibC ex: set MWCIncludes=c:\ndk\libc\include

   PRELUDE - The absolute path of the prelude object to link with.  For
			a CLIB build it is recommended you use the "nwpre.obj" file shipped
            a CLIB build it is recommended you use the "clibpre.o" files shipped
            with the Metrowerks PDK for NetWare.  For a LibC build you should 
            use the "libcpre.o" file delivered with the LibC NDK components.

			CLIB ex: set PRELUDE=c:\codewar\novell support\metrowerks support\
                               libraries\runtime\nwpre.obj
										 
            CLIB ex: set PRELUDE=c:\ndk\nwsdk\imports\clibpre.o
            LibC ex: set PRELUDE=c:\ndk\libc\imports\libcpre.o

   IMPORTS - The locaton of the NDK import files.
@@ -435,3 +433,4 @@ the import files. The issues should be fixed in the September 2001 release
of the NDK.  If you experience the problems you can temporarily
work around it by manually adding the missing symbols to your version of 
"clib.imp".
+3 −3
Original line number Diff line number Diff line
@@ -60,10 +60,10 @@ if "%LIBC_BUILD%" == "Y" set IMPORTS=%TOOLS%\ndk\libc\imports
if "%CLIB_BUILD%" == "Y" set IMPORTS=%TOOLS%\ndk\nwsdk\imports

rem   Set PRELUDE to the absolute path of the prelude object to link with in
rem   the Metrowerks NetWare PDK - NOTE: for Clib builds "nwpre.obj" is 
rem   the Metrowerks NetWare PDK - NOTE: for Clib builds "clibpre.o" is 
rem   recommended, for LibC NKS builds libcpre.o must be used
if "%LIBC_BUILD%" == "Y" set PRELUDE=%TOOLS%\ndk\libc\imports\libcpre.o
if "%CLIB_BUILD%" == "Y" set PRELUDE=%TOOLS%\codewar\pdk_21\novell support\metrowerks support\libraries\runtime\nwpre.obj
if "%LIBC_BUILD%" == "Y" set PRELUDE=%IMPORTS%\libcpre.o
if "%CLIB_BUILD%" == "Y" set PRELUDE=%IMPORTS%\clibpre.o


if "%LIBC_BUILD%" == "Y" echo Enviroment configured for LibC build
+10 −0
Original line number Diff line number Diff line
@@ -690,6 +690,16 @@ re_start:
				} else 	i=select(width,(void *)&readfds,(void *)&writefds,
					 NULL,NULL);
			}
#elif defined(OPENSSL_SYS_NETWARE)
			if(!write_tty) {
				if(read_tty) {
					tv.tv_sec = 1;
					tv.tv_usec = 0;
					i=select(width,(void *)&readfds,(void *)&writefds,
						NULL,&tv);
				} else 	i=select(width,(void *)&readfds,(void *)&writefds,
					NULL,NULL);
			}
#else
			i=select(width,(void *)&readfds,(void *)&writefds,
				 NULL,NULL);
+8 −3
Original line number Diff line number Diff line
/* crypto/rand/rand_win.c */
/* crypto/rand/rand_nw.c */
/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
 * All rights reserved.
 *
@@ -116,7 +116,7 @@
#if defined (OPENSSL_SYS_NETWARE)

#if defined(NETWARE_LIBC)
#include <nks\thread.h>
#include <nks/thread.h>
#endif

extern long RunningProcess;
@@ -147,11 +147,16 @@ int RAND_poll(void)

   for( i=2; i<ENTROPY_NEEDED; i++)
   {
#ifdef __MWERKS__
      asm 
      {
         rdtsc
         mov tsc, eax        
      }
#else
      asm volatile("rdtsc":"=A" (tsc));
#endif

      RAND_add(&tsc, sizeof(tsc), 1);

      l = GetSuperHighResolutionTimer();
Loading