The Java programs have only been tested on Windows 2000 using the JDK1.4 Standard Edition as downloaded from Sun's web site. I've no reason to believe they won't work on other 1.4 implementations.
Note though that the programs depend on functionality introduced in 1.4, and while it may be possible to make them work using an earlier JDK with the JSSE classes that are separately available from Sun, this has not been tested.
Building the Java code is simple, use:
> javac ExampleSSLClient.java > javac ExampleSSLServer.java
Neither program has any package identification, and neither requires any classes other than those that are included in the JFC. So after compiling them you'll just see some ".class" files turning up in your current directory.
For VMS, the environment I used was:
$ define openssl {the directory containing openssl header files} $ cc/pointer=64 ExampleSSLClient.c $ cc/pointer=64 ExampleSSLServer.c $ link ExampleSSLClient,ssl.opt/opt $ link ExampleSSLServer,ssl.opt/optwhere "ssl.opt" contains:
ssl$libcrypto_shr/sha ssl$libssl_shr/sha
For Tru64 UNIX, the environment I used was:
csh> cc -I/usr/users/hudson/openssl/include -c -o ExampleSSLClient.o ExampleSSLClient.c csh> cc -I/usr/users/hudson/openssl/include -c -o ExampleSSLServer.o ExampleSSLServer.c csh> cc -o ExampleSSLClient ExampleSSLClient.o /usr/users/hudson/openssl/libssl.a /usr/users/hudson/openssl/libcrypto.a csh> cc -o ExampleSSLServer ExampleSSLServer.o /usr/users/hudson/openssl/libssl.a /usr/users/hudson/openssl/libcrypto.a