]> git.saurik.com Git - apple/configd.git/blob - SystemConfiguration.fproj/SCDynamicStoreCopySpecificPrivate.h
configd-1061.120.2.tar.gz
[apple/configd.git] / SystemConfiguration.fproj / SCDynamicStoreCopySpecificPrivate.h
1 /*
2 * Copyright (c) 2003-2005, 2008, 2018 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 #ifndef _SCDYNAMICSTORECOPYSPECIFICPRIVATE_H
25 #define _SCDYNAMICSTORECOPYSPECIFICPRIVATE_H
26
27 #include <os/availability.h>
28 #include <sys/cdefs.h>
29 #include <CoreFoundation/CoreFoundation.h>
30 #include <SystemConfiguration/SCDynamicStore.h>
31
32
33 /*!
34 @header SCDynamicStoreCopySpecificPrivate
35 @discussion The following APIs allow an application to retrieve
36 console information.
37 */
38
39
40 __BEGIN_DECLS
41
42 /*
43 * Predefined keys for the console session dictionaries
44 */
45 extern const CFStringRef kSCConsoleSessionID /* value is CFNumber */
46 API_AVAILABLE(macos(10.3)) API_UNAVAILABLE(ios, tvos, watchos, bridgeos);
47 extern const CFStringRef kSCConsoleSessionUserName /* value is CFString */
48 API_AVAILABLE(macos(10.3)) API_UNAVAILABLE(ios, tvos, watchos, bridgeos);
49 extern const CFStringRef kSCConsoleSessionUID /* value is CFNumber (a uid_t) */
50 API_AVAILABLE(macos(10.3)) API_UNAVAILABLE(ios, tvos, watchos, bridgeos);
51 extern const CFStringRef kSCConsoleSessionConsoleSet /* value is CFNumber */
52 API_AVAILABLE(macos(10.3)) API_UNAVAILABLE(ios, tvos, watchos, bridgeos);
53 extern const CFStringRef kSCConsoleSessionOnConsole /* value is CFBoolean */
54 API_AVAILABLE(macos(10.3)) API_UNAVAILABLE(ios, tvos, watchos, bridgeos);
55 extern const CFStringRef kSCConsoleSessionLoginDone /* value is CFBoolean */
56 API_AVAILABLE(macos(10.3)) API_UNAVAILABLE(ios, tvos, watchos, bridgeos);
57 extern const CFStringRef kSCConsoleSessionSystemSafeBoot /* value is CFBoolean */
58 API_AVAILABLE(macos(10.3)) API_UNAVAILABLE(ios, tvos, watchos, bridgeos);
59 extern const CFStringRef kSCConsoleSessionLoginwindowSafeLogin /* value is CFBoolean */
60 API_AVAILABLE(macos(10.3)) API_UNAVAILABLE(ios, tvos, watchos, bridgeos);
61
62 /*!
63 @function SCDynamicStoreCopyConsoleInformation
64 @discussion Returns information about all console sessions on the system.
65 @param store An SCDynamicStoreRef that should be used for communication
66 with the server.
67 If NULL, a temporary session will be used.
68 @result An array of dictionaries containing information about each
69 console session on the system; NULL if no sessions are defined
70 or if an error was encountered.
71
72 The contents of the returned array match that of the CoreGraphics
73 CGSCopySessionList() SPI.
74
75 You must release the returned value.
76 */
77 CFArrayRef
78 SCDynamicStoreCopyConsoleInformation (
79 SCDynamicStoreRef store
80 ) API_AVAILABLE(macos(10.3)) API_UNAVAILABLE(ios, tvos, watchos, bridgeos);
81
82
83 __END_DECLS
84
85 #endif /* _SCDYNAMICSTORECOPYSPECIFICPRIVATE_H */