X-Git-Url: https://git.saurik.com/apple/security.git/blobdiff_plain/fa7225c82381bac4432a6edf16f53b5370238d85..0d4552ce43ff8bf2e8666a9c5c44c3590eb117a8:/OSX/libsecurity_codesigning/lib/csprocess.cpp diff --git a/OSX/libsecurity_codesigning/lib/csprocess.cpp b/OSX/libsecurity_codesigning/lib/csprocess.cpp index 8e208c06..80b58521 100644 --- a/OSX/libsecurity_codesigning/lib/csprocess.cpp +++ b/OSX/libsecurity_codesigning/lib/csprocess.cpp @@ -37,7 +37,7 @@ namespace CodeSigning { // Construct a running process representation // ProcessCode::ProcessCode(pid_t pid, const audit_token_t* token, PidDiskRep *pidDiskRep /*= NULL */) - : GenericCode(KernelCode::active()), mPid(pid), mPidBased(pidDiskRep) + : SecCode(KernelCode::active()), mPid(pid), mPidBased(pidDiskRep) { if (token) mAudit = new audit_token_t(*token); @@ -46,12 +46,6 @@ ProcessCode::ProcessCode(pid_t pid, const audit_token_t* token, PidDiskRep *pidD } -mach_port_t ProcessCode::getHostingPort() -{ - return SecurityServer::ClientSession().hostingPort(pid()); -} - - int ProcessCode::csops(unsigned int ops, void *addr, size_t size) { // pass pid and audit token both if we have it, or just the pid if we don't @@ -84,7 +78,10 @@ CFDictionaryRef ProcessDynamicCode::infoDictionary() { if (mGuest->pidBased()->supportInfoPlist()) return SecStaticCode::infoDictionary(); - return makeCFDictionary(0); + if (!mEmptyInfoDict) { + mEmptyInfoDict.take(makeCFDictionary(0)); + } + return mEmptyInfoDict; } void ProcessDynamicCode::validateComponent(CodeDirectory::SpecialSlot slot, OSStatus fail /* = errSecCSSignatureFailed */)