]> git.saurik.com Git - apple/configd.git/blob - SystemConfiguration.fproj/genSCPreferences.c
configd-801.1.1.tar.gz
[apple/configd.git] / SystemConfiguration.fproj / genSCPreferences.c
1 /*
2 * Copyright (c) 2000-2015 Apple 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 /*
25 * genSCPreferences.c
26 * - generates System Configuration header/cfile
27 * - invoke with "header" to generate the header
28 * - invoke with "cfile" to generate the cfile
29 */
30
31 /*
32 * Modification History
33 *
34 * 12 March 2015 Sushant Chavan (sushant_chavan@apple.com)
35 * - cleanup of SC_SCHEMA_DECLARATION and SC_SCHEMA_KV macros.
36 *
37 * 4 March 2004 Allan Nathanson (ajn@apple.com)
38 * - an alternate scheme to help facilitate access to the schema
39 * definitions for cross-compilation to earlier releases AND
40 * access to CFM applications.
41 *
42 * 16 July 2003 Allan Nathanson (ajn@apple.com)
43 * - changes to facilitate cross-compilation to earlier releases
44 *
45 * 5 May 2003 Allan Nathanson (ajn@apple.com)
46 * - switch back to "extern const CFStringRef ..."
47 *
48 * 1 June 2001 Allan Nathanson <ajn@apple.com>
49 * - public API conversion
50 *
51 * 27 Apr 2001 Allan Nathanson (ajn@apple.com)
52 * - switch from "extern const CFStringRef ..." to "#define ..."
53 *
54 * 3 Nov 2000 Dieter Siegmund (dieter@apple)
55 * - created
56 */
57 #include <stdio.h>
58 #include <stdlib.h>
59 #include <string.h>
60 #include <unistd.h>
61 #include <mach/boolean.h>
62
63 char copyright_string[] =
64 "/*\n"
65 " * Copyright (c) 2000-2015 Apple Inc. All rights reserved.\n"
66 " *\n"
67 " * @APPLE_LICENSE_HEADER_START@\n"
68 " *\n"
69 " * This file contains Original Code and/or Modifications of Original Code\n"
70 " * as defined in and that are subject to the Apple Public Source License\n"
71 " * Version 2.0 (the 'License'). You may not use this file except in\n"
72 " * compliance with the License. Please obtain a copy of the License at\n"
73 " * http://www.opensource.apple.com/apsl/ and read it before using this\n"
74 " * file.\n"
75 " *\n"
76 " * The Original Code and all software distributed under the License are\n"
77 " * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER\n"
78 " * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,\n"
79 " * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,\n"
80 " * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.\n"
81 " * Please see the License for the specific language governing rights and\n"
82 " * limitations under the License.\n"
83 " *\n"
84 " * @APPLE_LICENSE_HEADER_END@\n"
85 " */\n";
86
87
88 typedef enum {
89 DEFINE,
90 DEFINE_PRIVATE,
91 COMMENT,
92 GROUP,
93 SC_10_1,
94 SC_10_2,
95 SC_10_3,
96 SC_10_1_10_4, // deprecated in 10.4
97 SC_10_4,
98 SC_10_1_10_5, // deprecated in 10.5
99 SC_10_5,
100 SC_10_5_10_7, // deprecated in 10.7
101 SC_10_1_10_6, // deprecated in 10.6
102 SC_10_2_10_6, // deprecated in 10.6
103 SC_10_1_10_9, // deprecated in 10.9
104 SC_10_2_10_9, // deprecated in 10.9
105 SC_10_3_10_9, // deprecated in 10.9
106 SC_10_4_10_9, // deprecated in 10.9
107 SC_10_6_IPHONE_2_0,
108 SC_10_6_IPHONE_3_0,
109 SC_10_7_IPHONE_4_0,
110 COMMENT_PRIVATE,
111 GROUP_PRIVATE,
112 SC_10_5_PRIVATE,
113 SC_10_6_IPHONE_2_0_PRIVATE,
114 SC_10_6_IPHONE_3_0_PRIVATE,
115 SC_10_7_IPHONE_4_0_PRIVATE,
116 SC_10_7_IPHONE_5_0_PRIVATE,
117 SC_10_8_IPHONE_6_0_PRIVATE,
118 SC_10_9_IPHONE_6_0_PRIVATE,
119 SC_10_9_IPHONE_7_0_PRIVATE,
120 SC_10_10_IPHONE_7_0_PRIVATE,
121 SC_10_10_IPHONE_8_0_PRIVATE,
122 SC_10_11_IPHONE_9_0_PRIVATE,
123 SC_IPHONE_2_0_PRIVATE,
124 COMMENT_DEPRECATED,
125 GROUP_DEPRECATED,
126 END
127 } controlType;
128
129 #define SC_SCHEMA_DECLARATION "SC_SCHEMA_DECLARATION"
130 #define SC_SCHEMA_KV "SC_SCHEMA_KV"
131
132 #define KEY_PREFIX "kSC"
133
134 #define COMP "Comp"
135 #define DYNAMICSTORE "DynamicStore"
136 #define PREF "Pref"
137 #define PROP "Prop"
138 #define PATH "Path"
139 #define NETENT "EntNet"
140 #define NETPROP "PropNet"
141 #define NETVAL "ValNet"
142 #define SETUPENT "EntSetup"
143 #define SETUPPROP "PropSetup"
144 #define SYSTEMENT "EntSystem"
145 #define SYSTEMPROP "PropSystem"
146 #define RESV "Resv"
147 #define USERSENT "EntUsers"
148 #define USERSPROP "PropUsers"
149 #define VERSION "Version"
150 #define VIRTUALPROP "PropVirtualNetworkInterfaces"
151
152 #define CFARRAY_CFDICTIONARY "CFArray[CFDictionary]"
153 #define CFARRAY_CFNUMBER "CFArray[CFNumber]"
154 #define CFARRAY_CFSTRING "CFArray[CFString]"
155 #define CFBOOLEAN "CFBoolean"
156 #define CFDATA "CFData"
157 #define CFDATE "CFDate"
158 #define CFDICTIONARY "CFDictionary"
159 #define CFNUMBER "CFNumber"
160 #define CFNUMBER_BOOL "CFNumber (0 or 1)"
161 #define CFSTRING "CFString"
162
163 #define APP "App"
164 #define ARP "ARP"
165 #define ACCESSPOINTNAME "AccessPointName"
166 #define ACCOUNT "Account"
167 #define ACSP "ACSP" // Apple Client Server Protocol
168 #define ACTION "Action"
169 #define ACTIVE "Active"
170 #define ADDITIONAL "Additional"
171 #define ADDRESS "Address"
172 #define ADDRESSES "Addresses"
173 #define AFTER "After"
174 #define AGGRESSIVE "Aggressive"
175 #define AIRPORT "AirPort"
176 #define ALERT "Alert"
177 #define ALIVE "Alive"
178 #define ALLOW "Allow"
179 #define ALLOWED "Allowed"
180 #define ALLOWNETCREATION "AllowNetCreation"
181 #define ALTERNATE "Alternate"
182 #define ALWAYS "Always"
183 #define ANYREGEX "AnyRegex"
184 #define APPLETALK "AppleTalk"
185 #define AUTH "Auth"
186 #define AUTHENTICATIONMETHOD "AuthenticationMethod"
187 #define AUTOCONFIG "AutoConfig"
188 #define AUTODISCOVERY "AutoDiscovery"
189 #define AUTOMATIC "Automatic"
190 #define AV "AV"
191 #define BEFORE "Before"
192 #define BINDINGMETHODS "BindingMethods"
193 #define BOND "Bond"
194 #define BOOTP "BOOTP"
195 #define BRIDGE "Bridge"
196 #define BROADCAST "Broadcast"
197 #define BYPASS "Bypass"
198 #define CALLWAITINGAUDIBLEALERT "CallWaitingAudibleAlert"
199 #define CAPABILITY "Capability"
200 #define CAPABILITIES "Capabilities"
201 #define CAUSE "Cause"
202 #define CCP "CCP"
203 #define CHAP "CHAP"
204 #define CELLULAR "Cellular"
205 #define CERTIFICATE "Certificate"
206 #define COMM "Comm"
207 #define COMPATIBLE "Compatible"
208 #define COMPRESSIONACFIELD "CompressionACField"
209 #define COMPRESSIONPFIELD "CompressionPField"
210 #define COMPRESSIONVJ "CompressionVJ"
211 #define COMPUTERNAME "ComputerName"
212 #define CONFIGMETHOD "ConfigMethod"
213 #define CONFIRMED "Confirmed"
214 #define CONNECT "Connect"
215 #define CONNECTDELAY "ConnectDelay"
216 #define CONNECTION "Connection"
217 #define CONNECTSPEED "ConnectSpeed"
218 #define CONNECTTIME "ConnectTime"
219 #define CONSERVATIVE "Conservative"
220 #define CONSOLEUSER "ConsoleUser"
221 #define CONTEXTID "ContextID"
222 #define CREDENTIAL "Credential"
223 #define CURRENTSET "CurrentSet"
224 #define DATACOMPRESSION "DataCompression"
225 #define DEFAULT "Default"
226 #define DEFAULTZONE "DefaultZone"
227 #define DESIGNATED "Designated"
228 #define DEST "Dest"
229 #define DESTINATION "Destination"
230 #define DETACHING "Detaching"
231 #define DEVICE "Device"
232 #define DEVICENAME "DeviceName"
233 #define DHCP "DHCP"
234 #define DHCPCLIENTID "DHCPClientID"
235 #define DIALMODE "DialMode"
236 #define DIALONDEMAND "DialOnDemand"
237 #define DISABLEUNTILNEEDED "DisableUntilNeeded"
238 #define DISCONNECT "Disconnect"
239 #define DISCONNECTONANSWER "DisconnectOnAnswer"
240 #define DISCONNECTONFASTUSERSWITCH "DisconnectOnFastUserSwitch"
241 #define DISCONNECTONIDLE "DisconnectOnIdle"
242 #define DISCONNECTONIDLETIMER "DisconnectOnIdleTimer"
243 #define DISCONNECTONLOGOUT "DisconnectOnLogout"
244 #define DISCONNECTONSLEEP "DisconnectOnSleep"
245 #define DISCONNECTONWAKE "DisconnectOnWake"
246 #define DISCONNECTONWAKETIMER "DisconnectOnWakeTimer"
247 #define DISCONNECTTIME "DisconnectTime"
248 #define DISPLAYTERMINALWINDOW "DisplayTerminalWindow"
249 #define DNS "DNS"
250 #define DOMAIN "Domain"
251 #define DOMAINS "Domains"
252 #define DURINGSLEEP "DuringSleep"
253 #define EAP "EAP"
254 #define EAPOL "EAPOL"
255 #define ECHO "Echo"
256 #define ECHOFAILURE "EchoFailure"
257 #define ECHOINTERVAL "EchoInterval"
258 #define ENABLE "Enable"
259 #define ENABLED "Enabled"
260 #define ENCODING "Encoding"
261 #define ENCRYPTION "Encryption"
262 #define ERRORCORRECTION "ErrorCorrection"
263 #define ETHERNET "Ethernet"
264 #define EVALUATE "Evaluate"
265 #define EXCEPTIONSLIST "ExceptionsList"
266 #define EXCLUDED "Excluded"
267 #define EXCLUDESIMPLEHOSTNAMES "ExcludeSimpleHostnames"
268 #define EXECUTABLE "Executable"
269 #define EXPENSIVE "Expensive"
270 #define EXTERNAL "External"
271 #define FAILOVER "Failover"
272 #define FAILURE "Failure"
273 #define FALLBACK "FallBack"
274 #define FILE "File"
275 #define FIREWIRE "FireWire"
276 #define FIRST "First"
277 #define FLAGS "Flags"
278 #define FTP "FTP"
279 #define GATEWAY "Gateway"
280 #define GID "GID"
281 #define GLOBAL "Global"
282 #define GOPHER "Gopher"
283 #define HARDWARE "Hardware"
284 #define HIGH "High"
285 #define HOLD "Hold"
286 #define HOSTNAME "HostName"
287 #define HOSTNAMES "HostNames"
288 #define HTTP "HTTP"
289 #define HTTPS "HTTPS"
290 #define HYBRID "Hybrid"
291 #define IDENTIFIER "Identifier"
292 #define IDLEREMINDER "IdleReminder"
293 #define IDLEREMINDERTIMER "IdleReminderTimer"
294 #define IFNEEDED "IfNeeded"
295 #define IGNORE "Ignore"
296 #define IGNOREDIALTONE "IgnoreDialTone"
297 #define IGNORELINKSTATUS "IgnoreLinkStatus"
298 #define INACTIVE "Inactive"
299 #define INCLUDED "Included"
300 #define INFO "Info"
301 #define INFORM "INFORM"
302 #define INTERFACE "Interface"
303 #define INTERFACENAME "InterfaceName"
304 #define INTERFACES "Interfaces"
305 #define IP "IP"
306 #define IPCP "IPCP"
307 #define IPV4 "IPv4"
308 #define IPV6 "IPv6"
309 #define IPSEC "IPSec"
310 #define JAVASCRIPT "JavaScript"
311 #define JOIN "Join"
312 #define JUMBO_MTU "JUMBO_MTU"
313 #define KEYCHAIN "Keychain"
314 #define KEYID "KeyID"
315 #define L2TP "L2TP"
316 #define LAST "Last"
317 #define LAYER "Layer"
318 #define LCP "LCP"
319 #define LINK "Link"
320 #define LINKISSUES "LinkIssues"
321 #define LINKLOCAL "LinkLocal"
322 #define LINKQUALITY "LinkQuality"
323 #define LOCALCERTIFICATE "LocalCertificate"
324 #define LOCALHOSTNAME "LocalHostName"
325 #define LOCALIDENTIFIER "LocalIdentifier"
326 #define LOGFILE "Logfile"
327 #define LOOPBACK "Loopback"
328 #define LOW "Low"
329 #define LRO "LRO"
330 #define MACADDRESS "MACAddress"
331 #define MANUAL "Manual"
332 #define MATCH "Match"
333 #define MEDIA "Media"
334 #define MIXED "Mixed"
335 #define MODEL "Model"
336 #define MODE "Mode"
337 #define MODEM "Modem"
338 #define MODULEID "ModuleID"
339 #define MPPE40 "MPPE40"
340 #define MPPE128 "MPPE128"
341 #define MRU "MRU"
342 #define MSCHAP1 "MSCHAP1"
343 #define MSCHAP2 "MSCHAP2"
344 #define MTU "MTU"
345 #define NAME "Name"
346 #define NETBIOS "NetBIOS"
347 #define NETINFO "NetInfo"
348 #define NETWORK "Network"
349 #define NETWORKID "NetworkID"
350 #define NETWORKRANGE "NetworkRange"
351 #define NETWORKSERVICES "NetworkServices"
352 #define NEVER "Never"
353 #define NO "No"
354 #define NODE "Node"
355 #define NODEID "NodeID"
356 #define NOTE "Note"
357 #define ONDEMAND "OnDemand"
358 #define ONRETRY "OnRetry"
359 #define OPTIONS "Options"
360 #define ORDER "Order"
361 #define ORDERS "Orders"
362 #define OVERRIDEPRIMARY "OverridePrimary"
363 #define PAP "PAP"
364 #define PARAMETERS "Parameters"
365 #define PASSIVE "Passive"
366 #define PASSWORD "Password"
367 #define PEER "Peer"
368 #define PERSONALITY "Personality"
369 #define PLUGIN "Plugin"
370 #define PLUGINS "Plugins"
371 #define POWER "Power"
372 #define PORT "Port"
373 #define PPP "PPP"
374 #define PPPOE "PPPoE"
375 #define PPPSERIAL "PPPSerial"
376 #define PPTP "PPTP"
377 #define PREFERRED "Preferred"
378 #define PREFIXLENGTH "PrefixLength"
379 #define PREFS "Prefs"
380 #define PRIMARYINTERFACE "PrimaryInterface"
381 #define PRIMARYRANK "PrimaryRank"
382 #define PRIMARYSERVICE "PrimaryService"
383 #define PRIORITY "Priority"
384 #define PROBE "Probe"
385 #define PROMPT "Prompt"
386 #define PROTOCOL "Protocol"
387 #define PROXIES "Proxies"
388 #define PROXY "Proxy"
389 #define PULSEDIAL "PulseDial"
390 #define RANKED "Ranked"
391 #define RECEIVEACCM "ReceiveACCM"
392 #define RECENT "Recent"
393 #define REDIALCOUNT "RedialCount"
394 #define REDIAL "Redial"
395 #define REDIALINTERVAL "RedialInterval"
396 #define REGION "Region"
397 #define RELAY "Relay"
398 #define REMINDER "Reminder"
399 #define REMINDERTIME "ReminderTime"
400 #define REMOTEADDRESS "RemoteAddress"
401 #define REQUESTED "Requested"
402 #define REQUIRED "Required"
403 #define REQUIREMENT "Requirement"
404 #define RESOLVED "Resolved"
405 #define RETRYCONNECTTIME "RetryConnectTime"
406 #define ROOTSEPARATOR "RootSeparator"
407 #define ROUTE "Route"
408 #define ROUTER "Router"
409 #define ROUTES "Routes"
410 #define ROUTERADVERTISEMENT "RouterAdvertisement"
411 #define RTSP "RTSP"
412 #define RULE "Rule"
413 #define RULES "Rules"
414 #define RXCSUM "RXCSUM"
415 #define SAVEPASSWORDS "SavePasswords"
416 #define SCOPE "Scope"
417 #define SCOPED "Scoped"
418 #define SCRIPT "Script"
419 #define SEARCH "Search"
420 #define SEEDNETWORKRANGE "SeedNetworkRange"
421 #define SEEDROUTER "SeedRouter"
422 #define SEEDZONES "SeedZones"
423 #define SERVER "Server"
424 #define SERVERS "Servers"
425 #define SERVICE "Service"
426 #define SERVICES "Services"
427 #define SERVICEID "ServiceID"
428 #define SERVICEIDS "ServiceIDs"
429 #define SESSIONTIMER "SessionTimer"
430 #define SETS "Sets"
431 #define SETUP "Setup"
432 #define SHAREDSECRET "SharedSecret"
433 #define SIGNING "Signing"
434 #define SMB "SMB"
435 #define SOCKS "SOCKS"
436 #define SORTLIST "SortList"
437 #define SPEAKER "Speaker"
438 #define SPECIFIC "Specific"
439 #define SPEED "Speed"
440 #define SSID "SSID"
441 #define STATE "State"
442 #define STATUS "Status"
443 #define STF "6to4"
444 #define STRONGEST "Strongest"
445 #define SUBNETMASK "SubnetMask"
446 #define SUBNETMASKS "SubnetMasks"
447 #define SUBTYPE "SubType"
448 #define SUPPLEMENTAL "Supplemental"
449 #define SUPPORTED "Supported"
450 #define SUPPORTSMODEMONHOLD "SupportsModemOnHold"
451 #define SUSPENDED "Suspended"
452 #define SYSTEM "System"
453 #define TAG "Tag"
454 #define TAGS "Tags"
455 #define TERMINALSCRIPT "TerminalScript"
456 #define TIMEOUT "Timeout"
457 #define TIMESTAMP "TimeStamp"
458 #define TOKEN "Token"
459 #define TRANSMITACCM "TransmitACCM"
460 #define TRANSPORT "Transport"
461 #define TSO "TSO"
462 #define TSO4 "TSO4"
463 #define TSO6 "TSO6"
464 #define TXCSUM "TXCSUM"
465 #define TYPE "Type"
466 #define UID "UID"
467 #define UPDATED "Updated"
468 #define URLSTRING "URLString"
469 #define USERDEFINEDNAME "UserDefinedName"
470 #define USE "Use"
471 #define USERS "Users"
472 #define UUID "UUID"
473 #define VENDOR "Vendor"
474 #define VERBOSELOGGING "VerboseLogging"
475 #define VIRTUALNETWORKINTERFACES "VirtualNetworkInterfaces"
476 #define VLAN "VLAN"
477 #define VLAN_HWTAGGING "VLAN_HWTAGGING"
478 #define VLAN_MTU "VLAN_MTU"
479 #define VPN "VPN"
480 #define WAITFORDIALTONE "WaitForDialTone"
481 #define WIFI "WiFi"
482 #define WINS "WINS"
483 #define WORKGROUP "Workgroup"
484 #define XAUTH "XAuth"
485
486
487 typedef struct {
488 int control;
489 const char * prefix;
490 const char * key;
491 const char * value;
492 const char * type;
493 } schemaDefinition;
494
495 static schemaDefinition names[] = {
496
497 { GROUP, NULL, "Reserved Keys", NULL, NULL },
498
499 { SC_10_1, RESV, LINK, "__LINK__", CFSTRING },
500 { SC_10_1, RESV, INACTIVE, "__INACTIVE__", NULL },
501 { COMMENT, "", NULL, NULL, NULL },
502
503 { GROUP, NULL, "Generic Keys", NULL, NULL },
504
505 { SC_10_1, PROP, INTERFACENAME, NULL, CFSTRING },
506 { SC_10_1, PROP, MACADDRESS, NULL, CFSTRING },
507 { SC_10_1, PROP, USERDEFINEDNAME, NULL, CFSTRING },
508 { SC_10_1, PROP, VERSION, NULL, CFSTRING },
509 { COMMENT, "", NULL, NULL, NULL },
510
511 { GROUP_PRIVATE, NULL, "Generic Keys", NULL, NULL },
512 { SC_10_5_PRIVATE, NETPROP, IGNORELINKSTATUS, NULL, CFBOOLEAN },
513 { SC_10_10_IPHONE_8_0_PRIVATE, PROP, CONFIRMED INTERFACENAME, NULL, CFSTRING },
514 { SC_10_11_IPHONE_9_0_PRIVATE, PROP, DISABLEUNTILNEEDED, NULL, CFNUMBER_BOOL },
515 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
516
517
518 { GROUP, PREF, "Preference Keys", NULL, NULL },
519
520 { SC_10_1, PREF, CURRENTSET, NULL, CFSTRING },
521 { SC_10_1, PREF, NETWORKSERVICES, NULL, CFDICTIONARY },
522 { SC_10_1, PREF, SETS, NULL, CFDICTIONARY },
523 { SC_10_1, PREF, SYSTEM, NULL, CFDICTIONARY },
524 { COMMENT, "", NULL, NULL, NULL },
525
526 { GROUP_PRIVATE, PREF, "Preference Keys", NULL, NULL },
527
528 { SC_10_5_PRIVATE, PREF, VIRTUALNETWORKINTERFACES, NULL, CFDICTIONARY },
529 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
530
531 { GROUP, COMP, "Component Keys", NULL, NULL },
532
533 { SC_10_1, COMP, NETWORK, NULL, NULL },
534 { SC_10_1, COMP, SERVICE, NULL, NULL },
535 { SC_10_1, COMP, GLOBAL, NULL, NULL },
536 { SC_10_2, COMP, HOSTNAMES, NULL, NULL },
537 { SC_10_1, COMP, INTERFACE, NULL, NULL },
538 { SC_10_1, COMP, SYSTEM, NULL, NULL },
539 { SC_10_1, COMP, USERS, NULL, NULL },
540 { COMMENT, "", NULL, NULL, NULL },
541
542 { COMMENT, "--- Regex pattern which matches any component ---", NULL },
543 { SC_10_1, COMP, ANYREGEX, "[^/]+", NULL },
544 { COMMENT, "", NULL, NULL, NULL },
545
546 { GROUP, NETENT, "Network Entity Keys", NULL, NULL },
547
548 { SC_10_1, NETENT, AIRPORT, NULL, CFDICTIONARY },
549 { DEFINE, "#if", "!TARGET_OS_IPHONE", NULL, NULL },
550 { SC_10_1_10_6, NETENT, APPLETALK, NULL, CFDICTIONARY },
551 { DEFINE, "#endif", "// !TARGET_OS_IPHONE", NULL, NULL },
552 { SC_10_1, NETENT, DHCP, NULL, CFDICTIONARY },
553 { SC_10_1, NETENT, DNS, NULL, CFDICTIONARY },
554 { SC_10_1, NETENT, ETHERNET, NULL, CFDICTIONARY },
555 { SC_10_3, NETENT, FIREWIRE, NULL, CFDICTIONARY },
556 { SC_10_1, NETENT, INTERFACE, NULL, CFDICTIONARY },
557 { SC_10_5, NETENT, IPSEC, NULL, CFDICTIONARY },
558 { SC_10_1, NETENT, IPV4, NULL, CFDICTIONARY },
559 { SC_10_1, NETENT, IPV6, NULL, CFDICTIONARY },
560 { SC_10_3, NETENT, L2TP, NULL, CFDICTIONARY },
561 { SC_10_1, NETENT, LINK, NULL, CFDICTIONARY },
562 { SC_10_1, NETENT, MODEM, NULL, CFDICTIONARY },
563 { DEFINE, "#if", "!TARGET_OS_IPHONE", NULL, NULL },
564 { SC_10_1_10_5, NETENT, NETINFO, NULL, CFDICTIONARY },
565 { DEFINE, "#endif", "// !TARGET_OS_IPHONE", NULL, NULL },
566 { SC_10_1, NETENT, PPP, NULL, CFDICTIONARY },
567 { SC_10_1, NETENT, PPPOE, NULL, CFDICTIONARY },
568 { SC_10_3, NETENT, PPPSERIAL, NULL, CFDICTIONARY },
569 { SC_10_3, NETENT, PPTP, NULL, CFDICTIONARY },
570 { SC_10_1, NETENT, PROXIES, NULL, CFDICTIONARY },
571 { DEFINE, "#if", "!TARGET_OS_IPHONE", NULL, NULL },
572 { SC_10_5, NETENT, SMB, NULL, CFDICTIONARY },
573 { DEFINE, "#endif", "// !TARGET_OS_IPHONE", NULL, NULL },
574 { SC_10_3, NETENT, STF, NULL, CFDICTIONARY },
575 { COMMENT, "", NULL, NULL, NULL },
576
577 { GROUP_PRIVATE, NETENT, "Network Entity Keys", NULL, NULL },
578
579 { SC_10_10_IPHONE_7_0_PRIVATE, NETENT, ACTIVE DURINGSLEEP REQUESTED, NULL, CFDICTIONARY},
580 { SC_10_10_IPHONE_7_0_PRIVATE, NETENT, ACTIVE DURINGSLEEP SUPPORTED, NULL, CFDICTIONARY},
581 { SC_10_9_IPHONE_7_0_PRIVATE, NETENT, APP LAYER, NULL, CFDICTIONARY},
582 { SC_10_5_PRIVATE, NETENT, EAPOL, NULL, CFDICTIONARY },
583 { SC_10_10_IPHONE_8_0_PRIVATE, NETENT, IPV4 ROUTER ARP FAILURE, NULL, NULL},
584 { SC_10_10_IPHONE_8_0_PRIVATE, NETENT, IPV4 ROUTER ARP ALIVE, NULL, NULL},
585 { SC_10_9_IPHONE_7_0_PRIVATE, NETENT, LINKISSUES, NULL, CFDICTIONARY},
586 { SC_10_7_IPHONE_5_0_PRIVATE, NETENT, LINKQUALITY, NULL, CFDICTIONARY},
587 { SC_10_7_IPHONE_4_0_PRIVATE, NETENT, LOOPBACK, NULL, CFDICTIONARY },
588 { SC_10_6_IPHONE_3_0_PRIVATE, NETENT, ONDEMAND, NULL, CFDICTIONARY },
589 { SC_10_6_IPHONE_2_0_PRIVATE, NETENT, SERVICE, "__SERVICE__", CFDICTIONARY },
590 { SC_10_7_IPHONE_4_0_PRIVATE, NETENT, VPN, NULL, CFDICTIONARY },
591 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
592
593 { GROUP, NETPROP, KEY_PREFIX COMP NETWORK " Properties", NULL, NULL },
594
595 { SC_10_2, NETPROP, OVERRIDEPRIMARY, NULL, CFNUMBER_BOOL },
596 { SC_10_1, NETPROP, SERVICE ORDER, NULL, CFARRAY_CFSTRING },
597 { SC_10_1, NETPROP, PPP OVERRIDEPRIMARY, NULL, CFNUMBER_BOOL },
598 { COMMENT, "", NULL, NULL, NULL },
599
600 { GROUP, NETPROP INTERFACES, KEY_PREFIX COMP NETWORK INTERFACE " Properties", NULL, NULL },
601
602 { SC_10_2, NETPROP, INTERFACES, NULL, CFARRAY_CFSTRING },
603 { COMMENT, "", NULL, NULL, NULL },
604
605 { GROUP, NETPROP LOCALHOSTNAME, KEY_PREFIX COMP NETWORK HOSTNAMES " Properties", NULL, NULL },
606
607 { SC_10_2, NETPROP, LOCALHOSTNAME, NULL, CFSTRING },
608 { COMMENT, "", NULL, NULL, NULL },
609
610 { GROUP_DEPRECATED, NETPROP AIRPORT, KEY_PREFIX NETENT AIRPORT " (Hardware) Entity Keys", NULL, NULL },
611
612 { SC_10_2_10_9, NETPROP AIRPORT, ALLOWNETCREATION, NULL, CFNUMBER_BOOL },
613 { SC_10_1_10_9, NETPROP AIRPORT, AUTH PASSWORD, NULL, CFDATA },
614 { SC_10_1_10_9, NETPROP AIRPORT, AUTH PASSWORD ENCRYPTION, NULL, CFSTRING },
615 { SC_10_2_10_9, NETPROP AIRPORT, JOIN MODE, NULL, CFSTRING },
616 { SC_10_1_10_9, NETPROP AIRPORT, POWER ENABLED, NULL, CFNUMBER_BOOL },
617 { SC_10_1_10_9, NETPROP AIRPORT, PREFERRED NETWORK, NULL, CFSTRING },
618 { SC_10_2_10_9, NETPROP AIRPORT, SAVEPASSWORDS, NULL, CFNUMBER_BOOL },
619 { COMMENT_DEPRECATED, "", NULL, NULL, NULL },
620 { COMMENT_DEPRECATED, "--- " KEY_PREFIX NETPROP AIRPORT JOIN MODE " values ---", NULL, NULL, NULL },
621 { SC_10_3_10_9, NETVAL AIRPORT JOIN MODE, AUTOMATIC, NULL, NULL },
622 { SC_10_2_10_9, NETVAL AIRPORT JOIN MODE, PREFERRED, NULL, NULL },
623 { SC_10_4_10_9, NETVAL AIRPORT JOIN MODE, RANKED, NULL, NULL },
624 { SC_10_2_10_9, NETVAL AIRPORT JOIN MODE, RECENT, NULL, NULL },
625 { SC_10_2_10_9, NETVAL AIRPORT JOIN MODE, STRONGEST, NULL, NULL },
626 { COMMENT_DEPRECATED, "", NULL, NULL, NULL },
627 { COMMENT_DEPRECATED, "--- " KEY_PREFIX NETPROP AIRPORT PASSWORD ENCRYPTION " values ---", NULL, NULL, NULL },
628 { SC_10_3_10_9, NETVAL AIRPORT AUTH PASSWORD ENCRYPTION, KEYCHAIN, NULL, NULL },
629 { COMMENT_DEPRECATED, "", NULL, NULL, NULL },
630
631 { GROUP_DEPRECATED, NETPROP APPLETALK, KEY_PREFIX NETENT APPLETALK " Entity Keys", NULL, NULL },
632
633 { DEFINE, "#if", "!TARGET_OS_IPHONE", NULL, NULL },
634 { SC_10_1_10_6, NETPROP APPLETALK, COMPUTERNAME, NULL, CFSTRING },
635 { SC_10_1_10_6, NETPROP APPLETALK, COMPUTERNAME ENCODING, NULL, CFNUMBER },
636 { SC_10_1_10_6, NETPROP APPLETALK, CONFIGMETHOD, NULL, CFSTRING },
637 { SC_10_1_10_6, NETPROP APPLETALK, DEFAULTZONE, NULL, CFSTRING },
638 { SC_10_1_10_6, NETPROP APPLETALK, NETWORKID, NULL, CFNUMBER },
639 { SC_10_2_10_6, NETPROP APPLETALK, NETWORKRANGE, NULL, CFARRAY_CFNUMBER },
640 { SC_10_1_10_6, NETPROP APPLETALK, NODEID, NULL, CFNUMBER },
641 { SC_10_1_10_6, NETPROP APPLETALK, SEEDNETWORKRANGE, NULL, CFARRAY_CFNUMBER },
642 { SC_10_1_10_6, NETPROP APPLETALK, SEEDZONES, NULL, CFARRAY_CFSTRING },
643 { COMMENT_DEPRECATED, "", NULL, NULL, NULL },
644 { COMMENT_DEPRECATED, "--- " KEY_PREFIX NETPROP APPLETALK CONFIGMETHOD " values ---", NULL, NULL, NULL },
645 { SC_10_1_10_6, NETVAL APPLETALK CONFIGMETHOD, NODE, NULL, NULL },
646 { SC_10_1_10_6, NETVAL APPLETALK CONFIGMETHOD, ROUTER, NULL, NULL },
647 { SC_10_1_10_6, NETVAL APPLETALK CONFIGMETHOD, SEEDROUTER, NULL, NULL },
648 { DEFINE, "#endif", "// !TARGET_OS_IPHONE", NULL, NULL },
649 { COMMENT_DEPRECATED, "", NULL, NULL, NULL },
650
651
652 { GROUP, NETPROP DNS, KEY_PREFIX NETENT DNS " Entity Keys", NULL, NULL },
653
654 { SC_10_1, NETPROP DNS, DOMAIN NAME, NULL, CFSTRING },
655 { SC_10_4, NETPROP DNS, OPTIONS, NULL, CFSTRING },
656 { SC_10_1, NETPROP DNS, SEARCH DOMAINS, NULL, CFARRAY_CFSTRING},
657 { SC_10_4, NETPROP DNS, SEARCH ORDER, NULL, CFNUMBER},
658 { SC_10_1, NETPROP DNS, SERVER ADDRESSES, NULL, CFARRAY_CFSTRING },
659 { SC_10_4, NETPROP DNS, SERVER PORT, NULL, CFNUMBER },
660 { SC_10_4, NETPROP DNS, SERVER TIMEOUT, NULL, CFNUMBER },
661 { SC_10_1, NETPROP DNS, SORTLIST, NULL, CFARRAY_CFSTRING },
662 { SC_10_4, NETPROP DNS, SUPPLEMENTAL MATCH DOMAINS, NULL, CFARRAY_CFSTRING},
663 { SC_10_4, NETPROP DNS, SUPPLEMENTAL MATCH ORDERS, NULL, CFARRAY_CFNUMBER},
664 { COMMENT, "", NULL, NULL, NULL },
665
666 { GROUP_PRIVATE, NETPROP DNS, KEY_PREFIX NETENT DNS " Entity Keys", NULL, NULL },
667
668 { SC_10_11_IPHONE_9_0_PRIVATE, NETPROP DNS, CONFIRMED SERVICEID, NULL, CFSTRING },
669 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP DNS, SERVICE IDENTIFIER, NULL, CFNUMBER },
670 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP DNS, SUPPLEMENTAL MATCH DOMAINS NO SEARCH, NULL, CFNUMBER_BOOL},
671 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
672
673 { GROUP, NETPROP ETHERNET, KEY_PREFIX NETENT ETHERNET " (Hardware) Entity Keys", NULL, NULL },
674
675 { SC_10_2, NETPROP ETHERNET, MEDIA SUBTYPE, NULL, CFSTRING },
676 { SC_10_2, NETPROP ETHERNET, MEDIA OPTIONS, NULL, CFARRAY_CFSTRING },
677 { SC_10_2, NETPROP ETHERNET, MTU, NULL, CFNUMBER },
678 { COMMENT, "", NULL, NULL, NULL },
679
680 { GROUP_PRIVATE, NETPROP ETHERNET, KEY_PREFIX NETENT ETHERNET " (Hardware) Entity Keys", NULL, NULL },
681
682 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP ETHERNET, CAPABILITY AV, AV, CFNUMBER_BOOL },
683 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP ETHERNET, CAPABILITY JUMBO_MTU, JUMBO_MTU, CFNUMBER_BOOL },
684 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP ETHERNET, CAPABILITY LRO, LRO, CFNUMBER_BOOL },
685 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP ETHERNET, CAPABILITY RXCSUM, RXCSUM, CFNUMBER_BOOL },
686 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP ETHERNET, CAPABILITY TSO, TSO, CFNUMBER_BOOL },
687 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP ETHERNET, CAPABILITY TSO4, TSO4, CFNUMBER_BOOL },
688 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP ETHERNET, CAPABILITY TSO6, TSO6, CFNUMBER_BOOL },
689 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP ETHERNET, CAPABILITY TXCSUM, TXCSUM, CFNUMBER_BOOL },
690 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP ETHERNET, CAPABILITY VLAN_HWTAGGING, VLAN_HWTAGGING, CFNUMBER_BOOL },
691 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP ETHERNET, CAPABILITY VLAN_MTU, VLAN_MTU, CFNUMBER_BOOL },
692 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
693
694 { GROUP, NETPROP FIREWIRE, KEY_PREFIX NETENT FIREWIRE " (Hardware) Entity Keys", NULL, NULL },
695
696 { COMMENT, "* RESERVED FOR FUTURE USE *", NULL, NULL, NULL },
697 { COMMENT, "", NULL, NULL, NULL },
698
699 { GROUP, NETPROP INTERFACE, KEY_PREFIX NETENT INTERFACE " Entity Keys", NULL, NULL },
700
701 { SC_10_1, NETPROP INTERFACE, DEVICENAME, NULL, CFSTRING },
702 { SC_10_1, NETPROP INTERFACE, HARDWARE, NULL, CFSTRING },
703 { SC_10_1, NETPROP INTERFACE, TYPE, NULL, CFSTRING },
704 { SC_10_1, NETPROP INTERFACE, SUBTYPE, NULL, CFSTRING },
705 { SC_10_2, NETPROP INTERFACE, SUPPORTSMODEMONHOLD, NULL, CFNUMBER_BOOL },
706 { COMMENT, "", NULL, NULL, NULL },
707 { COMMENT, "--- " KEY_PREFIX NETPROP INTERFACE TYPE " values ---", NULL, NULL, NULL },
708 { SC_10_1, NETVAL INTERFACE TYPE, ETHERNET, NULL, NULL },
709 { SC_10_3, NETVAL INTERFACE TYPE, FIREWIRE, NULL, NULL },
710 { SC_10_1, NETVAL INTERFACE TYPE, PPP, NULL, NULL },
711 { SC_10_3, NETVAL INTERFACE TYPE, STF, NULL, NULL },
712 { SC_10_6_IPHONE_2_0, NETVAL INTERFACE TYPE, IPSEC, NULL, NULL },
713 { COMMENT, "", NULL, NULL, NULL },
714 { COMMENT, "--- " KEY_PREFIX NETPROP SERVICE SUBTYPE " values (for " PPP ") ---", NULL, NULL, NULL },
715 { SC_10_1, NETVAL INTERFACE SUBTYPE, PPPOE, NULL, NULL },
716 { SC_10_1, NETVAL INTERFACE SUBTYPE, PPPSERIAL, NULL, NULL },
717 { SC_10_2, NETVAL INTERFACE SUBTYPE, PPTP, NULL, NULL },
718 { SC_10_3, NETVAL INTERFACE SUBTYPE, L2TP, NULL, NULL },
719 { COMMENT, "", NULL, NULL, NULL },
720
721 { GROUP_PRIVATE, NETPROP INTERFACE, KEY_PREFIX NETENT INTERFACE " Entity Keys", NULL, NULL },
722
723 { COMMENT_PRIVATE, "--- " KEY_PREFIX NETPROP INTERFACE TYPE " values ---", NULL, NULL, NULL },
724 { SC_10_7_IPHONE_4_0_PRIVATE, NETVAL INTERFACE TYPE, LOOPBACK, NULL, NULL },
725 { SC_10_7_IPHONE_4_0_PRIVATE, NETVAL INTERFACE TYPE, VPN, NULL, NULL },
726 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
727
728 { GROUP, NETPROP IPSEC, KEY_PREFIX NETENT IPSEC " Entity Keys", NULL, NULL },
729
730 { SC_10_5, NETPROP IPSEC, AUTHENTICATIONMETHOD, NULL, CFSTRING },
731 { SC_10_5, NETPROP IPSEC, LOCALCERTIFICATE, NULL, CFDATA },
732 { SC_10_5, NETPROP IPSEC, LOCALIDENTIFIER, NULL, CFSTRING },
733 { SC_10_5, NETPROP IPSEC, LOCALIDENTIFIER TYPE, NULL, CFSTRING },
734 { SC_10_5, NETPROP IPSEC, SHAREDSECRET, NULL, CFSTRING },
735 { SC_10_5, NETPROP IPSEC, SHAREDSECRET ENCRYPTION, NULL, CFSTRING },
736 { SC_10_6_IPHONE_2_0, NETPROP IPSEC, CONNECTTIME, NULL, CFNUMBER },
737 { SC_10_6_IPHONE_2_0, NETPROP IPSEC, REMOTEADDRESS, NULL, CFSTRING },
738 { SC_10_6_IPHONE_2_0, NETPROP IPSEC, STATUS, STATUS, CFNUMBER },
739 { SC_10_6_IPHONE_2_0, NETPROP IPSEC, XAUTH ENABLED, NULL, CFNUMBER_BOOL },
740 { SC_10_6_IPHONE_2_0, NETPROP IPSEC, XAUTH NAME, NULL, CFSTRING },
741 { SC_10_6_IPHONE_2_0, NETPROP IPSEC, XAUTH PASSWORD, NULL, CFSTRING },
742 { SC_10_6_IPHONE_2_0, NETPROP IPSEC, XAUTH PASSWORD ENCRYPTION, NULL, CFSTRING },
743 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP IPSEC, DISCONNECTONWAKE, NULL, CFNUMBER_BOOL },
744 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP IPSEC, DISCONNECTONWAKETIMER, NULL, CFNUMBER },
745 { COMMENT, "", NULL, NULL, NULL },
746 { COMMENT, "--- " KEY_PREFIX NETPROP IPSEC AUTHENTICATIONMETHOD " values ---", NULL, NULL, NULL },
747 { SC_10_5, NETVAL IPSEC AUTHENTICATIONMETHOD, SHAREDSECRET, NULL, NULL },
748 { SC_10_5, NETVAL IPSEC AUTHENTICATIONMETHOD, CERTIFICATE, NULL, NULL },
749 { SC_10_5, NETVAL IPSEC AUTHENTICATIONMETHOD, HYBRID, NULL, NULL },
750 { COMMENT, "", NULL, NULL, NULL },
751 { COMMENT, "--- " KEY_PREFIX NETPROP IPSEC LOCALIDENTIFIER TYPE " values ---", NULL, NULL, NULL },
752 { SC_10_5, NETVAL IPSEC LOCALIDENTIFIER TYPE, KEYID, NULL, NULL },
753 { COMMENT, "", NULL, NULL, NULL },
754 { COMMENT, "--- " KEY_PREFIX NETPROP IPSEC SHAREDSECRET ENCRYPTION " values ---", NULL, NULL, NULL },
755 { SC_10_5, NETVAL IPSEC SHAREDSECRET ENCRYPTION, KEYCHAIN, NULL, NULL },
756 { COMMENT, "", NULL, NULL, NULL },
757 { COMMENT, "--- " KEY_PREFIX NETPROP IPSEC XAUTH PASSWORD ENCRYPTION " values ---", NULL, NULL, NULL },
758 { SC_10_6_IPHONE_2_0, NETVAL IPSEC XAUTH PASSWORD ENCRYPTION, KEYCHAIN, NULL, NULL },
759 { SC_10_6_IPHONE_3_0, NETVAL IPSEC XAUTH PASSWORD ENCRYPTION, PROMPT, NULL, NULL },
760 { COMMENT, "", NULL, NULL, NULL },
761
762 { GROUP_PRIVATE, NETPROP IPSEC, KEY_PREFIX NETENT IPSEC " Entity Keys", NULL, NULL },
763
764 { SC_10_6_IPHONE_3_0_PRIVATE, NETPROP IPSEC, LAST CAUSE, NULL, CFNUMBER },
765 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
766 { COMMENT_PRIVATE, "--- " ONDEMAND ": ---", NULL, NULL, NULL },
767 { SC_10_6_IPHONE_3_0_PRIVATE, NETPROP IPSEC, ONDEMAND ENABLED, NULL, CFNUMBER_BOOL },
768 { SC_10_6_IPHONE_3_0_PRIVATE, NETPROP IPSEC, ONDEMAND MATCH DOMAINS ALWAYS, NULL, CFARRAY_CFSTRING },
769 { SC_10_6_IPHONE_3_0_PRIVATE, NETPROP IPSEC, ONDEMAND MATCH DOMAINS ONRETRY, NULL, CFARRAY_CFSTRING },
770 { SC_10_6_IPHONE_3_0_PRIVATE, NETPROP IPSEC, ONDEMAND MATCH DOMAINS NEVER, NULL, CFARRAY_CFSTRING },
771 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
772
773 { GROUP, NETPROP IPV4, KEY_PREFIX NETENT IPV4 " Entity Keys", NULL, NULL },
774
775 { SC_10_1, NETPROP IPV4, ADDRESSES, NULL, CFARRAY_CFSTRING },
776 { SC_10_1, NETPROP IPV4, CONFIGMETHOD, NULL, CFSTRING },
777 { SC_10_1, NETPROP IPV4, DHCPCLIENTID, NULL, CFSTRING },
778 { SC_10_1, NETPROP IPV4, ROUTER, NULL, CFSTRING },
779 { SC_10_1, NETPROP IPV4, SUBNETMASKS, NULL, CFARRAY_CFSTRING },
780 { SC_10_1, NETPROP IPV4, DEST ADDRESSES, NULL, CFARRAY_CFSTRING },
781 { SC_10_1, NETPROP IPV4, BROADCAST ADDRESSES, NULL, CFARRAY_CFSTRING },
782 { COMMENT, "", NULL, NULL, NULL },
783 { COMMENT, "--- " KEY_PREFIX NETPROP IPV4 CONFIGMETHOD " values ---", NULL, NULL, NULL },
784 { SC_10_6_IPHONE_2_0, NETVAL IPV4 CONFIGMETHOD, AUTOMATIC, NULL, NULL },
785 { SC_10_1, NETVAL IPV4 CONFIGMETHOD, BOOTP, NULL, NULL },
786 { SC_10_1, NETVAL IPV4 CONFIGMETHOD, DHCP, NULL, NULL },
787 { SC_10_1, NETVAL IPV4 CONFIGMETHOD, INFORM, NULL, NULL },
788 { SC_10_2, NETVAL IPV4 CONFIGMETHOD, LINKLOCAL, NULL, NULL },
789 { SC_10_1, NETVAL IPV4 CONFIGMETHOD, MANUAL, NULL, NULL },
790 { SC_10_1, NETVAL IPV4 CONFIGMETHOD, PPP, NULL, NULL },
791 { COMMENT, "", NULL, NULL, NULL },
792
793 { GROUP_PRIVATE, NETPROP IPV4, KEY_PREFIX NETENT IPV4 " Entity Keys", NULL, NULL },
794 { SC_10_10_IPHONE_8_0_PRIVATE, NETPROP IPV4, ADDITIONAL ROUTES, NULL, CFARRAY_CFDICTIONARY },
795 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP IPV4, EXCLUDED ROUTES, NULL, CFARRAY_CFDICTIONARY },
796 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP IPV4, INCLUDED ROUTES, NULL, CFARRAY_CFDICTIONARY },
797 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
798 { COMMENT_PRIVATE, "--- " KEY_PREFIX NETPROP IPV4 CONFIGMETHOD " values ---", NULL, NULL, NULL },
799 { SC_10_5_PRIVATE, NETVAL IPV4 CONFIGMETHOD, FAILOVER, NULL, NULL },
800 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
801 { COMMENT_PRIVATE,
802 "--- "
803 KEY_PREFIX NETPROP IPV4 ADDITIONAL ROUTES ", "
804 KEY_PREFIX NETPROP IPV4 EXCLUDED ROUTES ", "
805 KEY_PREFIX NETPROP IPV4 INCLUDED ROUTES
806 " [CFDictionary] keys ---", NULL, NULL, NULL },
807 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP IPV4 ROUTE, DESTINATION ADDRESS, NULL, CFSTRING },
808 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP IPV4 ROUTE, SUBNETMASK, NULL, CFSTRING },
809 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP IPV4 ROUTE, GATEWAY ADDRESS, NULL, CFSTRING },
810 { SC_10_10_IPHONE_8_0_PRIVATE, NETPROP IPV4 ROUTE, INTERFACENAME, NULL, CFSTRING },
811 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
812 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP IPV4, ARP RESOLVED HARDWARE ADDRESS, NULL, CFSTRING },
813 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP IPV4, ARP RESOLVED IP ADDRESS, NULL, CFSTRING },
814 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
815
816 { GROUP, NETPROP IPV6, KEY_PREFIX NETENT IPV6 " Entity Keys", NULL, NULL },
817
818 { SC_10_1, NETPROP IPV6, ADDRESSES, NULL, CFARRAY_CFSTRING },
819 { SC_10_1, NETPROP IPV6, CONFIGMETHOD, NULL, CFSTRING },
820 { SC_10_3, NETPROP IPV6, DEST ADDRESSES, NULL, CFARRAY_CFSTRING },
821 { SC_10_3, NETPROP IPV6, FLAGS, NULL, CFNUMBER },
822 { SC_10_3, NETPROP IPV6, PREFIXLENGTH, NULL, CFARRAY_CFNUMBER },
823 { SC_10_3, NETPROP IPV6, ROUTER, NULL, CFSTRING },
824 { COMMENT, "", NULL, NULL, NULL },
825 { COMMENT, "--- " KEY_PREFIX NETPROP IPV6 CONFIGMETHOD " values ---", NULL, NULL, NULL },
826 { SC_10_3, NETVAL IPV6 CONFIGMETHOD, AUTOMATIC, NULL, NULL },
827 { SC_10_7_IPHONE_4_0, NETVAL IPV6 CONFIGMETHOD, LINKLOCAL, NULL, NULL },
828 { SC_10_3, NETVAL IPV6 CONFIGMETHOD, MANUAL, NULL, NULL },
829 { SC_10_3, NETVAL IPV6 CONFIGMETHOD, ROUTERADVERTISEMENT, NULL, NULL },
830 { SC_10_3, NETVAL IPV6 CONFIGMETHOD, STF, NULL, NULL },
831 { COMMENT, "", NULL, NULL, NULL },
832
833 { GROUP_PRIVATE, NETPROP IPV6, KEY_PREFIX NETENT IPV6 " Entity Keys", NULL, NULL },
834 { SC_10_10_IPHONE_8_0_PRIVATE, NETPROP IPV6, ADDITIONAL ROUTES, NULL, CFARRAY_CFDICTIONARY },
835 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP IPV6, EXCLUDED ROUTES, NULL, CFARRAY_CFDICTIONARY },
836 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP IPV6, INCLUDED ROUTES, NULL, CFARRAY_CFDICTIONARY },
837 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
838 { COMMENT_PRIVATE,
839 "--- "
840 KEY_PREFIX NETPROP IPV6 ADDITIONAL ROUTES ", "
841 KEY_PREFIX NETPROP IPV6 INCLUDED ROUTES ", "
842 KEY_PREFIX NETPROP IPV6 EXCLUDED ROUTES
843 " [CFDictionary] keys ---", NULL, NULL, NULL },
844 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP IPV6 ROUTE, DESTINATION ADDRESS, NULL, CFSTRING },
845 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP IPV6 ROUTE, PREFIXLENGTH, NULL, CFNUMBER },
846 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP IPV6 ROUTE, GATEWAY ADDRESS, NULL, CFSTRING },
847 { SC_10_10_IPHONE_8_0_PRIVATE, NETPROP IPV6 ROUTE, INTERFACENAME, NULL, CFSTRING },
848 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
849
850 { GROUP, NETPROP STF, KEY_PREFIX NETENT STF " Entity Keys", NULL, NULL },
851
852 { SC_10_3, NETPROP STF, RELAY, NULL, CFSTRING },
853 { COMMENT, "", NULL, NULL, NULL },
854
855 { GROUP, NETPROP LINK, KEY_PREFIX NETENT LINK " Entity Keys", NULL, NULL },
856
857 { SC_10_1, NETPROP LINK, ACTIVE, NULL, CFBOOLEAN },
858 { SC_10_2, NETPROP LINK, DETACHING, NULL, CFBOOLEAN },
859 { COMMENT, "", NULL, NULL, NULL },
860
861 { GROUP_PRIVATE, NETPROP LINK, KEY_PREFIX NETENT LINK " Entity Keys", NULL, NULL },
862 { SC_10_10_IPHONE_8_0_PRIVATE, NETPROP LINK, EXPENSIVE, NULL, CFBOOLEAN },
863 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
864
865 { GROUP_PRIVATE, NETPROP LINK, KEY_PREFIX NETENT LINKISSUES " Entity Keys", NULL, NULL },
866
867 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP LINKISSUES, MODULEID, NULL, CFDATA },
868 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP LINKISSUES, INFO, NULL, CFDATA },
869 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP LINKISSUES, TIMESTAMP, NULL, CFDATE },
870 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
871
872 { GROUP_PRIVATE, NETPROP LINK, KEY_PREFIX NETENT LINKQUALITY " Entity Keys", NULL, NULL },
873
874 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP, LINKQUALITY, NULL, CFNUMBER},
875 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
876
877 { GROUP, NETPROP MODEM, KEY_PREFIX NETENT MODEM " (Hardware) Entity Keys", NULL, NULL },
878
879 { SC_10_5, NETPROP MODEM, ACCESSPOINTNAME, NULL, CFSTRING },
880 { SC_10_5, NETPROP MODEM, CONNECTION PERSONALITY, NULL, CFSTRING },
881 { SC_10_1, NETPROP MODEM, CONNECTION SCRIPT, NULL, CFSTRING },
882 { SC_10_2, NETPROP MODEM, CONNECTSPEED, NULL, CFNUMBER },
883 { SC_10_1, NETPROP MODEM, DATACOMPRESSION, NULL, CFNUMBER_BOOL },
884 { SC_10_5, NETPROP MODEM, DEVICE CONTEXTID, NULL, CFSTRING },
885 { SC_10_5, NETPROP MODEM, DEVICE MODEL, NULL, CFSTRING },
886 { SC_10_5, NETPROP MODEM, DEVICE VENDOR, NULL, CFSTRING },
887 { SC_10_1, NETPROP MODEM, DIALMODE, NULL, CFSTRING },
888 { SC_10_1, NETPROP MODEM, ERRORCORRECTION, NULL, CFNUMBER_BOOL },
889 { SC_10_2, NETPROP MODEM, HOLD CALLWAITINGAUDIBLEALERT, NULL, CFNUMBER_BOOL },
890 { SC_10_2, NETPROP MODEM, HOLD DISCONNECTONANSWER, NULL, CFNUMBER_BOOL },
891 { SC_10_2, NETPROP MODEM, HOLD ENABLED, NULL, CFNUMBER_BOOL },
892 { SC_10_2, NETPROP MODEM, HOLD REMINDER, NULL, CFNUMBER_BOOL },
893 { SC_10_2, NETPROP MODEM, HOLD REMINDERTIME, NULL, CFNUMBER },
894 { SC_10_2, NETPROP MODEM, NOTE, NULL, CFSTRING },
895 { SC_10_1, NETPROP MODEM, PULSEDIAL, NULL, CFNUMBER_BOOL },
896 { SC_10_1, NETPROP MODEM, SPEAKER, NULL, CFNUMBER_BOOL },
897 { SC_10_1, NETPROP MODEM, SPEED, NULL, CFNUMBER },
898 { COMMENT, "", NULL, NULL, NULL },
899 { COMMENT, "--- " KEY_PREFIX NETPROP MODEM DIALMODE " values ---", NULL, NULL, NULL },
900 { SC_10_1, NETVAL MODEM DIALMODE, IGNOREDIALTONE, NULL, NULL },
901 { SC_10_1, NETVAL MODEM DIALMODE, MANUAL, NULL, NULL },
902 { SC_10_1, NETVAL MODEM DIALMODE, WAITFORDIALTONE, NULL, NULL },
903 { COMMENT, "", NULL, NULL, NULL },
904
905 { GROUP_DEPRECATED, NETPROP NETINFO, KEY_PREFIX NETENT NETINFO " Entity Keys", NULL, NULL },
906
907 { DEFINE, "#if", "!TARGET_OS_IPHONE", NULL, NULL },
908 { SC_10_1_10_5, NETPROP NETINFO, BINDINGMETHODS, NULL, CFSTRING },
909 { SC_10_1_10_5, NETPROP NETINFO, SERVER ADDRESSES, NULL, CFARRAY_CFSTRING },
910 { SC_10_1_10_5, NETPROP NETINFO, SERVER TAGS, NULL, CFARRAY_CFSTRING },
911 { SC_10_1_10_5, NETPROP NETINFO, BROADCAST SERVER TAG, NULL, CFSTRING },
912 { COMMENT_DEPRECATED, "", NULL, NULL, NULL },
913 { COMMENT_DEPRECATED, "--- " KEY_PREFIX NETPROP NETINFO BINDINGMETHODS " values ---", NULL, NULL, NULL },
914 { SC_10_1_10_5, NETVAL NETINFO BINDINGMETHODS, BROADCAST, NULL, NULL },
915 { SC_10_1_10_5, NETVAL NETINFO BINDINGMETHODS, DHCP, NULL, NULL },
916 { SC_10_1_10_5, NETVAL NETINFO BINDINGMETHODS, MANUAL, NULL, NULL },
917 { COMMENT_DEPRECATED, "", NULL, NULL, NULL },
918 { COMMENT_DEPRECATED, "--- " KEY_PREFIX NETPROP NETINFO BROADCAST SERVER TAG " default value ---", NULL, NULL, NULL },
919 { SC_10_1_10_5, NETVAL NETINFO, DEFAULT SERVER TAG, "network", NULL },
920 { DEFINE, "#endif", "// !TARGET_OS_IPHONE", NULL, NULL },
921 { COMMENT_DEPRECATED, "", NULL, NULL, NULL },
922
923 { GROUP, NETPROP PPP, KEY_PREFIX NETENT PPP " Entity Keys", NULL, NULL },
924
925 { SC_10_3, NETPROP PPP, ACSP ENABLED, NULL, CFNUMBER_BOOL },
926 { SC_10_2, NETPROP PPP, CONNECTTIME, NULL, CFNUMBER },
927 { SC_10_2, NETPROP PPP, DEVICE LAST CAUSE, NULL, CFNUMBER },
928 { SC_10_1, NETPROP PPP, DIALONDEMAND, NULL, CFNUMBER_BOOL },
929 { SC_10_4, NETPROP PPP, DISCONNECTONFASTUSERSWITCH, NULL, CFNUMBER_BOOL },
930 { SC_10_1, NETPROP PPP, DISCONNECTONIDLE, NULL, CFNUMBER_BOOL },
931 { SC_10_1, NETPROP PPP, DISCONNECTONIDLETIMER, NULL, CFNUMBER },
932 { SC_10_1, NETPROP PPP, DISCONNECTONLOGOUT, NULL, CFNUMBER_BOOL },
933 { SC_10_2, NETPROP PPP, DISCONNECTONSLEEP, NULL, CFNUMBER_BOOL },
934 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP PPP, DISCONNECTONWAKE, NULL, CFNUMBER_BOOL },
935 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP PPP, DISCONNECTONWAKETIMER, NULL, CFNUMBER },
936 { SC_10_3, NETPROP PPP, DISCONNECTTIME, NULL, CFNUMBER },
937 { SC_10_1, NETPROP PPP, IDLEREMINDERTIMER, NULL, CFNUMBER },
938 { SC_10_1, NETPROP PPP, IDLEREMINDER, NULL, CFNUMBER_BOOL },
939 { SC_10_2, NETPROP PPP, LAST CAUSE, NULL, CFNUMBER },
940 { SC_10_1, NETPROP PPP, LOGFILE, NULL, CFSTRING },
941 { SC_10_2, NETPROP PPP, PLUGINS, NULL, CFARRAY_CFSTRING },
942 { SC_10_3, NETPROP PPP, RETRYCONNECTTIME, NULL, CFNUMBER },
943 { SC_10_1, NETPROP PPP, SESSIONTIMER, NULL, CFNUMBER },
944 { SC_10_2, NETPROP PPP, STATUS, NULL, CFNUMBER },
945 { SC_10_2, NETPROP PPP, USE SESSIONTIMER, NULL, CFNUMBER_BOOL },
946 { SC_10_1, NETPROP PPP, VERBOSELOGGING, NULL, CFNUMBER_BOOL },
947 { COMMENT, "", NULL, NULL, NULL },
948
949 { COMMENT, "--- " AUTH ": ---", NULL, NULL, NULL },
950 { SC_10_3, NETPROP PPP, AUTH EAP PLUGINS, NULL, CFARRAY_CFSTRING },
951 { SC_10_1, NETPROP PPP, AUTH NAME, NULL, CFSTRING },
952 { SC_10_1, NETPROP PPP, AUTH PASSWORD, NULL, CFSTRING },
953 { SC_10_1, NETPROP PPP, AUTH PASSWORD ENCRYPTION, NULL, CFSTRING },
954 { SC_10_3, NETPROP PPP, AUTH PROMPT, NULL, CFSTRING },
955 { SC_10_1, NETPROP PPP, AUTH PROTOCOL, NULL, CFARRAY_CFSTRING },
956 { COMMENT, "", NULL, NULL, NULL },
957 { COMMENT, "--- " KEY_PREFIX NETPROP PPP AUTH PASSWORD ENCRYPTION " values ---", NULL, NULL, NULL },
958 { SC_10_3, NETVAL PPP AUTH PASSWORD ENCRYPTION, KEYCHAIN, NULL, NULL },
959 { SC_10_5, NETVAL PPP AUTH PASSWORD ENCRYPTION, TOKEN, NULL, NULL },
960 { COMMENT, "", NULL, NULL, NULL },
961 { COMMENT, "--- " KEY_PREFIX NETPROP PPP AUTH PROMPT " values ---", NULL, NULL, NULL },
962 { SC_10_3, NETVAL PPP AUTH PROMPT, BEFORE, NULL, CFSTRING },
963 { SC_10_3, NETVAL PPP AUTH PROMPT, AFTER, NULL, CFSTRING },
964 { COMMENT, "", NULL, NULL, NULL },
965 { COMMENT, "--- " KEY_PREFIX NETPROP PPP AUTH PROTOCOL " values ---", NULL, NULL, NULL },
966 { SC_10_1, NETVAL PPP AUTH PROTOCOL, CHAP, NULL, CFSTRING },
967 { SC_10_3, NETVAL PPP AUTH PROTOCOL, EAP, NULL, CFSTRING },
968 { SC_10_3, NETVAL PPP AUTH PROTOCOL, MSCHAP1, NULL, CFSTRING },
969 { SC_10_3, NETVAL PPP AUTH PROTOCOL, MSCHAP2, NULL, CFSTRING },
970 { SC_10_1, NETVAL PPP AUTH PROTOCOL, PAP, NULL, CFSTRING },
971 { COMMENT, "", NULL, NULL, NULL },
972
973 { COMMENT, "--- " COMM ": ---", NULL, NULL, NULL },
974 { SC_10_1, NETPROP PPP, COMM ALTERNATE REMOTEADDRESS, NULL, CFSTRING },
975 { SC_10_1, NETPROP PPP, COMM CONNECTDELAY, NULL, CFNUMBER },
976 { SC_10_1, NETPROP PPP, COMM DISPLAYTERMINALWINDOW, NULL, CFNUMBER_BOOL },
977 { SC_10_1, NETPROP PPP, COMM REDIALCOUNT, NULL, CFNUMBER },
978 { SC_10_1, NETPROP PPP, COMM REDIAL ENABLED, NULL, CFNUMBER_BOOL },
979 { SC_10_1, NETPROP PPP, COMM REDIALINTERVAL, NULL, CFNUMBER },
980 { SC_10_1, NETPROP PPP, COMM REMOTEADDRESS, NULL, CFSTRING },
981 { SC_10_1, NETPROP PPP, COMM TERMINALSCRIPT, NULL, CFSTRING },
982 { SC_10_2, NETPROP PPP, COMM USE TERMINALSCRIPT, NULL, CFNUMBER_BOOL },
983 { COMMENT, "", NULL, NULL, NULL },
984
985 { COMMENT, "--- " CCP ": ---", NULL, NULL, NULL },
986 { SC_10_2, NETPROP PPP, CCP ENABLED, NULL, CFNUMBER_BOOL },
987 { SC_10_4, NETPROP PPP, CCP MPPE40 ENABLED, NULL, CFNUMBER_BOOL },
988 { SC_10_4, NETPROP PPP, CCP MPPE128 ENABLED, NULL, CFNUMBER_BOOL },
989 { COMMENT, "", NULL, NULL, NULL },
990
991 { COMMENT, "--- " IPCP ": ---", NULL, NULL, NULL },
992 { SC_10_1, NETPROP PPP, IPCP COMPRESSIONVJ, NULL, CFNUMBER_BOOL },
993 { SC_10_4, NETPROP PPP, IPCP USE PEER DNS, NULL, CFNUMBER_BOOL },
994 { COMMENT, "", NULL, NULL, NULL },
995
996 { COMMENT, "--- " LCP ": ---", NULL, NULL, NULL },
997 { SC_10_1, NETPROP PPP, LCP ECHO ENABLED, NULL, CFNUMBER_BOOL },
998 { SC_10_1, NETPROP PPP, LCP ECHOFAILURE, NULL, CFNUMBER },
999 { SC_10_1, NETPROP PPP, LCP ECHOINTERVAL, NULL, CFNUMBER },
1000 { SC_10_1, NETPROP PPP, LCP COMPRESSIONACFIELD, NULL, CFNUMBER_BOOL },
1001 { SC_10_1, NETPROP PPP, LCP COMPRESSIONPFIELD, NULL, CFNUMBER_BOOL },
1002 { SC_10_1, NETPROP PPP, LCP MRU, NULL, CFNUMBER },
1003 { SC_10_1, NETPROP PPP, LCP MTU, NULL, CFNUMBER },
1004 { SC_10_1, NETPROP PPP, LCP RECEIVEACCM, NULL, CFNUMBER },
1005 { SC_10_1, NETPROP PPP, LCP TRANSMITACCM, NULL, CFNUMBER },
1006 { COMMENT, "", NULL, NULL, NULL },
1007
1008 { GROUP_PRIVATE, NETPROP PPP, KEY_PREFIX NETENT PPP " Entity Keys", NULL, NULL },
1009
1010 { COMMENT_PRIVATE, "--- " ONDEMAND ": ---", NULL, NULL, NULL },
1011 { SC_10_5_PRIVATE, NETPROP PPP, ONDEMAND DOMAINS, NULL, CFARRAY_CFSTRING },
1012 { SC_10_5_PRIVATE, NETPROP PPP, ONDEMAND ENABLED, NULL, CFNUMBER_BOOL },
1013 { SC_10_5_PRIVATE, NETPROP PPP, ONDEMAND HOSTNAME, NULL, CFSTRING }, // DEPRECATED, use kSCNetworkConnectionSelectionOptionOnDemandHostName
1014 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP PPP, ONDEMAND MATCH DOMAINS ALWAYS, NULL, CFARRAY_CFSTRING },
1015 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP PPP, ONDEMAND MATCH DOMAINS ONRETRY, NULL, CFARRAY_CFSTRING },
1016 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP PPP, ONDEMAND MATCH DOMAINS NEVER, NULL, CFARRAY_CFSTRING },
1017 { SC_10_5_PRIVATE, NETPROP PPP, ONDEMAND MODE, NULL, CFSTRING },
1018 { SC_10_5_PRIVATE, NETPROP PPP, ONDEMAND PRIORITY, NULL, CFSTRING },
1019 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1020 { COMMENT_PRIVATE, "--- " KEY_PREFIX NETPROP PPP ONDEMAND MODE " values ---", NULL, NULL, NULL },
1021 { SC_10_5_PRIVATE, NETVAL PPP ONDEMAND MODE, AGGRESSIVE, NULL, NULL },
1022 { SC_10_5_PRIVATE, NETVAL PPP ONDEMAND MODE, CONSERVATIVE, NULL, NULL },
1023 { SC_10_5_PRIVATE, NETVAL PPP ONDEMAND MODE, COMPATIBLE, NULL, NULL },
1024 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1025 { COMMENT_PRIVATE, "--- " KEY_PREFIX NETPROP PPP ONDEMAND PRIORITY " values ---", NULL, NULL, NULL },
1026 { SC_10_5_PRIVATE, NETVAL PPP ONDEMAND PRIORITY, DEFAULT, NULL, NULL },
1027 { SC_10_5_PRIVATE, NETVAL PPP ONDEMAND PRIORITY, HIGH, NULL, NULL },
1028 { SC_10_5_PRIVATE, NETVAL PPP ONDEMAND PRIORITY, LOW, NULL, NULL },
1029 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1030
1031 { GROUP, NETPROP PPPOE, KEY_PREFIX NETENT PPPOE " Entity Keys", NULL, NULL },
1032
1033 { COMMENT, "* RESERVED FOR FUTURE USE *", NULL, NULL, NULL },
1034 { COMMENT, "", NULL, NULL, NULL },
1035
1036 { GROUP, NETPROP PPPSERIAL, KEY_PREFIX NETENT PPPSERIAL " Entity Keys", NULL, NULL },
1037
1038 { COMMENT, "* RESERVED FOR FUTURE USE *", NULL, NULL, NULL },
1039 { COMMENT, "", NULL, NULL, NULL },
1040
1041 { GROUP, NETPROP PPTP, KEY_PREFIX NETENT PPTP " Entity Keys", NULL, NULL },
1042
1043 { COMMENT, "* RESERVED FOR FUTURE USE *", NULL, NULL, NULL },
1044 { COMMENT, "", NULL, NULL, NULL },
1045
1046 { GROUP, NETPROP L2TP, KEY_PREFIX NETENT L2TP " Entity Keys", NULL, NULL },
1047
1048 { SC_10_3, NETPROP L2TP, IPSEC SHAREDSECRET, NULL, CFSTRING },
1049 { SC_10_3, NETPROP L2TP, IPSEC SHAREDSECRET ENCRYPTION, NULL, CFSTRING },
1050 { SC_10_3, NETPROP L2TP, TRANSPORT, NULL, CFSTRING },
1051 { COMMENT, "", NULL, NULL, NULL },
1052 { COMMENT, "--- " KEY_PREFIX NETPROP L2TP IPSEC SHAREDSECRET ENCRYPTION " values ---", NULL, NULL, NULL },
1053 { SC_10_3, NETVAL L2TP IPSEC SHAREDSECRET ENCRYPTION, KEYCHAIN, NULL, NULL },
1054 { COMMENT, "", NULL, NULL, NULL },
1055 { COMMENT, "--- " KEY_PREFIX NETPROP L2TP TRANSPORT " values ---", NULL, NULL, NULL },
1056 { SC_10_3, NETVAL L2TP TRANSPORT, IP, NULL, NULL },
1057 { SC_10_3, NETVAL L2TP TRANSPORT, IPSEC, NULL, NULL },
1058 { COMMENT, "", NULL, NULL, NULL },
1059
1060 { GROUP, NETPROP PROXIES, KEY_PREFIX NETENT PROXIES " Entity Keys", NULL, NULL },
1061
1062 { SC_10_1, NETPROP PROXIES, EXCEPTIONSLIST, NULL, CFARRAY_CFSTRING },
1063 { SC_10_4, NETPROP PROXIES, EXCLUDESIMPLEHOSTNAMES, NULL, CFNUMBER_BOOL },
1064 { SC_10_1, NETPROP PROXIES, FTP ENABLE, NULL, CFNUMBER_BOOL },
1065 { SC_10_1, NETPROP PROXIES, FTP PASSIVE, NULL, CFNUMBER_BOOL },
1066 { SC_10_1, NETPROP PROXIES, FTP PORT, NULL, CFNUMBER },
1067 { SC_10_1, NETPROP PROXIES, FTP PROXY, NULL, CFSTRING },
1068 { SC_10_1, NETPROP PROXIES, GOPHER ENABLE, NULL, CFNUMBER_BOOL },
1069 { SC_10_1, NETPROP PROXIES, GOPHER PORT, NULL, CFNUMBER },
1070 { SC_10_1, NETPROP PROXIES, GOPHER PROXY, NULL, CFSTRING },
1071 { SC_10_1, NETPROP PROXIES, HTTP ENABLE, NULL, CFNUMBER_BOOL },
1072 { SC_10_1, NETPROP PROXIES, HTTP PORT, NULL, CFNUMBER },
1073 { SC_10_1, NETPROP PROXIES, HTTP PROXY, NULL, CFSTRING },
1074 { SC_10_1, NETPROP PROXIES, HTTPS ENABLE, NULL, CFNUMBER_BOOL },
1075 { SC_10_1, NETPROP PROXIES, HTTPS PORT, NULL, CFNUMBER },
1076 { SC_10_1, NETPROP PROXIES, HTTPS PROXY, NULL, CFSTRING },
1077 { SC_10_1, NETPROP PROXIES, RTSP ENABLE, NULL, CFNUMBER_BOOL },
1078 { SC_10_1, NETPROP PROXIES, RTSP PORT, NULL, CFNUMBER },
1079 { SC_10_1, NETPROP PROXIES, RTSP PROXY, NULL, CFSTRING },
1080 { SC_10_1, NETPROP PROXIES, SOCKS ENABLE, NULL, CFNUMBER_BOOL },
1081 { SC_10_1, NETPROP PROXIES, SOCKS PORT, NULL, CFNUMBER },
1082 { SC_10_1, NETPROP PROXIES, SOCKS PROXY, NULL, CFSTRING },
1083 { SC_10_4, NETPROP PROXIES, PROXY AUTOCONFIG ENABLE, NULL, CFNUMBER_BOOL },
1084 { SC_10_7_IPHONE_4_0, NETPROP PROXIES, PROXY AUTOCONFIG JAVASCRIPT, NULL, CFSTRING },
1085 { SC_10_4, NETPROP PROXIES, PROXY AUTOCONFIG URLSTRING, NULL, CFSTRING },
1086 { SC_10_4, NETPROP PROXIES, PROXY AUTODISCOVERY ENABLE, NULL, CFNUMBER_BOOL },
1087 { COMMENT, "", NULL, NULL, NULL },
1088
1089 { GROUP_PRIVATE, NETPROP PROXIES, KEY_PREFIX NETENT PROXIES " Entity Keys", NULL, NULL },
1090
1091 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP PROXIES, BYPASS ALLOWED, NULL, CFNUMBER_BOOL },
1092 { SC_10_9_IPHONE_6_0_PRIVATE, NETPROP PROXIES, FALLBACK ALLOWED, NULL, CFNUMBER_BOOL },
1093 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP PROXIES, SUPPLEMENTAL MATCH DOMAINS, NULL, CFARRAY_CFSTRING},
1094 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP PROXIES, SUPPLEMENTAL MATCH ORDERS, NULL, CFARRAY_CFNUMBER},
1095 { SC_10_11_IPHONE_9_0_PRIVATE, NETPROP PROXIES, SERVICE SPECIFIC, NULL, CFNUMBER_BOOL },
1096 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1097 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP PROXIES, SCOPED, "__SCOPED__", CFDICTIONARY},
1098 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP PROXIES, SERVICES, "__SERVICES__", CFDICTIONARY},
1099 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP PROXIES, SUPPLEMENTAL, "__SUPPLEMENTAL__", CFARRAY_CFDICTIONARY},
1100 { SC_10_7_IPHONE_5_0_PRIVATE, NETPROP PROXIES, SUPPLEMENTAL MATCH DOMAIN, "__MATCH_DOMAIN__", CFSTRING},
1101 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1102
1103 { GROUP_PRIVATE, NETPROP SERVICE, KEY_PREFIX NETENT SERVICE " Entity Keys", NULL, NULL },
1104
1105 { SC_10_6_IPHONE_2_0_PRIVATE, NETPROP SERVICE, PRIMARYRANK, NULL, CFSTRING },
1106 { SC_10_6_IPHONE_2_0_PRIVATE, NETPROP SERVICE, USERDEFINEDNAME, NULL, CFSTRING },
1107 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1108 { COMMENT_PRIVATE, "--- " KEY_PREFIX NETPROP SERVICE PRIMARYRANK " values ---", NULL, NULL, NULL },
1109 { SC_10_6_IPHONE_2_0_PRIVATE, NETVAL SERVICE PRIMARYRANK, FIRST, NULL },
1110 { SC_10_6_IPHONE_2_0_PRIVATE, NETVAL SERVICE PRIMARYRANK, LAST, NULL },
1111 { SC_10_6_IPHONE_2_0_PRIVATE, NETVAL SERVICE PRIMARYRANK, NEVER, NULL },
1112 { SC_10_10_IPHONE_8_0_PRIVATE, NETVAL SERVICE PRIMARYRANK, SCOPED, NULL },
1113 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1114
1115 { GROUP, NETPROP SMB, KEY_PREFIX NETENT SMB " Entity Keys", NULL, NULL },
1116
1117 { DEFINE, "#if", "!TARGET_OS_IPHONE", NULL, NULL },
1118 { SC_10_5, NETPROP SMB, NETBIOS NAME, NULL, CFSTRING },
1119 { SC_10_5, NETPROP SMB, NETBIOS NODE TYPE, NULL, CFSTRING },
1120 { SC_10_5_10_7, NETPROP SMB, NETBIOS SCOPE, NULL, CFSTRING },
1121 { SC_10_5, NETPROP SMB, WINS ADDRESSES, NULL, CFARRAY_CFSTRING },
1122 { SC_10_5, NETPROP SMB, WORKGROUP, NULL, CFSTRING },
1123 { COMMENT, "", NULL, NULL, NULL },
1124 { COMMENT, "--- " KEY_PREFIX NETPROP SMB NETBIOS NODE TYPE " values ---", NULL, NULL, NULL },
1125 { SC_10_5, NETVAL SMB NETBIOS NODE TYPE, BROADCAST, NULL },
1126 { SC_10_5, NETVAL SMB NETBIOS NODE TYPE, PEER, NULL },
1127 { SC_10_5, NETVAL SMB NETBIOS NODE TYPE, MIXED, NULL },
1128 { SC_10_5, NETVAL SMB NETBIOS NODE TYPE, HYBRID, NULL },
1129 { DEFINE, "#endif", "// !TARGET_OS_IPHONE", NULL, NULL },
1130 { COMMENT, "", NULL, NULL, NULL },
1131
1132 { GROUP_PRIVATE, NETPROP VPN, KEY_PREFIX NETENT VPN " Entity Keys", NULL, NULL },
1133
1134 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP VPN, APP RULES, NULL, CFARRAY_CFDICTIONARY },
1135 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP VPN, AUTH CREDENTIAL PASSWORD, NULL, CFSTRING },
1136 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, AUTH NAME, NULL, CFSTRING },
1137 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, AUTH PASSWORD, NULL, CFSTRING },
1138 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, AUTH PASSWORD ENCRYPTION, NULL, CFSTRING },
1139 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP VPN, AUTH PASSWORD PLUGIN TYPE, NULL, CFSTRING },
1140 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, AUTHENTICATIONMETHOD, NULL, CFSTRING },
1141 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, CONNECTTIME, NULL, CFSTRING },
1142 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, DISCONNECTONFASTUSERSWITCH, NULL, CFNUMBER_BOOL },
1143 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, DISCONNECTONIDLE, NULL, CFNUMBER_BOOL },
1144 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, DISCONNECTONIDLETIMER, NULL, CFNUMBER },
1145 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, DISCONNECTONLOGOUT, NULL, CFNUMBER_BOOL },
1146 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, DISCONNECTONSLEEP, NULL, CFNUMBER_BOOL },
1147 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP VPN, DISCONNECTONWAKE, NULL, CFNUMBER_BOOL },
1148 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP VPN, DISCONNECTONWAKETIMER, NULL, CFNUMBER },
1149 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, LOCALCERTIFICATE, NULL, CFDATA },
1150 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, LOGFILE, NULL, CFSTRING },
1151 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, MTU, NULL, CFNUMBER },
1152 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, ONDEMAND ENABLED, NULL, CFNUMBER_BOOL },
1153 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP VPN, ONDEMAND MATCH APP ENABLED, NULL, CFBOOLEAN },
1154 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, ONDEMAND MATCH DOMAINS ALWAYS, NULL, CFARRAY_CFSTRING },
1155 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, ONDEMAND MATCH DOMAINS ONRETRY, NULL, CFARRAY_CFSTRING },
1156 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, ONDEMAND MATCH DOMAINS NEVER, NULL, CFARRAY_CFSTRING },
1157 { SC_10_8_IPHONE_6_0_PRIVATE, NETPROP VPN, ONDEMAND RULES, NULL, CFARRAY_CFDICTIONARY },
1158 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP VPN, ONDEMAND SUSPENDED, NULL, CFNUMBER },
1159 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP VPN, PLUGIN CAPABILITY, NULL, CFSTRING },
1160 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, REMOTEADDRESS, NULL, CFSTRING },
1161 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, STATUS, NULL, CFNUMBER },
1162 { SC_10_7_IPHONE_4_0_PRIVATE, NETPROP VPN, VERBOSELOGGING, NULL, CFNUMBER_BOOL },
1163 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1164 { COMMENT_PRIVATE, "--- " KEY_PREFIX NETPROP VPN APP RULES " [CFDictionary] keys ---", NULL, NULL, NULL },
1165 { SC_10_9_IPHONE_7_0_PRIVATE, NETVAL VPN APP RULE, ACCOUNT IDENTIFIER MATCH, NULL, CFARRAY_CFSTRING },
1166 { SC_10_9_IPHONE_7_0_PRIVATE, NETVAL VPN APP RULE, DNS DOMAIN MATCH, NULL, CFARRAY_CFSTRING },
1167 { SC_10_9_IPHONE_7_0_PRIVATE, NETVAL VPN APP RULE, EXECUTABLE MATCH, NULL, CFARRAY_CFDICTIONARY },
1168 { SC_10_9_IPHONE_7_0_PRIVATE, NETVAL VPN APP RULE, IDENTIFIER, NULL, CFSTRING },
1169 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1170 { COMMENT_PRIVATE, "--- " KEY_PREFIX NETVAL VPN APP RULE EXECUTABLE MATCH " [CFDictionary] keys ---", NULL, NULL, NULL },
1171 { SC_10_9_IPHONE_7_0_PRIVATE, NETVAL VPN APP RULE EXECUTABLE, DESIGNATED REQUIREMENT, NULL, CFSTRING },
1172 { SC_10_9_IPHONE_7_0_PRIVATE, NETVAL VPN APP RULE EXECUTABLE, SIGNING IDENTIFIER, NULL, CFSTRING },
1173 { SC_10_9_IPHONE_7_0_PRIVATE, NETVAL VPN APP RULE EXECUTABLE, UUID, NULL, CFSTRING },
1174 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1175 { COMMENT_PRIVATE, "--- " KEY_PREFIX NETPROP VPN AUTHENTICATIONMETHOD " values ---", NULL, NULL, NULL },
1176 { SC_10_7_IPHONE_4_0_PRIVATE, NETVAL VPN AUTHENTICATIONMETHOD, PASSWORD, NULL, NULL },
1177 { SC_10_7_IPHONE_4_0_PRIVATE, NETVAL VPN AUTHENTICATIONMETHOD, CERTIFICATE, NULL, NULL },
1178 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1179 { COMMENT_PRIVATE, "--- " KEY_PREFIX NETPROP VPN AUTH PASSWORD ENCRYPTION " values ---", NULL, NULL, NULL },
1180 { SC_10_9_IPHONE_7_0_PRIVATE, NETVAL VPN AUTH PASSWORD ENCRYPTION, EXTERNAL, NULL, NULL },
1181 { SC_10_7_IPHONE_4_0_PRIVATE, NETVAL VPN AUTH PASSWORD ENCRYPTION, KEYCHAIN, NULL, NULL },
1182 { SC_10_7_IPHONE_4_0_PRIVATE, NETVAL VPN AUTH PASSWORD ENCRYPTION, PROMPT, NULL, NULL },
1183 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1184 { COMMENT_PRIVATE, "--- " KEY_PREFIX NETPROP VPN ONDEMAND RULES " [CFDictionary] keys ---", NULL, NULL, NULL },
1185 { SC_10_8_IPHONE_6_0_PRIVATE, NETPROP VPN ONDEMAND RULE, ACTION, NULL, CFSTRING },
1186 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP VPN ONDEMAND RULE, ACTION PARAMETERS, NULL, CFARRAY_CFDICTIONARY },
1187 { SC_10_8_IPHONE_6_0_PRIVATE, NETPROP VPN ONDEMAND RULE, DNS DOMAIN MATCH, NULL, CFARRAY_CFSTRING },
1188 { SC_10_8_IPHONE_6_0_PRIVATE, NETPROP VPN ONDEMAND RULE, DNS SERVER ADDRESS MATCH, NULL, CFARRAY_CFSTRING },
1189 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP VPN ONDEMAND RULE, SSID MATCH, NULL, CFARRAY_CFSTRING },
1190 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP VPN ONDEMAND RULE, INTERFACE TYPE MATCH, NULL, CFSTRING },
1191 { SC_10_8_IPHONE_6_0_PRIVATE, NETPROP VPN ONDEMAND RULE, URLSTRING PROBE, NULL, CFSTRING },
1192 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1193 { COMMENT_PRIVATE, "--- " KEY_PREFIX NETPROP VPN ONDEMAND RULE ACTION " values ---", NULL, NULL, NULL },
1194 { SC_10_8_IPHONE_6_0_PRIVATE, NETVAL VPN ONDEMAND RULE ACTION, ALLOW, NULL, NULL },
1195 { SC_10_8_IPHONE_6_0_PRIVATE, NETVAL VPN ONDEMAND RULE ACTION, IGNORE, NULL, NULL },
1196 { SC_10_8_IPHONE_6_0_PRIVATE, NETVAL VPN ONDEMAND RULE ACTION, CONNECT, NULL, NULL },
1197 { SC_10_8_IPHONE_6_0_PRIVATE, NETVAL VPN ONDEMAND RULE ACTION, DISCONNECT, NULL, NULL },
1198 { SC_10_9_IPHONE_7_0_PRIVATE, NETVAL VPN ONDEMAND RULE ACTION, EVALUATE CONNECTION, NULL, NULL },
1199 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1200 { COMMENT_PRIVATE, "--- " KEY_PREFIX NETPROP VPN ONDEMAND RULE ACTION PARAMETERS " [CFDictionary] keys ---", NULL, NULL, NULL },
1201 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP VPN ONDEMAND RULE ACTION PARAMETERS, DOMAIN ACTION, NULL, CFSTRING },
1202 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP VPN ONDEMAND RULE ACTION PARAMETERS, DOMAINS, NULL, CFARRAY_CFSTRING },
1203 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP VPN ONDEMAND RULE ACTION PARAMETERS, REQUIRED DNS SERVERS, NULL, CFARRAY_CFSTRING },
1204 { SC_10_9_IPHONE_7_0_PRIVATE, NETPROP VPN ONDEMAND RULE ACTION PARAMETERS, REQUIRED URLSTRING PROBE, NULL, CFSTRING },
1205 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1206 { COMMENT_PRIVATE, "--- " KEY_PREFIX NETPROP VPN ONDEMAND RULE ACTION PARAMETERS DOMAIN ACTION " values ---", NULL, NULL, NULL },
1207 { SC_10_9_IPHONE_7_0_PRIVATE, NETVAL VPN ONDEMAND RULE ACTION PARAMETERS DOMAIN ACTION, CONNECT IFNEEDED, NULL, NULL },
1208 { SC_10_9_IPHONE_7_0_PRIVATE, NETVAL VPN ONDEMAND RULE ACTION PARAMETERS DOMAIN ACTION, NEVER CONNECT, NULL, NULL },
1209 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1210 { COMMENT_PRIVATE, "--- " KEY_PREFIX NETPROP VPN ONDEMAND RULE INTERFACE TYPE MATCH " values ---", NULL, NULL, NULL },
1211 { SC_10_9_IPHONE_7_0_PRIVATE, NETVAL VPN ONDEMAND RULE INTERFACE TYPE MATCH, ETHERNET, NULL, NULL },
1212 { SC_10_9_IPHONE_7_0_PRIVATE, NETVAL VPN ONDEMAND RULE INTERFACE TYPE MATCH, WIFI, NULL, NULL },
1213 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1214 { COMMENT_PRIVATE, "--- " KEY_PREFIX NETPROP VPN PLUGIN CAPABILITY " values ---", NULL, NULL, NULL },
1215 { SC_10_9_IPHONE_7_0_PRIVATE, NETVAL VPN PLUGIN CAPABILITY, AUTH, NULL, NULL },
1216 { SC_10_9_IPHONE_7_0_PRIVATE, NETVAL VPN PLUGIN CAPABILITY, CONNECT, NULL, NULL },
1217 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1218
1219 { GROUP, USERSENT CONSOLEUSER, KEY_PREFIX COMP USERS " Entity Keys", NULL, NULL },
1220
1221 { DEFINE, "#if", "!TARGET_OS_IPHONE", NULL, NULL },
1222 { SC_10_1, USERSENT, CONSOLEUSER, NULL, NULL },
1223 { DEFINE, "#endif", "// !TARGET_OS_IPHONE", NULL, NULL },
1224 { COMMENT, "", NULL, NULL, NULL },
1225
1226 { GROUP, SYSTEMPROP COMPUTERNAME, KEY_PREFIX COMP SYSTEM " Properties", NULL, NULL },
1227
1228 { SC_10_1, SYSTEMPROP, COMPUTERNAME, NULL, CFSTRING },
1229 { SC_10_1, SYSTEMPROP, COMPUTERNAME ENCODING, NULL, CFNUMBER },
1230 { COMMENT, "", NULL, NULL, NULL },
1231
1232 { GROUP_PRIVATE, SYSTEMPROP COMPUTERNAME, KEY_PREFIX COMP SYSTEM " Properties", NULL, NULL },
1233
1234 { SC_10_5_PRIVATE, SYSTEMPROP, COMPUTERNAME REGION, NULL, CFNUMBER },
1235 { SC_10_5_PRIVATE, SYSTEMPROP, HOSTNAME, NULL, CFSTRING },
1236 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1237
1238 { GROUP, DYNAMICSTORE DOMAIN, "SCDynamicStore \"domain\" prefixes", NULL, NULL },
1239
1240 { SC_10_1, DYNAMICSTORE DOMAIN, FILE, "File:", NULL },
1241 { SC_10_1, DYNAMICSTORE DOMAIN, PLUGIN, "Plugin:", NULL },
1242 { SC_10_1, DYNAMICSTORE DOMAIN, SETUP, "Setup:", NULL },
1243 { SC_10_1, DYNAMICSTORE DOMAIN, STATE, "State:", NULL },
1244 { SC_10_1, DYNAMICSTORE DOMAIN, PREFS, "Prefs:", NULL },
1245 { COMMENT, "", NULL, NULL, NULL },
1246
1247 { GROUP, DYNAMICSTORE SETUPPROP, "Preference (\"location\") Keys", NULL, NULL },
1248
1249 { SC_10_1, DYNAMICSTORE SETUPPROP, CURRENTSET, NULL, CFSTRING },
1250 { SC_10_1, DYNAMICSTORE SETUPPROP, LAST UPDATED, NULL, NULL },
1251 { COMMENT, "", NULL, NULL, NULL },
1252
1253 { GROUP, DYNAMICSTORE NETPROP, "Common/shared Keys", NULL, NULL },
1254
1255 { SC_10_1, DYNAMICSTORE NETPROP, INTERFACES, NULL, CFARRAY_CFSTRING },
1256 { SC_10_1, DYNAMICSTORE NETPROP, PRIMARYINTERFACE, NULL, CFSTRING },
1257 { SC_10_1, DYNAMICSTORE NETPROP, PRIMARYSERVICE, NULL, CFSTRING },
1258 { SC_10_1, DYNAMICSTORE NETPROP, SERVICEIDS, NULL, CFARRAY_CFSTRING },
1259 // { COMMENT, "", NULL, NULL, NULL },
1260
1261 { GROUP_PRIVATE, VIRTUALNETWORKINTERFACES, "Virtual Network Interface Keys", NULL, NULL },
1262
1263 { SC_10_5_PRIVATE, VIRTUALPROP BOND, INTERFACES, NULL, CFARRAY_CFSTRING },
1264 { SC_10_5_PRIVATE, VIRTUALPROP BOND, MODE, NULL, CFNUMBER },
1265 { SC_10_5_PRIVATE, VIRTUALPROP BOND, OPTIONS, NULL, CFDICTIONARY },
1266 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1267 { SC_10_7_IPHONE_4_0_PRIVATE, VIRTUALPROP BRIDGE, INTERFACES, NULL, CFARRAY_CFSTRING },
1268 { SC_10_7_IPHONE_4_0_PRIVATE, VIRTUALPROP BRIDGE, OPTIONS, NULL, CFDICTIONARY },
1269 { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1270 { SC_10_5_PRIVATE, VIRTUALPROP VLAN, INTERFACE, NULL, CFSTRING },
1271 { SC_10_5_PRIVATE, VIRTUALPROP VLAN, TAG, NULL, CFNUMBER },
1272 { SC_10_5_PRIVATE, VIRTUALPROP VLAN, OPTIONS, NULL, CFDICTIONARY },
1273 // { COMMENT_PRIVATE, "", NULL, NULL, NULL },
1274
1275 //{ GROUP, "DEPRECATED", "Deprecated schema definition keys", NULL, NULL },
1276
1277 { DEFINE, "#if", "!TARGET_OS_IPHONE", NULL, NULL },
1278 { SC_10_1_10_4, USERSPROP CONSOLEUSER, NAME, NULL, CFSTRING },
1279 { SC_10_1_10_4, USERSPROP CONSOLEUSER, UID, NULL, CFNUMBER },
1280 { SC_10_1_10_4, USERSPROP CONSOLEUSER, GID, NULL, CFNUMBER },
1281 { DEFINE, "#endif", "// !TARGET_OS_IPHONE", NULL, NULL },
1282 // { COMMENT, "", NULL, NULL, NULL },
1283
1284 { END, NULL, NULL, NULL, NULL },
1285 };
1286
1287 enum {
1288 gen_header_e,
1289 gen_comments_e,
1290 gen_comments_private_e,
1291 gen_headerdoc_e,
1292 gen_headerdoc_private_e,
1293 gen_cfile_e,
1294 };
1295
1296 void
1297 print_comment(schemaDefinition *def)
1298 {
1299 char kbuf[256];
1300 char vbuf[256];
1301
1302 snprintf(kbuf, sizeof(kbuf), KEY_PREFIX "%s%s",
1303 def->prefix, def->key);
1304 snprintf(vbuf, sizeof(vbuf), "\"%s\"",
1305 def->value ? def->value : def->key);
1306
1307 if (def->type)
1308 printf(" * %-50s %-30s %s\n",
1309 kbuf, vbuf, def->type);
1310 else
1311 printf(" * %-50s %s\n",
1312 kbuf, vbuf);
1313
1314 return;
1315 }
1316
1317 void
1318 print_define(schemaDefinition *def)
1319 {
1320 printf("%s\t%s\n", def->prefix, def->key);
1321 return;
1322 }
1323
1324 void
1325 print_headerdoc(schemaDefinition *def)
1326 {
1327 char kbuf[256];
1328 char vbuf[256];
1329
1330 snprintf(kbuf, sizeof(kbuf), KEY_PREFIX "%s%s",
1331 def->prefix, def->key);
1332
1333 snprintf(vbuf, sizeof(vbuf), "\"%s\"",
1334 def->value ? def->value : def->key);
1335
1336
1337 printf("\n");
1338 printf("/*!\n");
1339 printf(" @const %s\n", kbuf);
1340 if (def->type) {
1341 printf(" @discussion Value is a %s\n", def->type);
1342 }
1343 printf(" */\n");
1344 printf("extern const CFStringRef %-49s", kbuf);
1345 switch (def->control) {
1346 case SC_10_1:
1347 printf(" __OSX_AVAILABLE_STARTING(__MAC_10_1,__IPHONE_2_0/*SPI*/);\n");
1348 break;
1349 case SC_10_2:
1350 printf(" __OSX_AVAILABLE_STARTING(__MAC_10_2,__IPHONE_2_0/*SPI*/);\n");
1351 break;
1352 case SC_10_3:
1353 printf(" __OSX_AVAILABLE_STARTING(__MAC_10_3,__IPHONE_2_0/*SPI*/);\n");
1354 break;
1355 case SC_10_1_10_4:
1356 printf(" __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_1,__MAC_10_4,__IPHONE_NA,__IPHONE_NA);\n");
1357 break;
1358 case SC_10_4:
1359 printf(" __OSX_AVAILABLE_STARTING(__MAC_10_4,__IPHONE_2_0/*SPI*/);\n");
1360 break;
1361 case SC_10_1_10_5:
1362 printf(" __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_1,__MAC_10_5,__IPHONE_NA,__IPHONE_NA);\n");
1363 break;
1364 case SC_10_5:
1365 printf(" __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_2_0/*SPI*/);\n");
1366 break;
1367 case SC_10_5_10_7:
1368 printf(" __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_5,__MAC_10_7,__IPHONE_NA,__IPHONE_NA);\n");
1369 break;
1370 case SC_10_5_PRIVATE:
1371 printf(" __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_2_0/*SPI*/);\n");
1372 break;
1373 case SC_10_1_10_6:
1374 printf(" __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_1,__MAC_10_6,__IPHONE_NA,__IPHONE_NA);\n");
1375 break;
1376 case SC_10_2_10_6:
1377 printf(" __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_2,__MAC_10_6,__IPHONE_NA,__IPHONE_NA);\n");
1378 break;
1379 case SC_10_1_10_9:
1380 printf(" __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_1,__MAC_10_9,__IPHONE_2_0/*SPI*/,__IPHONE_FUTURE/*SPI*/);\n");
1381 break;
1382 case SC_10_2_10_9:
1383 printf(" __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_2,__MAC_10_9,__IPHONE_2_0/*SPI*/,__IPHONE_FUTURE/*SPI*/);\n");
1384 break;
1385 case SC_10_3_10_9:
1386 printf(" __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_3,__MAC_10_9,__IPHONE_2_0/*SPI*/,__IPHONE_FUTURE/*SPI*/);\n");
1387 break;
1388 case SC_10_4_10_9:
1389 printf(" __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_4,__MAC_10_9,__IPHONE_2_0/*SPI*/,__IPHONE_FUTURE/*SPI*/);\n");
1390 break;
1391 case SC_10_6_IPHONE_2_0:
1392 case SC_10_6_IPHONE_2_0_PRIVATE:
1393 printf(" __OSX_AVAILABLE_STARTING(__MAC_10_6,__IPHONE_2_0/*SPI*/);\n");
1394 break;
1395 case SC_10_6_IPHONE_3_0:
1396 case SC_10_6_IPHONE_3_0_PRIVATE:
1397 printf(" __OSX_AVAILABLE_STARTING(__MAC_10_6,__IPHONE_3_0/*SPI*/);\n");
1398 break;
1399 case SC_10_7_IPHONE_4_0:
1400 case SC_10_7_IPHONE_4_0_PRIVATE:
1401 printf(" __OSX_AVAILABLE_STARTING(__MAC_10_7,__IPHONE_4_0/*SPI*/);\n");
1402 break;
1403 case SC_10_7_IPHONE_5_0_PRIVATE:
1404 printf(" __OSX_AVAILABLE_STARTING(__MAC_10_7,__IPHONE_5_0/*SPI*/);\n");
1405 break;
1406 case SC_10_8_IPHONE_6_0_PRIVATE:
1407 printf(" __OSX_AVAILABLE_STARTING(__MAC_10_8,__IPHONE_6_0/*SPI*/);\n");
1408 break;
1409 case SC_10_9_IPHONE_6_0_PRIVATE:
1410 printf(" __OSX_AVAILABLE_STARTING(__MAC_10_9,__IPHONE_6_0/*SPI*/);\n");
1411 break;
1412 case SC_10_9_IPHONE_7_0_PRIVATE:
1413 printf(" __OSX_AVAILABLE_STARTING(__MAC_10_9,__IPHONE_7_0/*SPI*/);\n");
1414 break;
1415 case SC_10_10_IPHONE_7_0_PRIVATE:
1416 printf(" __OSX_AVAILABLE_STARTING(__MAC_10_10,__IPHONE_7_0/*SPI*/);\n");
1417 break;
1418 case SC_10_10_IPHONE_8_0_PRIVATE:
1419 printf(" __OSX_AVAILABLE_STARTING(__MAC_10_10,__IPHONE_8_0/*SPI*/);\n");
1420 break;
1421 case SC_10_11_IPHONE_9_0_PRIVATE:
1422 printf(" __OSX_AVAILABLE_STARTING(__MAC_10_11,__IPHONE_9_0/*SPI*/);\n");
1423 break;
1424 case SC_IPHONE_2_0_PRIVATE:
1425 printf(" __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_2_0/*SPI*/);\n");
1426 break;
1427 default:
1428 printf("\n");
1429 break;
1430 }
1431
1432 printf("#define %s %s\n", kbuf, kbuf);
1433 return;
1434 }
1435
1436 void
1437 dump_names(int type)
1438 {
1439 int i;
1440
1441 for (i = 0; TRUE; i++) {
1442 switch (names[i].control) {
1443 case END: {
1444 goto done;
1445 }
1446
1447 case COMMENT: {
1448 switch (type) {
1449 case gen_comments_e:
1450 if (names[i].prefix) {
1451 if (strlen(names[i].prefix) > 0)
1452 printf(" * %s\n", names[i].prefix);
1453 else
1454 printf(" *\n");
1455 }
1456 break;
1457 default:
1458 break;
1459 }
1460 break;
1461 }
1462
1463 case COMMENT_PRIVATE: {
1464 switch (type) {
1465 case gen_comments_private_e:
1466 if (names[i].prefix) {
1467 if (strlen(names[i].prefix) > 0)
1468 printf(" * %s\n", names[i].prefix);
1469 else
1470 printf(" *\n");
1471 }
1472 break;
1473 default:
1474 break;
1475 }
1476 break;
1477 }
1478
1479 case COMMENT_DEPRECATED: {
1480 break;
1481 }
1482
1483 case DEFINE: {
1484 switch (type) {
1485 case gen_cfile_e:
1486 if ((strcmp(names[i].prefix, "#if") == 0) ||
1487 (strcmp(names[i].prefix, "#ifdef") == 0) ||
1488 (strcmp(names[i].prefix, "#ifndef") == 0))
1489 printf("\n");
1490 print_define(&names[i]);
1491 if (strcmp(names[i].prefix, "#endif") == 0)
1492 printf("\n");
1493 break;
1494 default:
1495 break;
1496 }
1497 break;
1498 }
1499
1500 case DEFINE_PRIVATE: {
1501 switch (type) {
1502 case gen_cfile_e:
1503 if ((strcmp(names[i].prefix, "#if") == 0) ||
1504 (strcmp(names[i].prefix, "#ifdef") == 0) ||
1505 (strcmp(names[i].prefix, "#ifndef") == 0))
1506 printf("\n");
1507 print_define(&names[i]);
1508 if (strcmp(names[i].prefix, "#endif") == 0)
1509 printf("\n");
1510 break;
1511 default:
1512 break;
1513 }
1514 break;
1515 }
1516
1517 case GROUP:
1518 case GROUP_DEPRECATED: {
1519 switch (type) {
1520 case gen_comments_e:
1521 if (names[i].control == GROUP) {
1522 if (names[i].key)
1523 printf(" * %s\n *\n", names[i].key);
1524 }
1525 break;
1526 case gen_headerdoc_e:
1527 if (names[i].prefix)
1528 printf("\n/*!\n @group %s\n */\n", names[i].key);
1529 break;
1530 default:
1531 break;
1532 }
1533 break;
1534 }
1535
1536 case GROUP_PRIVATE: {
1537 switch (type) {
1538 case gen_comments_private_e:
1539 if (names[i].key)
1540 printf(" * %s\n *\n", names[i].key);
1541 break;
1542 case gen_headerdoc_private_e:
1543 if (names[i].prefix)
1544 printf("\n/*!\n @group %s\n */\n", names[i].key);
1545 break;
1546 default:
1547 break;
1548 }
1549 break;
1550 }
1551
1552 default: {
1553 char kbuf[256];
1554 char vbuf[256];
1555
1556 switch (type) {
1557 case gen_header_e:
1558 snprintf(kbuf, sizeof(kbuf), KEY_PREFIX "%s%s",
1559 names[i].prefix, names[i].key);
1560
1561 if (names[i].value)
1562 snprintf(vbuf, sizeof(vbuf), "SCSTR(\"%s\")",
1563 names[i].value);
1564 else
1565 snprintf(vbuf, sizeof(vbuf), "SCSTR(\"%s\")",
1566 names[i].key);
1567
1568 printf("#define %-50s %s\n",
1569 kbuf, vbuf);
1570 break;
1571
1572 case gen_comments_e:
1573 switch (names[i].control) {
1574 case SC_10_1_10_4:
1575 case SC_10_1_10_5:
1576 case SC_10_1_10_6:
1577 case SC_10_2_10_6:
1578 case SC_10_1_10_9:
1579 case SC_10_2_10_9:
1580 case SC_10_3_10_9:
1581 case SC_10_4_10_9:
1582 // don't report deprecated keys
1583 break;
1584 case SC_10_5_PRIVATE:
1585 case SC_10_6_IPHONE_2_0_PRIVATE:
1586 case SC_10_6_IPHONE_3_0_PRIVATE:
1587 case SC_10_7_IPHONE_4_0_PRIVATE:
1588 case SC_10_7_IPHONE_5_0_PRIVATE:
1589 case SC_10_8_IPHONE_6_0_PRIVATE:
1590 case SC_10_9_IPHONE_6_0_PRIVATE:
1591 case SC_10_9_IPHONE_7_0_PRIVATE:
1592 case SC_10_10_IPHONE_7_0_PRIVATE:
1593 case SC_10_10_IPHONE_8_0_PRIVATE:
1594 case SC_10_11_IPHONE_9_0_PRIVATE:
1595 case SC_IPHONE_2_0_PRIVATE:
1596 // don't report private definitions
1597 break;
1598 default:
1599 print_comment(&names[i]);
1600 break;
1601 }
1602 break;
1603 case gen_comments_private_e:
1604 switch (names[i].control) {
1605 case SC_10_1_10_4:
1606 case SC_10_1_10_5:
1607 case SC_10_1_10_6:
1608 case SC_10_2_10_6:
1609 case SC_10_1_10_9:
1610 case SC_10_2_10_9:
1611 case SC_10_3_10_9:
1612 case SC_10_4_10_9:
1613 // don't report deprecated keys
1614 break;
1615 case SC_10_5_PRIVATE:
1616 case SC_10_6_IPHONE_2_0_PRIVATE:
1617 case SC_10_6_IPHONE_3_0_PRIVATE:
1618 case SC_10_7_IPHONE_4_0_PRIVATE:
1619 case SC_10_7_IPHONE_5_0_PRIVATE:
1620 case SC_10_8_IPHONE_6_0_PRIVATE:
1621 case SC_10_9_IPHONE_6_0_PRIVATE:
1622 case SC_10_9_IPHONE_7_0_PRIVATE:
1623 case SC_10_10_IPHONE_7_0_PRIVATE:
1624 case SC_10_10_IPHONE_8_0_PRIVATE:
1625 case SC_10_11_IPHONE_9_0_PRIVATE:
1626 case SC_IPHONE_2_0_PRIVATE:
1627 print_comment(&names[i]);
1628 break;
1629 default:
1630 // don't report public definitions
1631 break;
1632 }
1633 break;
1634
1635 case gen_headerdoc_e:
1636 switch (names[i].control) {
1637 case SC_10_5_PRIVATE:
1638 case SC_10_6_IPHONE_2_0_PRIVATE:
1639 case SC_10_6_IPHONE_3_0_PRIVATE:
1640 case SC_10_7_IPHONE_4_0_PRIVATE:
1641 case SC_10_7_IPHONE_5_0_PRIVATE:
1642 case SC_10_8_IPHONE_6_0_PRIVATE:
1643 case SC_10_9_IPHONE_6_0_PRIVATE:
1644 case SC_10_9_IPHONE_7_0_PRIVATE:
1645 case SC_10_10_IPHONE_7_0_PRIVATE:
1646 case SC_10_10_IPHONE_8_0_PRIVATE:
1647 case SC_10_11_IPHONE_9_0_PRIVATE:
1648 case SC_IPHONE_2_0_PRIVATE:
1649 // don't report private definitions
1650 break;
1651 default:
1652 print_headerdoc(&names[i]);
1653 break;
1654 }
1655 break;
1656 case gen_headerdoc_private_e:
1657 switch (names[i].control) {
1658 case SC_10_5_PRIVATE:
1659 case SC_10_6_IPHONE_2_0_PRIVATE:
1660 case SC_10_6_IPHONE_3_0_PRIVATE:
1661 case SC_10_7_IPHONE_4_0_PRIVATE:
1662 case SC_10_7_IPHONE_5_0_PRIVATE:
1663 case SC_10_8_IPHONE_6_0_PRIVATE:
1664 case SC_10_9_IPHONE_6_0_PRIVATE:
1665 case SC_10_9_IPHONE_7_0_PRIVATE:
1666 case SC_10_10_IPHONE_7_0_PRIVATE:
1667 case SC_10_10_IPHONE_8_0_PRIVATE:
1668 case SC_10_11_IPHONE_9_0_PRIVATE:
1669 case SC_IPHONE_2_0_PRIVATE:
1670 print_headerdoc(&names[i]);
1671 break;
1672 default:
1673 // don't report public definitions
1674 break;
1675 }
1676 break;
1677 case gen_cfile_e:
1678 snprintf(kbuf, sizeof(kbuf), KEY_PREFIX "%s%s",
1679 names[i].prefix, names[i].key);
1680
1681 if (names[i].value)
1682 printf("const CFStringRef %-48s = CFSTR(\"%s\");\n",
1683 kbuf, names[i].value);
1684 else
1685 printf("const CFStringRef %-48s = CFSTR(\"%s\");\n",
1686 kbuf, names[i].key);
1687 break;
1688 default:
1689 break;
1690 }
1691 break;
1692 }
1693 }
1694 }
1695 done:
1696 return;
1697 }
1698
1699 int
1700 main(int argc, char * argv[])
1701 {
1702 char * type = "";
1703
1704 if (argc >= 2)
1705 type = argv[1];
1706
1707 if (strcmp(type, "header") == 0) {
1708 printf("%s\n", copyright_string);
1709 printf("/*\n * This file is automatically generated\n * DO NOT EDIT!\n */\n\n");
1710
1711 printf("/*\n");
1712 dump_names(gen_comments_e);
1713 printf(" */\n\n\n");
1714
1715 printf("#ifndef\t_SCSCHEMADEFINITIONS_H\n");
1716 printf("#ifdef\tUSE_SYSTEMCONFIGURATION_PRIVATE_HEADERS\n");
1717 printf("#include <SystemConfiguration/_SCSchemaDefinitions.h>\n");
1718 printf("#else\t/* USE_SYSTEMCONFIGURATION_PRIVATE_HEADERS */\n");
1719 printf("#define\t_SCSCHEMADEFINITIONS_H\n");
1720 printf("\n");
1721
1722 printf("#include <Availability.h>\n");
1723 printf("#include <TargetConditionals.h>\n");
1724 printf("#include <CoreFoundation/CFString.h>\n");
1725 printf("\n");
1726
1727 printf("/*!\n");
1728 printf(" *\t@header SCSchemaDefinitions\n");
1729 printf(" */\n\n");
1730
1731
1732 printf("\n");
1733 printf("CF_ASSUME_NONNULL_BEGIN\n");
1734
1735 dump_names(gen_headerdoc_e);
1736
1737 printf("\n");
1738 printf("CF_ASSUME_NONNULL_END");
1739 printf("\n\n");
1740
1741 printf("#endif\t/* USE_SYSTEMCONFIGURATION_PRIVATE_HEADERS */\n");
1742 printf("#endif\t/* _SCSCHEMADEFINITIONS_H */\n");
1743 }
1744 else if (strcmp(type, "private") == 0) {
1745 printf("%s\n", copyright_string);
1746 printf("/*\n * This file is automatically generated\n * DO NOT EDIT!\n */\n\n");
1747
1748 printf("/*\n");
1749 dump_names(gen_comments_private_e);
1750 printf(" */\n\n\n");
1751
1752 printf("#ifndef _SCSCHEMADEFINITIONSPRIVATE_H\n");
1753 printf("#define _SCSCHEMADEFINITIONSPRIVATE_H\n");
1754 printf("\n");
1755
1756 printf("#include <SystemConfiguration/SCSchemaDefinitions.h>\n\n");
1757
1758 printf("/*!\n");
1759 printf(" *\t@header SCSchemaDefinitionsPrivate\n");
1760 printf(" */\n");
1761 dump_names(gen_headerdoc_private_e);
1762 printf("\n\n");
1763
1764 printf("#endif\t/* _SCSCHEMADEFINITIONSPRIVATE_H */\n");
1765 }
1766 else if (strcmp(type, "cfile") == 0) {
1767 printf("/*\n");
1768 printf(" * This file is automatically generated\n");
1769 printf(" * DO NOT EDIT!\n");
1770 printf(" */\n");
1771 printf("\n");
1772 printf("#include <Availability.h>\n");
1773 printf("#include <TargetConditionals.h>\n");
1774 printf("#include <CoreFoundation/CFString.h>\n");
1775 printf("\n");
1776 dump_names(gen_cfile_e);
1777 }
1778 exit(0);
1779 return (0);
1780 }
1781