X-Git-Url: https://git.saurik.com/apple/security.git/blobdiff_plain/fa7225c82381bac4432a6edf16f53b5370238d85..02b2aca600d4a0fe6fb259262bd6808ef889acde:/OSX/libsecurity_codesigning/lib/cskernel.cpp diff --git a/OSX/libsecurity_codesigning/lib/cskernel.cpp b/OSX/libsecurity_codesigning/lib/cskernel.cpp index c4d579f7..0eca9653 100644 --- a/OSX/libsecurity_codesigning/lib/cskernel.cpp +++ b/OSX/libsecurity_codesigning/lib/cskernel.cpp @@ -76,6 +76,7 @@ KernelStaticCode::KernelStaticCode() // SecCode *KernelCode::locateGuest(CFDictionaryRef attributes) { +#if TARGET_OS_OSX CFNumberRef pidNumber = NULL; CFDataRef auditData = NULL; cfscan(attributes, "{%O=%NO}", kSecGuestAttributePid, &pidNumber); @@ -105,11 +106,14 @@ SecCode *KernelCode::locateGuest(CFDictionaryRef attributes) MacOSError::throwMe(errSecCSInvalidAttributeValues); try { - diskRep = new PidDiskRep(pid, infoPlist); + diskRep = new PidDiskRep(pid, audit, infoPlist); } catch (...) { } } return (new ProcessCode(pid, audit, diskRep))->retain(); +#else + MacOSError::throwMe(errSecCSUnimplemented); +#endif } @@ -171,7 +175,7 @@ SecCodeStatus KernelCode::getGuestStatus(SecCode *iguest) { if (ProcessCode *guest = dynamic_cast(iguest)) { uint32_t pFlags; - csops(guest, CS_OPS_STATUS, &pFlags); + csops(guest, CS_OPS_STATUS, &pFlags, sizeof(pFlags)); secinfo("kcode", "guest %p(%d) kernel status 0x%x", guest, guest->pid(), pFlags); return pFlags; } else