1/*
2 * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
11 * file.
12 *
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23
24#ifndef __RASSCHEMADEFINITIONS_H__
25#define __RASSCHEMADEFINITIONS_H__
26
27
28// File names
29#define	kRASServerPrefsFileName			CFSTR("com.apple.RemoteAccessServers.plist")
30
31/*
32 * Generic Keys
33 */
34#define kRASPropUserDefinedName			kSCPropUserDefinedName			/* CFSTR("UserDefinedName")	CFString */
35#define kRASRemoteAccessServer			CFSTR("RemoteAccessServer")		/* RAS entity for Dynamic Store */
36
37/*
38 * Top level entities
39 */
40#define kRASGlobals						CFSTR("Globals")			/*				CFDictionary */
41#define	kRASActiveServers				CFSTR("ActiveServers")		/* 				CFArray */
42#define kRASServers						CFSTR("Servers")			/*				CFDictionary */
43
44/*
45 * Remote Access Globals Keys
46 */
47#define KRASGlobPSKeyAccount			CFSTR("PSKeyAccount")		/*				CFString */
48
49/*
50 * Remote Access Server Entity Keys
51 */
52#define kRASEntDNS						kSCEntNetDNS				/* CFSTR("DNS") 		CFDictionary */
53#define	kRASEntInterface				kSCEntNetInterface			/* CFSTR("Interface")   CFDictionary */
54#define kRASEntIPv4						kSCEntNetIPv4				/* CFSTR("IPv4")		CFDictionary */
55#define kRASEntIPv6						kSCEntNetIPv6				/* CFSTR("IPv6") 		CFDictionary */
56#define kRASEntL2TP						kSCEntNetL2TP 				/* CFSTR("L2TP") 		CFDictionary */
57#define kRASEntModem					kSCEntNetModem				/* CFSTR("Modem")		CFDictionary */
58#define kRASEntPPP						kSCEntNetPPP				/* CFSTR("PPP")			CFDictionary */
59#define kRASEntPPPoE					kSCEntNetPPPoE				/* CFSTR("PPPoE")		CFDictionary */
60#define kRASEntPPPSerial				kSCEntNetPPPSerial			/* CFSTR("PPPSerial")   CFDictionary */
61#define kRASEntPPTP						kSCEntNetPPTP				/* CFSTR("PPTP")		CFDictionary */
62#define	kRASEntServer					CFSTR("Server")				/*						CFDictionary */
63#define kRASEntDSACL					CFSTR("DSACL")				/*						CFDictionary */
64#define kRASEntRadius					CFSTR("Radius")				/*						CFDictionary */
65#define kRASEntEAP						CFSTR("EAP")				/* CFDictionary - Prefix followed by protocol Number */
66#define kRASEntIPSec					CFSTR("IPSec")				/* CFDictionary */
67
68/*
69 * kRASEntInterface Entity Keys
70 */
71#define kRASPropInterfaceType			kSCPropNetInterfaceType				/* CFSTR("Type")		CFString */
72#define kRASPropInterfaceSubType		kSCPropNetInterfaceSubType			/* CFSTR("SubType")		CFString */
73
74/*
75 * kRASEntDNS Entity Keys
76 */
77#define kRASPropDNSServerAddresses				kSCPropNetDNSServerAddresses		/* CFSTR("ServerAddresses")	CFArray[CFString] */
78#define kRASPropDNSSearchDomains				kSCPropNetDNSSearchDomains			/* CFSTR("SearchDomains")	CFArray[CFString] */
79#define kRASPropDNSOfferedServerAddresses		CFSTR("OfferedServerAddresses")		/*							CFArray[CFString] */
80#define kRASPropDNSOfferedSearchDomains			CFSTR("OfferedSearchDomains")		/*							CFArray[CFString] */
81#define kRASPropDNSOfferedSearchDomainServers	CFSTR("OfferedSearchDomainServers")	/*							CFArray[CFString] */
82
83/*
84 * kRASPropInterfaceType values
85 */
86#define kRASValInterfaceTypePPP                	kSCValNetInterfaceTypePPP        	/* CFSTR("PPP") */
87#define kRASValInterfaceTypeIPSec				CFSTR("IPSec")
88
89/* kRASPropInterfaceSubType values (for PPP) */
90#define kRASValInterfaceSubTypePPPoE           	kSCValNetInterfaceSubTypePPPoE          /* CFSTR("PPPoE") */
91#define kRASValInterfaceSubTypePPPSerial      	kSCValNetInterfaceSubTypePPPSerial      /* CFSTR("PPPSerial") */
92#define kRASValInterfaceSubTypePPTP            	kSCValNetInterfaceSubTypePPTP           /* CFSTR("PPTP") */
93#define kRASValInterfaceSubTypeL2TP            	kSCValNetInterfaceSubTypeL2TP           /* CFSTR("L2TP") */
94
95/*
96 * kRASEntIPv4 Entity Keys
97 */
98#define kRASPropIPv4Addresses        		kSCPropNetIPv4Addresses			/* CFSTR("Addresses") 		CFArray[CFString] */
99#define kRASPropIPv4SubnetMasks     		kSCPropNetIPv4SubnetMasks		/* CFSTR("SubnetMasks")		CFArray[CFString] */
100#define kRASPropIPv4DestAddresses     		kSCPropNetIPv4DestAddresses		/* CFSTR("DestAddresses")	CFArray[CFString] */
101#define kRASPropIPv4DestAddressRanges		CFSTR("DestAddressRanges")		/*							CFArray[CFString] */
102#define kRASPropIPv4RangeSubnetMasks		CFSTR("RangeSubnetMasks")		/*							CFArray[CFString] */
103#define kRASPropIPv4OfferedRouteAddresses	CFSTR("OfferedRouteAddresses")  /*							CFArray[CFString] */
104#define kRASPropIPv4OfferedRouteMasks		CFSTR("OfferedRouteMasks")		/*							CFArray[CFString] */
105#define kRASPropIPv4OfferedRouteTypes		CFSTR("OfferedRouteTypes")		/*							CFArray[CFString] */
106
107/*
108 * kRASPropIPv4OfferedRouteTypes values
109 */
110#define kRASValIPv4OfferedRouteTypesPrivate	CFSTR("Private")
111#define kRASValIPv4OfferedRouteTypesPublic	CFSTR("Public")
112
113/*
114 * kRASEntIPv6 Entity Keys
115 */
116#define kRASPropIPv6Addresses         		kSCPropNetIPv6Addresses 		/* CFSTR("Addresses")		CFArray[CFString] */
117#define kRASPropIPv6DestAddresses    		kSCPropNetIPv6DestAddresses		/* CFSTR("DestAddresses")	CFArray[CFString] */
118
119/*
120 * kRASEntPPP Entity Keys
121 */
122#define kRASPropPPPConnectTime				kSCPropNetPPPConnectTime         	/* CFSTR("ConnectTime")				CFNumber */
123#define kRASPropPPPDisconnectOnIdle			kSCPropNetPPPDisconnectOnIdle		/* CFSTR("DisconnectOnIdle")		CFNumber (0 or 1) */
124#define kRASPropPPPDisconnectOnIdleTimer	kSCPropNetPPPDisconnectOnIdleTimer	/* CFSTR("DisconnectOnIdleTimer") 	CFNumber */
125#define kRASPropPPPDisconnectTime			kSCPropNetPPPDisconnectTime			/* CFSTR("DisconnectTime")			CFNumber */
126#define kRASPropPPPLogfile					kSCPropNetPPPLogfile				/* CFSTR("Logfile")					CFString */
127#define kRASPropPPPPlugins					kSCPropNetPPPPlugins				/* CFSTR("Plugins")					CFArray[CFString] */
128#define kRASPropPPPSessionTimer				kSCPropNetPPPSessionTimer			/* CFSTR("SessionTimer")			CFNumber */
129#define kRASPropPPPUseSessionTimer			kSCPropNetPPPUseSessionTimer		/* CFSTR("UseSessionTimer")			CFNumber (0 or 1) */
130#define kRASPropPPPVerboseLogging			kSCPropNetPPPVerboseLogging			/* CFSTR("VerboseLogging")			CFNumber (0 or 1) */
131#define kRASPropPPPInterceptDHCP			CFSTR("InterceptDHCP")				/*									CFNumber (0 or 1) */
132
133/* Comm */
134#define kRASPropPPPCommRemoteAddress		kSCPropNetPPPCommRemoteAddress		/* CFSTR("CommRemoteAddress")		CFString */
135
136/* PPP Auth Plugins: */
137#define kRASPropPPPAuthenticatorPlugins		CFSTR("AuthenticatorPlugins")		/*									CFArray[CFString] */
138#define kRASPropPPPAuthenticatorACLPlugins	CFSTR("AuthenticatorACLPlugins")	/*									CFArray[CFString] */
139#define kRASPropPPPAuthenticatorEAPPlugins	CFSTR("AuthenticatorEAPPlugins")	/*									CFArray[CFString] */
140
141/* Auth: */
142#define kRASPropPPPAuthPeerName				CFSTR("AuthPeerName")				/*									CFString */
143#define kRASPropPPPAuthenticatorProtocol	CFSTR("AuthenticatorProtocol")  	/*									CFArray[CFString] */
144
145/* kRASPropPPPAuthProtocol values */
146#define kRASValPPPAuthProtocolCHAP			kSCValNetPPPAuthProtocolCHAP     	/* CFSTR("CHAP")					CFString */
147#define kRASValPPPAuthProtocolPAP			kSCValNetPPPAuthProtocolPAP			/* CFSTR("PAP")						CFString */
148#define kRASValPPPAuthProtocolMSCHAP1 		CFSTR("MSCHAP1")             		/*									CFString */
149#define kRASValPPPAuthProtocolMSCHAP2 		CFSTR("MSCHAP2")             		/*									CFString */
150#define kRASValPPPAuthProtocolEAP			CFSTR("EAP")						/*									CFString */
151
152/* CCP: */
153#define kRASPropPPPCCPEnabled				kSCPropNetPPPCCPEnabled				/* CFSTR("CCPEnabled")				CFNumber (0 or 1) */
154#define kRASPropPPPCCPProtocols				CFSTR("CCPProtocols")				/*									CFArray */
155
156/* kRASPropPPPCCPProtocols values */
157#define kRASValPPPCCPProtocolsMPPE			CFSTR("MPPE")
158
159/* MPPE option keys */
160#define kRASPropPPPMPPEKeySize40			CFSTR("MPPEKeySize40")				/*									CFNumber */
161#define kRASPropPPPMPPEKeySize128			CFSTR("MPPEKeySize128")				/*									CFNumber */
162
163/* IPCP: */
164#define kRASPropPPPIPCPCompressionVJ  		kSCPropNetPPPIPCPCompressionVJ		/* CFSTR("IPCPCompressionVJ") 		CFNumber (0 or 1) */
165
166/* LCP: */
167#define kRASPropPPPLCPEchoEnabled			kSCPropNetPPPLCPEchoEnabled 		/* CFSTR("LCPEchoEnabled")			CFNumber (0 or 1) */
168#define kRASPropPPPLCPEchoFailure			kSCPropNetPPPLCPEchoFailure 		/* CFSTR("LCPEchoFailure")     		CFNumber */
169#define kRASPropPPPLCPEchoInterval			kSCPropNetPPPLCPEchoInterval 		/* CFSTR("LCPEchoInterval")  		CFNumber */
170#define kRASPropPPPLCPCompressionACField	kSCPropNetPPPLCPCompressionACField 	/* CFSTR("LCPCompressionACField")	CFNumber (0 or 1) */
171#define kRASPropPPPLCPCompressionPField		kSCPropNetPPPLCPCompressionPField 	/* CFSTR("LCPCompressionPField") 	CFNumber (0 or 1) */
172#define kRASPropPPPLCPMRU					kSCPropNetPPPLCPMRU					/* CFSTR("LCPMRU")					CFNumber */
173#define kRASPropPPPLCPMTU					kSCPropNetPPPLCPMTU					/* CFSTR("LCPMTU")           		CFNumber */
174#define kRASPropPPPLCPReceiveACCM			kSCPropNetPPPLCPReceiveACCM 		/* CFSTR("LCPReceiveACCM")    		CFNumber */
175#define kRASPropPPPLCPTransmitACCM			kSCPropNetPPPLCPTransmitACCM 		/* CFSTR("LCPTransmitACCM")   		CFNumber */
176
177/* ACSP: */
178#define kRASPropPPPACSPEnabled				CFSTR("ACSPEnabled")				/*									CFNumber */
179
180/*
181 * kRASEntPPPoE Entity Keys
182 */
183#define kRASPropPPPoEDeviceName           	CFSTR("DeviceName")					/*									CFString */
184#define kRASPropPPPoEServiceName           	CFSTR("ServiceName")				/*									CFString */
185#define kRASPropPPPoEAccessConcentratorName CFSTR("AccessConcentratorName")		/*									CFString */
186
187
188/*
189 * kRASEntRadius Entity Keys
190 */
191#define kRASPropRadiusServers				CFSTR("Servers")					/*									CFArray */
192#define kRASPropRadiusNASIPAddress			CFSTR("NASIPAddress")				/*									CFString */
193#define kRASPropRadiusNASIdentifier			CFSTR("NASIdentifier")				/*									CFString */
194#define kRASPropRadiusNASPortType			CFSTR("NASPortType")				/*									Integer */
195#define kRASPropRadiusTunnelType			CFSTR("TunnelType")					/*									Integer */
196
197
198#define kRASPropRadiusServerAddress			CFSTR("Address")					/*									CFString */
199#define kRASPropRadiusServerSharedSecret	CFSTR("SharedSecret")				/*									CFString */
200#define kRASPropRadiusServerSharedSecretEncryption CFSTR("SharedSecretEncryption")	/*								CFString */
201#define kRASPropRadiusServerPort			CFSTR("Port")						/*									CFNumber */
202#define kRASPropRadiusServerTimeout			CFSTR("Timeout")					/*									CFNumber */
203#define kRASPropRadiusServerRetries			CFSTR("Retries")					/*									CFNumber */
204#define kRASPropRadiusServerAuthProtocol	CFSTR("AuthProtocol")				/*									CFArray */
205/* kRASPropRadiusServerAuthProtocols values are listed in kRASPropPPPAuthProtocol */
206
207/* kRASPropRadiusSharedSecretEncryption values */
208#define kRASValRadiusSharedSecretEncryptionKey		CFSTR("Key")
209#define kRASValRadiusSharedSecretEncryptionKeychain	CFSTR("Keychain")
210
211/*
212 * kRASEntPPPSerial Entity Keys
213 */
214/* RESERVED FOR FUTURE USE */
215
216/*
217 * kRASEntPPTP Entity Keys
218 */
219/* RESERVED FOR FUTURE USE */
220
221/*
222 * kRASEntL2TP Entity Keys
223 */
224#define kRASPropL2TPTransport           	kSCPropNetL2TPTransport				/* CFSTR("Transport")				CFString */
225
226/* kRASPropL2TPTransport values */
227#define kRASValL2TPTransportIP				kSCValNetL2TPTransportIP			/* CFSTR("IP") */
228#define kRASValL2TPTransportIPSec			kSCValNetL2TPTransportIPSec 		/* CFSTR("IPSec") */
229
230#define kRASPropL2TPIPSecSharedSecret           CFSTR("IPSecSharedSecret")				/*							CFString */
231#define kRASPropL2TPIPSecSharedSecretEncryption CFSTR("IPSecSharedSecretEncryption") 	/*							CFString */
232
233/* kRASPropL2TPIPSecSharedSecretEncryption values */
234#define kRASValL2TPIPSecSharedSecretEncryptionKey		CFSTR("Key")
235#define kRASValL2TPIPSecSharedSecretEncryptionKeychain	CFSTR("Keychain")
236
237/*
238 * kRASEntIPSec Entity Keys
239 */
240
241/* Phase 1 */
242#define kRASPropIPSecExchangeMode				CFSTR("ExchangeMode")			/*									CFArray */
243#define kRASPropIPSecProposalsBehavior			CFSTR("ProposalsBehavior") 		/*									CFString */
244#define kRASPropIPSecLocalIdentifier			CFSTR("LocalIdentifier") 		/*									CFString */
245#define kRASPropIPSecRemoteIdentifier			CFSTR("RemoteIdentifier") 		/*									CFString */
246#define kRASPropIPSecLocalAddress				CFSTR("LocalAddress")			/*									CFString */
247#define kRASPropIPSecRemoteAddress				CFSTR("RemoteAddress")			/*									CFString */
248#define kRASPropIPSecSharedSecret				CFSTR("SharedSecret")			/*									CFString */
249#define kRASPropIPSecSharedSecretEncryption		CFSTR("SharedSecretEncryption") /*									CFString */
250#define kRASPropIPSecNonceSize					CFSTR("NonceSize")				/*									CFNumber */
251#define kRASPropIPSecIdentifierVerification		CFSTR("IdentifierVerification") /*									CFString */
252#define kRASPropIPSecLocalCertificate			CFSTR("LocalCertificate") 		/*									CFData */
253#define kRASPropIPSecNattMultipleUsersEnabled	CFSTR("NattMultipleUsersEnabled")	/*						CFNumber (0 or 1) */
254#define kRASPropIPSecNattKeepAliveEnabled		CFSTR("NattKeepAliveEnabled")	/*							CFNumber (0 or 1) */
255#define kRASPropIPSecNattKeepAliveTimer			CFSTR("NattKeepAliveTimer")		/*									CFNumber */
256#define kRASPropIPSecXAuthEnabled				CFSTR("XAuthEnabled")			/*							CFNumber (0 or 1) */
257#define kRASPropIPSecXAuthName					CFSTR("XAuthName")				/*								CFString */
258#define kRASPropIPSecXAuthPassword				CFSTR("XAuthPassword")				/*								CFString */
259#define kRASPropIPSecModeConfigEnabled			CFSTR("ModeConfigEnabled")		/*							CFNumber (0 or 1) */
260#define kRASPropIPSecAuthenticationMethod		CFSTR("AuthenticationMethod")   /*									CFString */
261#define kRASPropIPSecDeadPeerDetectionEnabled	CFSTR("DeadPeerDetectionEnabled")	/*						CFNumber (0 or 1) */
262#define kRASPropIPSecDeadPeerDetectionDelay		CFSTR("DeadPeerDetectionDelay")	/*									CFNumber */
263#define kRASPropIPSecDeadPeerDetectionRetry		CFSTR("DeadPeerDetectionRetry")	/*									CFNumber */
264#define kRASPropIPSecDeadPeerDetectionMaxFail	CFSTR("DeadPeerDetectionMaxFail")	/*								CFNumber */
265#define kRASPropIPSecBlackHoleDetectionEnabled	CFSTR("BlackHoleDetectionEnabled") 	/*						CFNumber (0 or 1) */
266#define kRASPropIPSecDisconnectOnIdle			CFSTR("DisconnectOnIdle")		/*							CFNumber (0 or 1) */
267#define kRASPropIPSecDisconnectOnIdleTimer		CFSTR("DisconnectOnIdleTimer") 	/*									CFNumber */
268
269/* kRASPropIPSecExchangeMode values */
270#define kRASValIPSecExchangeModeMain				CFSTR("Main")
271#define kRASValIPSecExchangeModeBase				CFSTR("Base")
272#define kRASValIPSecExchangeModeAggressive			CFSTR("Aggressive")
273
274/* kRASPropIPSecIdentifierVerification values */
275#define kRASValIPSecIdentifierVerificationNone							CFSTR("None")
276#define kRASValIPSecIdentifierVerificationGenerateFromRemoteAddress		CFSTR("GenerateFromRemoteAddress")
277#define kRASValIPSecIdentifierVerificationUseRemoteIdentifier			CFSTR("UseRemoteIdentifier")
278#define kRASValIPSecIdentifierVerificationUseOpenDirectory				CFSTR("UseOpenDirectory")
279
280/* kRASPropIPSecProposalsBehavior values */
281#define kRASValIPSecProposalsBehaviorClaim			CFSTR("Claim")
282#define kRASValIPSecProposalsBehaviorObey			CFSTR("Obey")
283#define kRASValIPSecProposalsBehaviorStrict			CFSTR("Strict")
284#define kRASValIPSecProposalsBehaviorExact			CFSTR("Exact")
285
286/* kRASPropIPSecSharedSecretEncryption values */
287#define kRASValIPSecSharedSecretEncryptionKey		CFSTR("Key")
288#define kRASValIPSecSharedSecretEncryptionKeychain	CFSTR("Keychain")
289
290/* kRASPropIPSecAuthenticationMethod values */
291#define kRASValIPSecAuthenticationMethodSharedSecret	CFSTR("SharedSecret")
292#define kRASValIPSecAuthenticationMethodCertificate		CFSTR("Certificate")
293#define kRASValIPSecAuthenticationMethodHybrid			CFSTR("Hybrid")
294
295
296/* Phase 1 ISAKMP Proposals*/
297#define kRASPropIPSecProposals						CFSTR("Proposals")					/*						CFArray */
298
299#define kRASPropIPSecProposalLifetime					CFSTR("Lifetime")				/*						CFNumber */
300#define kRASPropIPSecProposalDHGroup					CFSTR("DHGroup")				/*						CFNumber */
301#define kRASPropIPSecProposalEncryptionAlgorithm		CFSTR("EncryptionAlgorithm")	/*						CFString */
302#define kRASPropIPSecProposalHashAlgorithm				CFSTR("HashAlgorithm")			/*						CFString */
303
304/* kRASPropIPSecProposalEncryptionAlgorithm values */
305#define kRASValIPSecProposalEncryptionAlgorithmDES		CFSTR("DES")
306#define kRASValIPSecProposalEncryptionAlgorithm3DES		CFSTR("3DES")
307#define kRASValIPSecProposalEncryptionAlgorithmAES		CFSTR("AES")
308#define kRASValIPSecProposalEncryptionAlgorithmAES256	CFSTR("AES256")
309
310/* kRASPropIPSecProposalHashAlgorithm values */
311#define kRASValIPSecProposalHashAlgorithmMD5			CFSTR("MD5")
312#define kRASValIPSecProposalHashAlgorithmSHA1			CFSTR("SHA1")
313
314
315/* Policies */
316#define kRASPropIPSecPolicies					CFSTR("Policies")			/*										CFArray */
317
318#define kRASPropIPSecPolicyLocalAddress			CFSTR("LocalAddress") 		/*										CFString */
319#define kRASPropIPSecPolicyLocalPrefix			CFSTR("LocalPrefix") 		/*										CFNumber */
320#define kRASPropIPSecPolicyLocalPort			CFSTR("LocalPort")			/*										CFNumber */
321#define kRASPropIPSecPolicyRemoteAddress		CFSTR("RemoteAddress") 		/*										CFString */
322#define kRASPropIPSecPolicyRemotePrefix			CFSTR("RemotePrefix") 		/*										CFNumber */
323#define kRASPropIPSecPolicyRemotePort			CFSTR("RemotePort") 		/*										CFNumber */
324#define kRASPropIPSecPolicyLevel				CFSTR("Level")				/*										CFString */
325#define kRASPropIPSecPolicyMode					CFSTR("Mode")				/*										CFString */
326#define kRASPropIPSecPolicyProtocol				CFSTR("Protocol")			/*										CFNumber */
327#define kRASPropIPSecPolicyDirection			CFSTR("Direction")			/*										CFSring */
328
329/* in kRASPropIPSecPolicyLevel is kRASValIPSecPolicyLevelRequire */
330#define kRASPropIPSecPolicyLifetime					CFSTR("Lifetime")				/*						CFNumber */
331#define kRASPropIPSecPolicyPFSGroup					CFSTR("PFSGroup")				/*						CFNumber */
332#define kRASPropIPSecPolicyEncryptionAlgorithm		CFSTR("EncryptionAlgorithm")	/*						CFArray */
333#define kRASPropIPSecPolicyCompressionAlgorithm		CFSTR("CompressionAlgorithm")   /*						CFArray */
334#define kRASPropIPSecPolicyHashAlgorithm			CFSTR("HashAlgorithm")			/*						CFArray */
335
336/* kRASPropIPSecPolicyLevel values */
337#define kRASValIPSecPolicyLevelNone				CFSTR("None")
338#define kRASValIPSecPolicyLevelRequire			CFSTR("Require")
339#define kRASValIPSecPolicyLevelDiscard			CFSTR("Discard")
340#define kRASValIPSecPolicyLevelUnique			CFSTR("Unique")
341
342/* kRASPropIPSecPolicyMode values */
343#define kRASValIPSecPolicyModeTransport			CFSTR("Transport")
344#define kRASValIPSecPolicyModeTunnel			CFSTR("Tunnel")
345
346/* kRASPropIPSecPolicyDirection values */
347#define kRASValIPSecPolicyDirectionIn			CFSTR("In")
348#define kRASValIPSecPolicyDirectionOut			CFSTR("Out")
349#define kRASValIPSecPolicyDirectionInOut		CFSTR("InOut")
350
351/* kRASPropIPSecPolicyEncryptionAlgorithm values */
352#define kRASValIPSecPolicyEncryptionAlgorithmDES		CFSTR("DES")
353#define kRASValIPSecPolicyEncryptionAlgorithm3DES		CFSTR("3DES")
354#define kRASValIPSecPolicyEncryptionAlgorithmAES		CFSTR("AES")
355#define kRASValIPSecPolicyEncryptionAlgorithmAES256		CFSTR("AES256")
356
357/* kRASPropIPSecPolicyCompressionAlgorithm values */
358#define kRASValIPSecPolicyCompressionAlgorithmDeflate	CFSTR("Deflate")
359
360/* kRASPropIPSecPolicyHashAlgorithm values */
361#define kRASValIPSecPolicyHashAlgorithmSHA1				CFSTR("SHA1")
362#define kRASValIPSecPolicyHashAlgorithmMD5				CFSTR("MD5")
363
364
365/*
366 * kRASDSAccessControl Entity Keys
367 */
368#define kRASPropDSACLGroup			CFSTR("Group")							/* 					CFString */
369
370/*
371 * kRASEntServer Entity Keys
372 */
373#define kRASPropServerMaximumSessions		CFSTR("MaximumSessions")		/*					CFNumber */
374#define kRASPropServerLogfile				CFSTR("Logfile")				/* 					CFString */
375#define kRASPropServerVerboseLogging		CFSTR("VerboseLogging")			/* 					CFNumber (0 or 1) */
376#define kRASPropServerLoadBalancingEnabled	CFSTR("LoadBalancingEnabled")	/* 					CFNumber (0 or 1) */
377#define kRASPropServerLoadBalancingAddress	CFSTR("LoadBalancingAddress")	/* 					CFString */
378//#define kRASPropServerLoadBalancingInterface	CFSTR("LoadBalancingInterface")	/* 					CFString */
379//#define kRASPropServerLoadBalancingPriority	CFSTR("LoadBalancingPriority")	/* 					CFNumber (1 or 10) */
380#define kRASPropServerLoadBalancingPort		CFSTR("LoadBalancingPort")		/*					CFNumber */
381
382#endif
383
384
385