X-Git-Url: https://git.saurik.com/apple/security.git/blobdiff_plain/5dd5f9ec28f304ca377c42fd7f711d6cf12b90e1..5c19dc3ae3bd8e40a9c028b0deddd50ff337692c:/Security/libsecurity_codesigning/lib/cskernel.h diff --git a/Security/libsecurity_codesigning/lib/cskernel.h b/Security/libsecurity_codesigning/lib/cskernel.h deleted file mode 100644 index 444981a6..00000000 --- a/Security/libsecurity_codesigning/lib/cskernel.h +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Copyright (c) 2006,2011,2014 Apple Inc. All Rights Reserved. - * - * @APPLE_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. - * - * The Original Code and all software distributed under the License are - * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER - * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. - * Please see the License for the specific language governing rights and - * limitations under the License. - * - * @APPLE_LICENSE_HEADER_END@ - */ - -// -// cskernel - Kernel implementation of the Code Signing Host Interface -// -#ifndef _H_CSKERNEL -#define _H_CSKERNEL - -#include "Code.h" -#include "StaticCode.h" -#include - -namespace Security { -namespace CodeSigning { - - -class ProcessCode; - - -// -// The nominal StaticCode representing the kernel on disk. -// This is barely used, since we don't validate the kernel (it's the root of trust) -// and we don't activate new kernels at runtime. -// -class KernelStaticCode : public SecStaticCode { -public: - KernelStaticCode(); - -private: -}; - - -// -// A SecCode that represents the system's running kernel. -// We usually only have one of those in the system at one time. :-) -// -class KernelCode : public SecCode { -public: - KernelCode(); - - SecCode *locateGuest(CFDictionaryRef attributes); - SecStaticCode *identifyGuest(SecCode *guest, CFDataRef *cdhash); - SecCodeStatus getGuestStatus(SecCode *guest); - void changeGuestStatus(SecCode *guest, SecCodeStatusOperation operation, CFDictionaryRef arguments); - - static KernelCode *active() { return globals().code; } - -public: - struct Globals { - Globals(); - SecPointer code; - SecPointer staticCode; - }; - static ModuleNexus globals; - -protected: - void identify(); - void csops(ProcessCode *proc, unsigned int op, void *addr = NULL, size_t length = 0); -}; - - -} // end namespace CodeSigning -} // end namespace Security - -#endif // !_H_CSKERNEL