У меня есть код для проверки подписей кода в macOS:
// Get a code reference.
var codeOpt: SecCode? = nil
var err = SecCodeCopyGuestWithAttributes(nil, [kSecGuestAttributeAudit : sourceAppAuditToken] as NSDictionary, [], &codeOpt)
guard err == errSecSuccess, let code = codeOpt else {
return nil
}
// Convert that to a static code.
var staticCodeOpt: SecStaticCode? = nil
err = SecCodeCopyStaticCode(code, [] , &staticCodeOpt)
guard err == errSecSuccess, let staticCode = staticCodeOpt else {
return nil
}
// Get code signing information about that.
var infoOpt: CFDictionary? = nil
// this generates MacOS error: -25337 and CSSM Exception: -2147414013 CSSMERR_DL_MDS_ERROR
err = SecCodeCopySigningInformation(staticCode, SecCSFlags(rawValue: kSecCSInternalInformation ), &infoOpt)
guard err == errSecSuccess, let info = infoOpt as? [String:Any] else {
return nil
}
При вызове SecCodeCopySigningInformation
в системном журнале возникают следующие ошибки:
Ошибка MacOS: -25337
Исключение CSSM: -2147414013 CSSMERR_DL_MDS_ERROR
Кто-нибудь знает, почему существуют эти ошибки? Насколько я могу судить, мой код правильный.