1/* 2 * Copyright (c) 2003-2005, 2008 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 <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 */ 45extern const CFStringRef kSCConsoleSessionID /* value is CFNumber */ 46 __OSX_AVAILABLE_STARTING(__MAC_10_3,__IPHONE_NA); 47extern const CFStringRef kSCConsoleSessionUserName /* value is CFString */ 48 __OSX_AVAILABLE_STARTING(__MAC_10_3,__IPHONE_NA); 49extern const CFStringRef kSCConsoleSessionUID /* value is CFNumber (a uid_t) */ 50 __OSX_AVAILABLE_STARTING(__MAC_10_3,__IPHONE_NA); 51extern const CFStringRef kSCConsoleSessionConsoleSet /* value is CFNumber */ 52 __OSX_AVAILABLE_STARTING(__MAC_10_3,__IPHONE_NA); 53extern const CFStringRef kSCConsoleSessionOnConsole /* value is CFBoolean */ 54 __OSX_AVAILABLE_STARTING(__MAC_10_3,__IPHONE_NA); 55extern const CFStringRef kSCConsoleSessionLoginDone /* value is CFBoolean */ 56 __OSX_AVAILABLE_STARTING(__MAC_10_3,__IPHONE_NA); 57extern const CFStringRef kSCConsoleSessionSystemSafeBoot /* value is CFBoolean */ 58 __OSX_AVAILABLE_STARTING(__MAC_10_3,__IPHONE_NA); 59extern const CFStringRef kSCConsoleSessionLoginwindowSafeLogin /* value is CFBoolean */ 60 __OSX_AVAILABLE_STARTING(__MAC_10_3,__IPHONE_NA); 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 */ 77CFArrayRef 78SCDynamicStoreCopyConsoleInformation ( 79 SCDynamicStoreRef store 80 ) __OSX_AVAILABLE_STARTING(__MAC_10_3,__IPHONE_NA); 81 82 83__END_DECLS 84 85#endif /* _SCDYNAMICSTORECOPYSPECIFICPRIVATE_H */ 86