1OpenSSL - Port To The Macintosh OS 9 or Earlier
2===============================================
3
4Thanks to Roy Wood <roy@centricsystems.ca> initial support for Mac OS (pre
5X) is now provided. "Initial" means that unlike other platforms where you
6get an SDK and a "swiss army" openssl application, on Macintosh you only
7get one sample application which fetches a page over HTTPS(*) and dumps it
8in a window. We don't even build the test applications so that we can't
9guarantee that all algorithms are operational.
10
11Required software:
12
13- StuffIt Expander 5.5 or later, alternatively MacGzip and SUNtar;
14- Scriptable Finder;
15- CodeWarrior Pro 5;
16
17Installation procedure:
18
19- fetch the source at ftp://ftp.openssl.org/ (well, you probably already
20  did, huh?)
21- unpack the .tar.gz file:
22	- if you have StuffIt Expander then just drag it over it;
23	- otherwise uncompress it with MacGzip and then unpack with SUNtar;
24- locate MacOS folder in OpenSSL source tree and open it;
25- unbinhex mklinks.as.hqx and OpenSSL.mcp.hqx if present (**), do it
26  "in-place", i.e. unpacked files should end-up in the very same folder;
27- execute mklinks.as;
28- open OpenSSL.mcp(***) and build 'GetHTTPS PPC' target(****);
29- that's it for now;
30
31(*)	URL is hardcoded into ./MacOS/GetHTTPS.src/GetHTTPS.cpp, lines 40
32        to 42, change appropriately.
33(**)	If you use SUNtar, then it might have already unbinhexed the files
34	in question.
35(***)	The project file was saved with CW Pro 5.3. If you have an earlier
36	version and it refuses to open it, then download
37	http://www.openssl.org/~appro/OpenSSL.mcp.xml and import it
38	overwriting the original OpenSSL.mcp.
39(****)	Other targets are works in progress. If you feel like giving 'em a
40	shot, then you should know that OpenSSL* and Lib* targets are
41	supposed to be built with the GUSI, MacOS library which mimics
42	BSD sockets and some other POSIX APIs. The GUSI distribution is
43	expected to be found in the same directory as the openssl source tree,
44	i.e., in the parent directory to the one where this very file,
45	namely INSTALL.MacOS, resides. For more information about GUSI, see
46	http://www.iis.ee.ethz.ch/~neeri/macintosh/gusi-qa.html
47
48Finally some essential comments from our generous contributor:-)
49
50"I've gotten OpenSSL working on the Macintosh. It's probably a bit of a
51hack, but it works for what I'm doing. If you don't like the way I've done
52it, then feel free to change what I've done. I freely admit that I've done
53some less-than-ideal things in my port, and if you don't like the way I've
54done something, then feel free to change it-- I won't be offended!
55
56... I've tweaked "bss_sock.c" a little to call routines in a "MacSocket"
57library I wrote. My MacSocket library is a wrapper around OpenTransport,
58handling stuff like endpoint creation, reading, writing, etc. It is not
59designed as a high-performance package such as you'd use in a webserver,
60but is fine for lots of other applications. MacSocket also uses some other
61code libraries I've written to deal with string manipulations and error
62handling. Feel free to use these things in your own code, but give me
63credit and/or send me free stuff in appreciation! :-)
64
65...
66
67If you have any questions, feel free to email me as the following:
68
69roy@centricsystems.ca
70
71-Roy Wood"
72
73