If you're not using SSleay on WinNT - no need to read further.

I've put out at http://www.opengroup.org/~agray/dev/ two  Winzip files that contain 
Workspace and corresonding project files for SSLeay-0.9.0 and also  0.8.1.  

Andrew Gray
The Open Group Research Institute


The README:

4/19/98 1515GMT

Developer Studio Workspace and Project files for SSLeay-0.9.0 (and 0.8.1)


Installation:
1. Extract SSLeay-0.9.0.tar.gz (or 0.8.1.tar.gz) as you normally would.

2. Extract VCSSLeay.zip from the same location targetting the same 
directory.  This will create another directory named "msvc" at the top 
of the SSLeay directory tree.  CD into that directory and double click 
on the vcssleay.dsw file.  This will open up a Microsoft Developer Studio 
Workspace containing 49 projects.  Dependancies are built into the 
workspace - i.e. libeay32.dll will be built automatically before asn1parse.
Executables are built independently and ssleay.exe is not built ( see below).

3. Open a command prompt and run "perl Configure VC-WIN32" as per the 
instructions in the $SSLeay-0.9.0_ROOT/MICROSOFT file.

4. Set your active configuration for each project to debug.  It's best 
to do a "batch build" first.  Click on the debug version of each project 
by marking each project's build setting as debug in Menu:Build/Batch Build... 
There is no need to copy header files around.  Have a look through the 
project settings tabs to see how the resolution is done.  You might also 
want to go there if you want the browse info files built for function browsing.

Things that typically cause errors:

1.Make sure that ALL Microsoft SDKs are removed from your default include path in 
Menu:Tools/Options/Directories.  The Only path that I have in mine is 
c:\Program Files\DevStudio\VC\INCLUDE

2.Not Running configure in step 3.

What is implemented:

D:\SSLeay-0.9.0\msvc>ls -l
    D:\SSLeay-0.9.0\msvc\*.*
d----         0 Sat Apr 18 10:07:26 1998 [asn1parse]
d----         0 Sat Apr 18 10:07:26 1998 [bftest]
d----         0 Sat Apr 18 10:07:26 1998 [bntest]
d----         0 Sat Apr 18 10:07:26 1998 [ca]
d----         0 Sat Apr 18 10:07:27 1998 [casttest]
d----         0 Sat Apr 18 10:07:27 1998 [ciphers]
d----         0 Sat Apr 18 10:07:28 1998 [crl2pkcs7]
d----         0 Sat Apr 18 10:07:27 1998 [crl]
d----         0 Sat Apr 18 10:07:28 1998 [destest]
d----         0 Sat Apr 18 10:07:28 1998 [dgst]
d----         0 Sat Apr 18 10:07:28 1998 [dh]
d----         0 Sat Apr 18 10:07:29 1998 [dhtest]
d----         0 Sat Apr 18 10:07:29 1998 [dsa]
d----         0 Sat Apr 18 10:07:29 1998 [dsaparam]
d----         0 Sat Apr 18 10:07:30 1998 [dsatest]
d----         0 Sat Apr 18 10:07:30 1998 [enc]
d----         0 Sat Apr 18 10:07:30 1998 [errstr]
d----         0 Sat Apr 18 10:07:31 1998 [exptest]
d----         0 Sat Apr 18 10:07:31 1998 [gendh]
d----         0 Sat Apr 18 10:07:31 1998 [gendsa]
d----         0 Sat Apr 18 10:07:31 1998 [genrsa]
d----         0 Sat Apr 18 12:26:19 1998 [hmactest]
d----         0 Sat Apr 18 10:07:32 1998 [ideatest]
d----         0 Sat Apr 18 10:07:34 1998 [libeay32]
d----         0 Sat Apr 18 12:26:19 1998 [md2]
d----         0 Sat Apr 18 10:07:34 1998 [md2test]
d----         0 Sat Apr 18 12:26:19 1998 [md5]
d----         0 Sat Apr 18 10:07:35 1998 [md5test]
d----         0 Sat Apr 18 10:07:35 1998 [mdc2test]
d----         0 Sat Apr 18 10:07:35 1998 [pkcs7]
d----         0 Sat Apr 18 10:07:36 1998 [randtest]
d----         0 Sat Apr 18 10:07:36 1998 [rc2test]
d----         0 Sat Apr 18 10:07:36 1998 [rc4test]
d----         0 Sat Apr 18 10:07:37 1998 [req]
d----         0 Sat Apr 18 10:07:37 1998 [rsa]
d----         0 Sat Apr 18 10:07:37 1998 [s_client]
d----         0 Sat Apr 18 10:07:38 1998 [s_server]
d----         0 Sat Apr 18 10:07:38 1998 [s_time]
d----         0 Sat Apr 18 10:07:38 1998 [sess_id]
d----         0 Sat Apr 18 12:26:18 1998 [sha1]
d----         0 Sat Apr 18 10:07:39 1998 [sha1test]
d----         0 Sat Apr 18 10:07:39 1998 [sha]
d----         0 Sat Apr 18 10:07:40 1998 [shatest]
d----         0 Sat Apr 18 10:07:40 1998 [speed]
d----         0 Sat Apr 18 10:07:25 1998 [ssleay32]
d----         0 Sat Apr 18 10:07:40 1998 [ssltest]
d----         0 Sat Apr 18 10:07:41 1998 [verify]
d----         0 Sat Apr 18 10:07:41 1998 [version]
d----         0 Sat Apr 18 10:07:42 1998 [x509]
--a--     16535 Sat Apr 18 10:07:42 1998 VCSSLeay.dsw

Other things:

This has been built using NT4 sp3, VC++ 5 with patch3

The default c runtime for all debug workspaces is Debug Multithreaded dll. For 
the Release build it is Multithreaded dll.  If you change it - What ever you 
do don't mix it across projects - that is make sure its consistent across everything...

I dump everything into SSLeay_root/out for the debug build.  It goes into 
SSLeay_root/Release for the release build. If either directory doesn't exist, it 
will be created on the first build.  This can be changed in the Project Settings tab.

In a cursory run through - all the tests listed above succeed.  You'll have to twiddle 
the default ssleay.cnf file for testing for stuff like req, ca , etc, but they all 
seem to work.

For the debug build, I've added WIN32_LEAN_AND_MEAN to all debug project settings 
except for a couple smaller ones (eg. crl2pkcs7) where _fmode is needed (stdlib.h) in 
order to speed things up.  Additionally NOCRYPT is defined for everything to prevent 
the inclusion of wincrypt.h.  Take a look through windows.h to see what else you can 
get rid of.  This speeds up the debug build which for me on a 100mhz 96 mb RAM machine 
takes 15 minutes including full debug and browse info for the entire 49 projects.  
There are some known problems with  some of the browse info generation in some of the 
projects - primarily the executables that need apps.c, but all of the executables' 
builds succeed.

I've left the precompiled header flags on - even though they consistently get 
regenerated, it does tend to speed things up (I think).

Very few of the actual encryption executables are included as projects - i.e. the 
des-ede3 executable since i've never really figured out how to build the ssleay 
monolith executable in a developer studio environment (conflicting mains) so if you 
do know, let me know.  But no matter, enc.exe is included ( and has been thoroughly 
tested).

I think I've removed all of the references to aspects of the library that I've done 
on my own, but if you find remnants,  let me know - ldap, berkeleydb, and any 
EC_ (eliptic curve) stuff.

Things left to do:

1. Figure out how to do the ssleay executable.
2. Assembler routines for crypto stuff inside dev studio - (I need to upgrade MASM)
3. Fix browse info problems due to inclusion of apps.c in several executables.
4. RSAREF glue stuff - Ive never really had a need since most of what I'm doing is
   either edh_dss or elliptic curve based.

Why I did this:

I originally did this to make debugging some netscape web server api client 
certificate parsing modules easier before they really provided a documented api or 
even an entry point.  I had really only a need for libeay (crypt32.dll in the 
0.6.x days) so that's all I did.  Then I was faced with exporting a subset of the 
win NT library (066) consisting only of the asn1 and x509 routines to France and 
needed to rip all references to cryptographic routines out - this made it 
extremely easy.  Next,  when I was forced to start writing some of my own d2i 
and i2d functions for attribute certificates on NT and actually debugging stuff 
as it comes off the wire I finished it off since I needed s_client and s_server.  
I routinely left a working copy in a directory in afs which was under my public_html 
directory for easy access from off site and as it happened, it was indexed by some 
search engine(s) and I started to get the random note on its use.


Oh yea- this stuff is hereby put into the public domain but if you use it dont forget
that all the source files which it wraps are Erics and Tims:

 * Copyright remains Eric Young's, and as such any Copyright notices in
 * the code are not to be removed.
 * If this package is used in a product, Eric Young should be given attribution
 * as the author of the parts of the library used.
 * This can be in the form of a textual message at program startup or
 * in documentation (online or textual) provided with the package.

 * 4. If you include any Windows specific code (or a derivative thereof) from 
 *    the apps directory (application code) you must include an acknowledgement:
 *    "This product includes software written by Tim Hudson ([EMAIL PROTECTED])"

And if you end up really using it alot, buy me a beer if you ever run into me :-)

For obvious reasons, SSleay code cannot be included.  If you're in the states, help 
change 
this and write your congressman/congresswoman.  Since pro is the opposite of con, 
what's
the opposite of progress???

Andrew W. Gray
The Open Group Research Institute
[EMAIL PROTECTED]

P.S. I dont consider that this falls under any export controls, although that 
may change if Big Brother visits on monday morning.




+-------------------------------------------------------------------------+
| Administrative requests should be sent to [EMAIL PROTECTED] |
| List service provided by Open Software Associates, http://www.osa.com/  |
+-------------------------------------------------------------------------+

Reply via email to