X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/55e303ae13a4cf49d70f2294092726f2fffb9ef2..743345f9a4b36f7e2f9ba37691e70c50baecb56e:/iokit/Kernel/RootDomainUserClient.h diff --git a/iokit/Kernel/RootDomainUserClient.h b/iokit/Kernel/RootDomainUserClient.h index 545d3b2cd..ac09ffbf0 100644 --- a/iokit/Kernel/RootDomainUserClient.h +++ b/iokit/Kernel/RootDomainUserClient.h @@ -1,16 +1,19 @@ /* * Copyright (c) 1998-2000 Apple Computer, Inc. All rights reserved. * - * @APPLE_LICENSE_HEADER_START@ - * - * Copyright (c) 1999-2003 Apple Computer, Inc. All Rights Reserved. + * @APPLE_OSREFERENCE_LICENSE_HEADER_START@ * * This file contains Original Code and/or Modifications of Original Code * as defined in and that are subject to the Apple Public Source License * Version 2.0 (the 'License'). You may not use this file except in - * compliance with the License. Please obtain a copy of the License at - * http://www.opensource.apple.com/apsl/ and read it before using this - * file. + * compliance with the License. The rights granted to you under the License + * may not be used to create, or enable the creation or redistribution of, + * unlawful or unlicensed copies of an Apple operating system, or to + * circumvent, violate, or enable the circumvention or violation of, any + * terms of an Apple operating system software license agreement. + * + * Please obtain a copy of the License at + * http://www.opensource.apple.com/apsl/ and read it before using this file. * * The Original Code and all software distributed under the License are * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER @@ -20,7 +23,7 @@ * Please see the License for the specific language governing rights and * limitations under the License. * - * @APPLE_LICENSE_HEADER_END@ + * @APPLE_OSREFERENCE_LICENSE_HEADER_END@ */ /* * Copyright (c) 1999 Apple Computer, Inc. All rights reserved. @@ -43,19 +46,50 @@ class RootDomainUserClient : public IOUserClient { OSDeclareDefaultStructors(RootDomainUserClient) + friend class IOPMrootDomain; private: - IOPMrootDomain * fOwner; + IOPMrootDomain * fOwner; + task_t fOwningTask; + + IOReturn secureSleepSystem( uint32_t *return_code ); + + IOReturn secureSleepSystemOptions( const void *inOptions, + IOByteCount inOptionsSize, + uint32_t *returnCode); + + IOReturn secureSetAggressiveness( unsigned long type, + unsigned long newLevel, + int *return_code ); + + IOReturn secureSetMaintenanceWakeCalendar( + IOPMCalendarStruct *inCalendar, + uint32_t *returnCode); + + IOReturn secureSetUserAssertionLevels(uint32_t assertionBitfield); + + IOReturn secureGetSystemSleepType( uint32_t *sleepType ); public: - virtual IOReturn clientClose( void ); - - virtual IOExternalMethod * getTargetAndMethodForIndex( IOService ** targetP, UInt32 index ); + virtual IOReturn clientClose( void ) APPLE_KEXT_OVERRIDE; + + virtual IOReturn externalMethod( uint32_t selector, + IOExternalMethodArguments * arguments, + IOExternalMethodDispatch * dispatch, + OSObject * target, + void * reference ) APPLE_KEXT_OVERRIDE; - virtual bool start( IOService * provider ); + virtual bool start( IOService * provider ) APPLE_KEXT_OVERRIDE; + virtual bool initWithTask(task_t owningTask, void *security_id, + UInt32 type, OSDictionary * properties) APPLE_KEXT_OVERRIDE; + + // Unused - retained for symbol compatibility void setPreventative(UInt32 on_off, UInt32 types_of_sleep); + // Unused - retained for symbol compatibility + virtual IOExternalMethod * getTargetAndMethodForIndex( IOService ** targetP, UInt32 index ) APPLE_KEXT_OVERRIDE; + }; #endif /* ! _IOKIT_ROOTDOMAINUSERCLIENT_H */