summaryrefslogtreecommitdiffstats
path: root/src/mac/ReadMe
blob: 8e36889b98ba9713277ff7d842f22dd5e0b87086 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
Building the Macintosh version of Kerberos 5 and GSS
----------------------------------------------------

(Last updated $Date$)

If you have questions or comments about the Macintosh build process,
send e-mail to <macdev@mit.edu> .


To build the Macintosh version of Kerberos 5 and GSS:

--- Installing tools ---

	1) Install CodeWarrior Pro 2, including MPW.

	2) Download MacPerl and MacPerl MPW tool from
	
	   <ftp://sunsite.cnlab-switch.ch/software/platform/macos/perl/>
	   
	   The MacPerl directory contains several versions of the app and the MPW
	   tool.  The *_appl and *_tool versions work properly with our scripts, e.g.,
	   you should download "Mac_Perl_520r4_appl.bin" and "Mac_Perl_520r4_tool.bin".

	3) Install MacPerl and MacPerl MPW tool (by following the installation 
	   instructions provided with them).

--- Preparing Kerberos v5 build tree ---

	4) Launch MPW.

	5) Set directory in MPW to the top level of Kerberos 5 distribution
	   (e.g. "GSS-Kerberos5-1.0.5").

	6) Execute "perl :mac:macfile_gen.pl" in MPW.

	7) Build target "create-directories" in MPW.
	
	8) Open the projects in "[kerb5 src]:mac:libraries:Metrowerks:CW Pro 2:"
	   in your CW Pro 2 IDE (the projects will not work correctly with CW Pro 3),
	   and build them.
	
	   IMPORTANT: You must build the Runtime libraries *before* building
	   the C libraries.
	
	   You will see some link warnings.  These are normal and can be ignored.
	    
--- Building libraries ---

	9) Build target "all" in MPW. Wait.
	
	   Example build times: 30-40 minutes on a G3 machine, 80 minutes
	   on a PowerMac 9600/233.
	   
	   You may receive some compile warnings about an ignored pragma, and some
	   link warnings.  These are normal and can be ignored.
	   
	   On certain machines we have experienced an MPW crash during the link stage
	   of the build.  If this happens to you, you should restart MPW and start
	   the build again.  We are investigating the causes of this. 

--- Building the Cygnus Network Security Application ---

	10) Open the project file "[kerb5 src]:mac:kconfig:kconfig.prj" in the
	    CodeWarrior Pro 2 IDE.

	11) Select "Make" from the "Project" menu.

--- Binaries ---

	The following assumes that you have followed the steps above to build
	the GSS & Kerberos 5 libraries.  What you now have supports both the
	Kerberos 5 and GSS APIs.  Each is supported as both CFM shared libraries
	and CodeWarrior static link libraries for both 68k & PowerPC Macs.
	We strongly recommend you use the CFM shared libraries.
	
	The following binary components are provided/built in this release:

       :GSSLib
       * Fat CFM Shared Library including both GSS and Kerberos 5 libraries.
       * Not for linking against in your projects; include in distributions to
         be placed in System Folder:Extensions.
       
       :GSSLibrary68K
       * CFM Shared Library including GSS for 68k Macs.
       
       :GSSLibraryPPC
       * CFM Shared Library including GSS for PowerPC Macs.
       
       :K5Library68K
       * CFM Shared Library including Kerberos 5 for 68k Macs.
       
       :K5LibraryPPC
       * CFM Shared Library including Kerberos 5 for PowerPC Macs.
       
       :libgss.68K
       * Static CodeWarrior library including GSS for 68k Macs
       
       :libgss.PPC
       * Static CodeWarrior library including GSS for PowerPC Macs
       
       :libkrb5.68K
       * Static CodeWarrior library including Kerberos 5 for 68k Macs
       
       :libkrb5.PPC
       * Static CodeWarrior library including Kerberos 5 for PowerPC Macs

	   :mac:kconfig:CNS Config
	   * Kerberos 5 Ticket Manager (aka Cygnus Network Security Configuration) application
	    
	   :mac:krb5.ini
	   * Sample krb5.ini file using CYGNUS.COM as the default realm
	     
	   :include
	   * An include directory containing the files necessary for development

--- Installation ---

	 To install the Kerberos 5 system on your Mac:

	   1) Copy the :mac:krb5.ini file (configured for your site) into
	      the "Preferences" folder in the "System Folder".
	   
	   2) Install the shared libraries by copying the  "GSSLib" file
	      to the "Extensions" folder in the "System Folder".
	   
	   3) If you are using System 7.6 or earlier on a 68K Mac, install
	      the CFM-68K Runtime Enabler 4.0, available from Apple at:
	      
	      <ftp://ftp.info.apple.com/Apple_Support_Area/Apple_Software_Updates/US/Macintosh/System/CFM-68K/>
	      
	   4) Put the "CNS Config" application in a handy location.


--- Getting Started Programming ---

	You can program using either the Kerberos 5 or GSS APIs. (Currently the
	GSS Library depends on the krb5 library; this means you will have to 
	link against both if you are using static libraries.)

	To add Kerberos functionality to a Code Warrior based application:
	
	   1) PPC application: use shared libraries:
	   		For GSSAPI, add GSSLibraryPPC to your project
	   		For Kerberos v5 API, add K5LibraryPPC to your project
			Set the project options to 4 byte integers and enums treated as ints.

	   2) CFM-68K application: use shared libraries
	   		For GSSAPI, add GSSLibrary68K to your project
	   		For Kerberos v5 API, add K5Library68K to your project
			Set the project options to 4 byte integers and enums treated as ints.

	   3) Classic 68K application: use glue for shared libraries
	   		For GSSAPI, add GSS.CFMglue.c to your project
	   		For Kerberos v5 API, add K5.CFMglue.c to your project
			Set the project options to 4 byte integers and enums treated as ints.

    A PDF document describing the Kerberos 5 API is located at:
    
      <http://web.mit.edu/macdev/mit/doc/pdf/krb5api.pdf>
    
    (This document was created from tex files in the main krb5 source tree.)
    
    The GSSAPI is described in Internet RFC's 1508 and 1509:
    
      <http://info.internet.isi.edu/in-notes/rfc/files/rfc1508.txt>
      <http://info.internet.isi.edu/in-notes/rfc/files/rfc1509.txt>