#include <Security/SecTrustedApplication.h>
#include <Security/SecTrustedApplicationPriv.h>
#include <security_keychain/Access.h>
+#include <security_utilities/casts.h>
+#include <utilities/SecCFRelease.h>
#include "SecBridge.h"
#include <sys/param.h>
-#undef secdebug
#include <utilities/SecCFWrappers.h>
const CFStringRef kSecACLAuthorizationChangeACL = CFSTR("ACLAuthorizationChangeACL");
const CFStringRef kSecACLAuthorizationChangeOwner = CFSTR("ACLAuthorizationChangeOwner");
+const CFStringRef kSecACLAuthorizationPartitionID = CFSTR("ACLAuthorizationPartitionID");
+const CFStringRef kSecACLAuthorizationIntegrity = CFSTR("ACLAuthorizationIntegrity");
static CFArrayRef copyTrustedAppListFromBundle(CFStringRef bundlePath, CFStringRef trustedAppListFileName);
kSecACLAuthorizationKeychainItemDelete,
kSecACLAuthorizationChangeACL,
- kSecACLAuthorizationChangeOwner
-
+ kSecACLAuthorizationChangeOwner,
+ kSecACLAuthorizationPartitionID,
+ kSecACLAuthorizationIntegrity
};
static sint32 gValues[] =
CSSM_ACL_AUTHORIZATION_DB_MODIFY,
CSSM_ACL_AUTHORIZATION_DB_DELETE,
CSSM_ACL_AUTHORIZATION_CHANGE_ACL,
- CSSM_ACL_AUTHORIZATION_CHANGE_OWNER
+ CSSM_ACL_AUTHORIZATION_CHANGE_OWNER,
+ CSSM_ACL_AUTHORIZATION_PARTITION_ID,
+ CSSM_ACL_AUTHORIZATION_INTEGRITY
};
static
{
result = (CFStringRef)CFDictionaryGetValue(gTagMapping, aNum);
}
+ CFReleaseSafe(aNum);
return result;
}
CSSM_ACL_PROCESS_SUBJECT_SELECTOR selector =
{
CSSM_ACL_PROCESS_SELECTOR_CURRENT_VERSION, // selector version
- ownerType,
+ int_cast<UInt32, uint16>(ownerType),
userId,
groupId
};