summaryrefslogtreecommitdiffstats
path: root/INSTALL.W32
diff options
context:
space:
mode:
authorRalf S. Engelschall <rse@openssl.org>1998-12-22 15:04:48 +0000
committerRalf S. Engelschall <rse@openssl.org>1998-12-22 15:04:48 +0000
commit651d0aff98d28e2db146afa1790e9e22f3ef22db (patch)
tree064b04a2d7eddda845048c0278df8bbb068622f5 /INSTALL.W32
parent31b8d8684441e6cd5138832bb1b2ddb10acd6ba6 (diff)
Various cleanups and fixed by Marc and Ralf to start the OpenTLS project
Diffstat (limited to 'INSTALL.W32')
-rw-r--r--INSTALL.W32146
1 files changed, 146 insertions, 0 deletions
diff --git a/INSTALL.W32 b/INSTALL.W32
new file mode 100644
index 0000000000..54176f0472
--- /dev/null
+++ b/INSTALL.W32
@@ -0,0 +1,146 @@
+The Microsoft World.
+
+The good news, to build SSLeay for the Microsft World
+
+Windows 3.1 DLL's
+perl Configure VC-WIN16
+nmake -f ms\w31dll.mak
+
+Windows NT/95 DLL's
+perl Configure VC-WIN32
+nmake -f ms\ntdll.mak
+
+Now the bad news
+All builds were done using Microsofts Visual C++ 1.52c and [45].x.
+If you are a borland person, you are probably going to have to help me
+finish the stuff in util/pl/BC*pl
+
+All builds were made under Windows NT - this means long filenames, so
+you may have problems under Windows 3.1 but probably not under 95.
+
+Because file pointers don't work in DLL's under Windows 3.1 (well at
+least stdin/stdout don't and I don't like having to differentiate
+between these and other file pointers), I now use the BIO file-pointer
+module, which needs to be linked into your application. You can either
+use the memory buffer BIO for IO, or compile bss_file.c into your
+application, it is in the apps directory and is just a copy of
+crypto/buffer/bss_file.c with #define APPS_WIN16 added.
+I have not yet automated the makefile to automatically copy it into 'out'
+for a win 3.1 build....
+
+All callbacks passed into SSLeay for Windows 3.1 need to be of type
+_far _loadds.
+
+I don't support building with the pascal calling convention.
+
+The DLL and static builds are large memory model.
+
+To build static libraries for NT/95 or win 3.1
+
+perl util/mk1mf.pl VC-WIN32 > mf-stat.nt
+perl util/mk1mf.pl VC-WIN16 > mf-stat.w31
+for DLL's
+perl util/mk1mf.pl dll VC-WIN32 > mf-dll.nt
+perl util/mk1mf.pl dll VC-WIN16 > mf-dll.w31
+
+Again you will notice that if you dont have perl, you cannot do this.
+
+Now the next importaint issue. Running Configure!
+I have small assember code files for critical big number library operation
+in crypto/bn/asm. There is, asm code, object files and uuencode
+object files. They are
+x86nt32.asm - 32bit flat memory model assember - suitable Win32
+x86w16.asm - 16bit assember - used in the msdos build.
+x86w32.asm - 32bit assember, win 3.1 segments, used for win16 build.
+
+If you feel compelled to build the 16bit maths routines in the windows 3.1
+build,
+perl Configure VC-W31-16
+perl util/mk1mf.pl dll VC-W31-16 > mf-dll.w31
+
+If you hate assember and don't want anything to do with it,
+perl util/mk1mf.pl no-asm VC-WIN16 > mf-dll.w31
+will work for any of the makefile generations.
+
+There are more options to mk1mf.pl but these all leave the temporary
+files in 'tmp' and the output files in 'out' by default.
+
+The NT build is done for console mode.
+
+The Windows 3.1 version of SSLeay uses quickwin, the interface is ugly
+but it is better than nothing. If you want ugly, try doing anything
+that involves getting a password. I decided to be ugly instead of
+echoing characters. For Windows 3.1 I would just sugest using the
+msdos version of the ssleay application for command line work.
+The QuickWin build is primarily for testing.
+
+For both NT and Windows 3.1, I have not written the code so that
+s_client, s_server can take input from the keyboard. You can happily
+start applications up in separate windows, watch them handshake, and then sit
+there for-ever. I have not had the time to get this working, and I've
+been able to test things from a unix box to the NT box :-).
+Try running ssleay s_server on the windows box
+(with either -cert ../apps/server.pem -www)
+and run ssleay s_time from another window.
+This often stuffs up on Windows 3.1, but I'm not worried since this is
+probably a problem with my demo applications, not the libraries.
+
+After a build of one of the version of microsoft SSLeay,
+'cd ms' and then run 'test'. This should check everything out and
+even does a trial run of generating certificates.
+'test.bat' requires that perl be install, you be in the ms directory
+(not the test directory, thats for unix so stay out :-) and that the
+build output directory be ../out
+
+On a last note, you will probably get division by zero errors and
+stuff after a build. This is due to your own inability to follow
+instructions :-).
+
+The reasons for the problem is probably one of the following.
+
+1) You did not run Configure. This is critical for windows 3.1 when
+ using assember. The values in crypto/bn/bn.h must match the
+ ones requred for the assember code. (remember that if you
+ edit crypto/bn/bn.h by hand, it will be clobered the next time
+ you run Configure by the contents of crypto/bn/bn.org).
+ SSLeay version -o will list the compile options.
+ For VC-WIN32 you need bn(64,32) or bn(32,32)
+ For VC-W31-32/VC-WIN16 you need bn(32,32)
+ For VC-W31-16 you need bn(32,16) or bn(16,16)
+ For VC-MSDOS you need bn(32,16) or bn(16,16).
+
+ The first number will be 2 times bigger than the second if
+ BN_LLONG is defined in bn.h and the size of the second number
+ depends on the 'bits' defined at the start of bn.h. Have a
+ look, it's all reasonably clear.
+ If you want to start messing with 8 bit builds and things like
+ that, build without the assember by re-generating a makefile
+ via 'perl util/mk1mf.pl no-asm'.
+2) You tried to build under MS-DOS or Windows 3.1 using the /G3
+ option. Don't. It is buggy (thats why you just got that
+ error) and unless you want to work out which optimising flag
+ to turn off, I'm not going to help you :-). I also noticed
+ that code often ran slower when compiled with /G3.
+3) Under NT/95, malloc goes stupid. You are probably linking with
+ the wrong library, there are problems if you mix the threaded
+ and non-threaded libraries (due to the DLL being staticly
+ linked with one and the applicaion using another.
+
+Well hopefully thats most of the MS issues handled, see you in ssl-users :-).
+
+eric 30-Aug-1996
+
+SSLeay 0.6.5
+For Windows 95/NT, add CRYPTO_malloc_init() to your program before any
+calls to the SSLeay libraries. This function will insert callbacks so that
+the SSLeay libraries will use the same malloc(), free() and realloc() as
+your application so 'problem 3)' mentioned above will go away.
+
+There is now DES assember for Windows NT/95. The file is
+crypto/des/asm/win32.asm and replaces crypto/des/des_enc.c in the build.
+
+There is also Blowfish assember for Windows NT/95. The file is
+crypto/bf/asm/win32.asm and replaces crypto/bf/bf_enc.c in the build.
+
+eric 25-Jun-1997
+