Repository URL to install this package:
Version:
3.0.0 ▾
|
{
* Copyright (c) 2000-2010 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@
}
{ Pascal Translation: Jonas Maebe, <jonas@freepascal.org>, October 2009 }
{ Pascal Translation Update: Jonas Maebe <jonas@freepascal.org>, October 2012 }
{
Modified for use with Free Pascal
Version 308
Please report any bugs to <gpc@microbizz.nl>
}
{$ifc not defined MACOSALLINCLUDE or not MACOSALLINCLUDE}
{$mode macpas}
{$packenum 1}
{$macro on}
{$inline on}
{$calling mwpascal}
unit SecBase;
interface
{$setc UNIVERSAL_INTERFACES_VERSION := $0400}
{$setc GAP_INTERFACES_VERSION := $0308}
{$ifc not defined USE_CFSTR_CONSTANT_MACROS}
{$setc USE_CFSTR_CONSTANT_MACROS := TRUE}
{$endc}
{$ifc defined CPUPOWERPC and defined CPUI386}
{$error Conflicting initial definitions for CPUPOWERPC and CPUI386}
{$endc}
{$ifc defined FPC_BIG_ENDIAN and defined FPC_LITTLE_ENDIAN}
{$error Conflicting initial definitions for FPC_BIG_ENDIAN and FPC_LITTLE_ENDIAN}
{$endc}
{$ifc not defined __ppc__ and defined CPUPOWERPC32}
{$setc __ppc__ := 1}
{$elsec}
{$setc __ppc__ := 0}
{$endc}
{$ifc not defined __ppc64__ and defined CPUPOWERPC64}
{$setc __ppc64__ := 1}
{$elsec}
{$setc __ppc64__ := 0}
{$endc}
{$ifc not defined __i386__ and defined CPUI386}
{$setc __i386__ := 1}
{$elsec}
{$setc __i386__ := 0}
{$endc}
{$ifc not defined __x86_64__ and defined CPUX86_64}
{$setc __x86_64__ := 1}
{$elsec}
{$setc __x86_64__ := 0}
{$endc}
{$ifc not defined __arm__ and defined CPUARM}
{$setc __arm__ := 1}
{$elsec}
{$setc __arm__ := 0}
{$endc}
{$ifc defined cpu64}
{$setc __LP64__ := 1}
{$elsec}
{$setc __LP64__ := 0}
{$endc}
{$ifc defined __ppc__ and __ppc__ and defined __i386__ and __i386__}
{$error Conflicting definitions for __ppc__ and __i386__}
{$endc}
{$ifc defined __ppc__ and __ppc__}
{$setc TARGET_CPU_PPC := TRUE}
{$setc TARGET_CPU_PPC64 := FALSE}
{$setc TARGET_CPU_X86 := FALSE}
{$setc TARGET_CPU_X86_64 := FALSE}
{$setc TARGET_CPU_ARM := FALSE}
{$setc TARGET_OS_MAC := TRUE}
{$setc TARGET_OS_IPHONE := FALSE}
{$setc TARGET_IPHONE_SIMULATOR := FALSE}
{$setc TARGET_OS_EMBEDDED := FALSE}
{$elifc defined __ppc64__ and __ppc64__}
{$setc TARGET_CPU_PPC := FALSE}
{$setc TARGET_CPU_PPC64 := TRUE}
{$setc TARGET_CPU_X86 := FALSE}
{$setc TARGET_CPU_X86_64 := FALSE}
{$setc TARGET_CPU_ARM := FALSE}
{$setc TARGET_OS_MAC := TRUE}
{$setc TARGET_OS_IPHONE := FALSE}
{$setc TARGET_IPHONE_SIMULATOR := FALSE}
{$setc TARGET_OS_EMBEDDED := FALSE}
{$elifc defined __i386__ and __i386__}
{$setc TARGET_CPU_PPC := FALSE}
{$setc TARGET_CPU_PPC64 := FALSE}
{$setc TARGET_CPU_X86 := TRUE}
{$setc TARGET_CPU_X86_64 := FALSE}
{$setc TARGET_CPU_ARM := FALSE}
{$ifc defined(iphonesim)}
{$setc TARGET_OS_MAC := FALSE}
{$setc TARGET_OS_IPHONE := TRUE}
{$setc TARGET_IPHONE_SIMULATOR := TRUE}
{$elsec}
{$setc TARGET_OS_MAC := TRUE}
{$setc TARGET_OS_IPHONE := FALSE}
{$setc TARGET_IPHONE_SIMULATOR := FALSE}
{$endc}
{$setc TARGET_OS_EMBEDDED := FALSE}
{$elifc defined __x86_64__ and __x86_64__}
{$setc TARGET_CPU_PPC := FALSE}
{$setc TARGET_CPU_PPC64 := FALSE}
{$setc TARGET_CPU_X86 := FALSE}
{$setc TARGET_CPU_X86_64 := TRUE}
{$setc TARGET_CPU_ARM := FALSE}
{$setc TARGET_OS_MAC := TRUE}
{$setc TARGET_OS_IPHONE := FALSE}
{$setc TARGET_IPHONE_SIMULATOR := FALSE}
{$setc TARGET_OS_EMBEDDED := FALSE}
{$elifc defined __arm__ and __arm__}
{$setc TARGET_CPU_PPC := FALSE}
{$setc TARGET_CPU_PPC64 := FALSE}
{$setc TARGET_CPU_X86 := FALSE}
{$setc TARGET_CPU_X86_64 := FALSE}
{$setc TARGET_CPU_ARM := TRUE}
{ will require compiler define when/if other Apple devices with ARM cpus ship }
{$setc TARGET_OS_MAC := FALSE}
{$setc TARGET_OS_IPHONE := TRUE}
{$setc TARGET_IPHONE_SIMULATOR := FALSE}
{$setc TARGET_OS_EMBEDDED := TRUE}
{$elsec}
{$error __ppc__ nor __ppc64__ nor __i386__ nor __x86_64__ nor __arm__ is defined.}
{$endc}
{$ifc defined __LP64__ and __LP64__ }
{$setc TARGET_CPU_64 := TRUE}
{$elsec}
{$setc TARGET_CPU_64 := FALSE}
{$endc}
{$ifc defined FPC_BIG_ENDIAN}
{$setc TARGET_RT_BIG_ENDIAN := TRUE}
{$setc TARGET_RT_LITTLE_ENDIAN := FALSE}
{$elifc defined FPC_LITTLE_ENDIAN}
{$setc TARGET_RT_BIG_ENDIAN := FALSE}
{$setc TARGET_RT_LITTLE_ENDIAN := TRUE}
{$elsec}
{$error Neither FPC_BIG_ENDIAN nor FPC_LITTLE_ENDIAN are defined.}
{$endc}
{$setc ACCESSOR_CALLS_ARE_FUNCTIONS := TRUE}
{$setc CALL_NOT_IN_CARBON := FALSE}
{$setc OLDROUTINENAMES := FALSE}
{$setc OPAQUE_TOOLBOX_STRUCTS := TRUE}
{$setc OPAQUE_UPP_TYPES := TRUE}
{$setc OTCARBONAPPLICATION := TRUE}
{$setc OTKERNEL := FALSE}
{$setc PM_USE_SESSION_APIS := TRUE}
{$setc TARGET_API_MAC_CARBON := TRUE}
{$setc TARGET_API_MAC_OS8 := FALSE}
{$setc TARGET_API_MAC_OSX := TRUE}
{$setc TARGET_CARBON := TRUE}
{$setc TARGET_CPU_68K := FALSE}
{$setc TARGET_CPU_MIPS := FALSE}
{$setc TARGET_CPU_SPARC := FALSE}
{$setc TARGET_OS_UNIX := FALSE}
{$setc TARGET_OS_WIN32 := FALSE}
{$setc TARGET_RT_MAC_68881 := FALSE}
{$setc TARGET_RT_MAC_CFM := FALSE}
{$setc TARGET_RT_MAC_MACHO := TRUE}
{$setc TYPED_FUNCTION_POINTERS := TRUE}
{$setc TYPE_BOOL := FALSE}
{$setc TYPE_EXTENDED := FALSE}
{$setc TYPE_LONGLONG := TRUE}
uses MacTypes,CFBase;
{$endc} {not MACOSALLINCLUDE}
{$ifc TARGET_CPU_64 or TARGET_CPU_ARM}
{$packrecords C}
{$elsec}
{$ALIGN POWER}
{$endc} {TARGET_CPU_64}
{!
@header SecBase
SecBase contains common declarations for the Security functions.
}
{!
@typedef SecKeychainRef
@abstract Contains information about a keychain.
}
type
SecKeychainRef = ^OpaqueSecKeychainRef; { an opaque type }
OpaqueSecKeychainRef = record end;
SecKeychainRefPtr = ^SecKeychainRef; { when a var xx:SecKeychainRef parameter can be nil, it is changed to xx: SecKeychainRefPtr }
{!
@typedef SecKeychainItemRef
@abstract Contains information about a keychain item.
}
type
SecKeychainItemRef = ^OpaqueSecKeychainItemRef; { an opaque type }
OpaqueSecKeychainItemRef = record end;
SecKeychainItemRefPtr = ^SecKeychainItemRef; { when a var xx:SecKeychainItemRef parameter can be nil, it is changed to xx: SecKeychainItemRefPtr }
{!
@typedef SecKeychainSearchRef
@abstract Contains information about a keychain search.
}
type
SecKeychainSearchRef = ^OpaqueSecKeychainSearchRef; { an opaque type }
OpaqueSecKeychainSearchRef = record end;
SecKeychainSearchRefPtr = ^SecKeychainSearchRef; { when a var xx:SecKeychainSearchRef parameter can be nil, it is changed to xx: SecKeychainSearchRefPtr }
{!
@typedef SecKeychainAttrType
@abstract Represents a keychain attribute type.
}
type
SecKeychainAttrType = OSType;
{!
@struct SecKeychainAttribute
@abstract Contains keychain attributes.
@field tag A 4-byte attribute tag.
@field length The length of the buffer pointed to by data.
@field data A pointer to the attribute data.
}
type
SecKeychainAttribute = record
tag: SecKeychainAttrType;
length: UInt32;
data: UnivPtr;
end;
{!
@typedef SecKeychainAttributePtr
@abstract Represents a pointer to a keychain attribute structure.
}
SecKeychainAttributePtr = ^SecKeychainAttribute;
{!
@typedef SecKeychainAttributeList
@abstract Represents a list of keychain attributes.
@field count An unsigned 32-bit integer that represents the number of keychain attributes in the array.
@field attr A pointer to the first keychain attribute in the array.
}
type
SecKeychainAttributeListPtr = ^SecKeychainAttributeList;
SecKeychainAttributeList = record
count: UInt32;
attr: SecKeychainAttributePtr;
end;
{!
@typedef SecKeychainStatus
@abstract Represents the status of a keychain.
}
type
SecKeychainStatus = UInt32;
{!
@typedef SecTrustedApplicationRef
@abstract Contains information about a trusted application.
}
type
SecTrustedApplicationRef = ^OpaqueSecTrustedApplicationRef; { an opaque type }
OpaqueSecTrustedApplicationRef = record end;
{!
@typedef SecPolicyRef
@abstract Contains information about a policy.
}
type
SecPolicyRef = ^OpaqueSecPolicyRef; { an opaque type }
OpaqueSecPolicyRef = record end;
{!
@typedef SecCertificateRef
@abstract Contains information about a certificate.
}
type
SecCertificateRef = ^OpaqueSecCertificateRef; { an opaque type }
OpaqueSecCertificateRef = record end;
{!
@typedef SecAccessRef
@abstract Contains information about an access.
}
type
SecAccessRef = ^OpaqueSecAccessRef; { an opaque type }
OpaqueSecAccessRef = record end;
{!
@typedef SecIdentityRef
@abstract Contains information about an identity.
}
type
SecIdentityRef = ^OpaqueSecIdentityRef; { an opaque type }
OpaqueSecIdentityRef = record end;
{!
@typedef SecKeyRef
@abstract Contains information about a key.
}
type
SecKeyRef = ^OpaqueSecKeyRef; { an opaque type }
OpaqueSecKeyRef = record end;
{!
@typedef SecACLRef
@abstract Contains information about an access control list (ACL) entry.
}
type
SecACLRef = ^OpaqueSecTrustRef; { an opaque type }
OpaqueSecTrustRef = record end;
{!
@typedef SecPasswordRef
@abstract Contains information about a password.
}
type
SecPasswordRef = ^OpaqueSecPasswordRef; { an opaque type }
OpaqueSecPasswordRef = record end;
{!
@typedef SecKeychainAttributeInfo
@abstract Represents an attribute.
@field count The number of tag-format pairs in the respective arrays.
@field tag A pointer to the first attribute tag in the array.
@field format A pointer to the first CSSM_DB_ATTRIBUTE_FORMAT in the array.
@discussion Each tag and format item form a pair.
}
type
SecKeychainAttributeInfoPtr = ^SecKeychainAttributeInfo;
SecKeychainAttributeInfo = record
count: UInt32;
tag: UInt32Ptr;
format: UInt32Ptr;
end;
{!
@function SecCopyErrorMessageString
@abstract Returns a string describing the specified error result code.
@param status An error result code of type OSStatus or CSSM_RETURN, as returned by a Security or CSSM function.
@reserved Reserved for future use. Your code should pass NULL in this parameter.
@result A reference to an error string, or NULL if no error string is available for the specified result code. Your code must release this reference by calling the CFRelease function.
}
function SecCopyErrorMessageString( status: OSStatus; reserved: UnivPtr ): CFStringRef; external name '_SecCopyErrorMessageString';
{!
@enum Security Error Codes
@abstract Result codes returned from Security framework functions.
@constant errSecSuccess No error.
@constant errSecUnimplemented Function or operation not implemented.
@constant errSecParam One or more parameters passed to a function were not valid.
@constant errSecAllocate Failed to allocate memory.
@constant errSecNotAvailable No keychain is available.
@constant errSecReadOnly Read only error.
@constant errSecAuthFailed Authorization/Authentication failed.
@constant errSecNoSuchKeychain The keychain does not exist.
@constant errSecInvalidKeychain The keychain is not valid.
@constant errSecDuplicateKeychain A keychain with the same name already exists.
@constant errSecDuplicateCallback The specified callback is already installed.
@constant errSecInvalidCallback The specified callback is not valid.
@constant errSecDuplicateItem The item already exists.
@constant errSecItemNotFound The item cannot be found.
@constant errSecBufferTooSmall The buffer is too small.
@constant errSecDataTooLarge The data is too large.
@constant errSecNoSuchAttr The attribute does not exist.
@constant errSecInvalidItemRef The item reference is invalid.
@constant errSecInvalidSearchRef The search reference is invalid.
@constant errSecNoSuchClass The keychain item class does not exist.
@constant errSecNoDefaultKeychain A default keychain does not exist.
@constant errSecInteractionNotAllowed User interaction is not allowed.
@constant errSecReadOnlyAttr The attribute is read only.
@constant errSecWrongSecVersion The version is incorrect.
@constant errSecKeySizeNotAllowed The key size is not allowed.
@constant errSecNoStorageModule There is no storage module available.
@constant errSecNoCertificateModule There is no certificate module available.
@constant errSecNoPolicyModule There is no policy module available.
@constant errSecInteractionRequired User interaction is required.
@constant errSecDataNotAvailable The data is not available.
@constant errSecDataNotModifiable The data is not modifiable.
@constant errSecCreateChainFailed The attempt to create a certificate chain failed.
@constant errSecACLNotSimple The access control list is not in standard simple form.
@constant errSecPolicyNotFound The policy specified cannot be found.
@constant errSecInvalidTrustSetting The specified trust setting is invalid.
@constant errSecNoAccessForItem The specified item has no access control.
@constant errSecInvalidOwnerEdit Invalid attempt to change the owner of this item.
@constant errSecTrustNotAvailable No trust results are available.
@constant errSecUnsupportedFormat Import/Export format unsupported.
@constant errSecUnknownFormat Unknown format in import.
@constant errSecKeyIsSensitive Key material must be wrapped for export.
@constant errSecMultiplePrivKeys An attempt was made to import multiple private keys.
@constant errSecPassphraseRequired Passphrase is required for import/export.
@constant errSecInvalidPasswordRef The password reference was invalid.
@constant errSecInvalidTrustSettings The Trust Settings Record was corrupted.
@constant errSecNoTrustSettings No Trust Settings were found.
@constant errSecPkcs12VerifyFailure MAC verification failed during PKCS12 Import.
@constant errSecDecode Unable to decode the provided data.
@discussion The assigned error space is discontinuous: e.g. -25240..-25279, -25290..-25329, -68608..-67585, and so on.
}
{
Note: the comments that appear after these errors are used to create SecErrorMessages.strings.
The comments must not be multi-line, and should be in a form meaningful to an end user. If
a different or additional comment is needed, it can be put in the header doc format, or on a
line that does not start with errZZZ.
}
const
errSecSuccess = 0; { No error. }
errSecUnimplemented = -4; { Function or operation not implemented. }
errSecParam = -50; { One or more parameters passed to a function were not valid. }
errSecAllocate = -108; { Failed to allocate memory. }
errSecNotAvailable = -25291; { No keychain is available. You may need to restart your computer. }
errSecReadOnly = -25292; { This keychain cannot be modified. }
errSecAuthFailed = -25293; { The user name or passphrase you entered is not correct. }
errSecNoSuchKeychain = -25294; { The specified keychain could not be found. }
errSecInvalidKeychain = -25295; { The specified keychain is not a valid keychain file. }
errSecDuplicateKeychain = -25296; { A keychain with the same name already exists. }
errSecDuplicateCallback = -25297; { The specified callback function is already installed. }
errSecInvalidCallback = -25298; { The specified callback function is not valid. }
errSecDuplicateItem = -25299; { The specified item already exists in the keychain. }
errSecItemNotFound = -25300; { The specified item could not be found in the keychain. }
errSecBufferTooSmall = -25301; { There is not enough memory available to use the specified item. }
errSecDataTooLarge = -25302; { This item contains information which is too large or in a format that cannot be displayed. }
errSecNoSuchAttr = -25303; { The specified attribute does not exist. }
errSecInvalidItemRef = -25304; { The specified item is no longer valid. It may have been deleted from the keychain. }
errSecInvalidSearchRef = -25305; { Unable to search the current keychain. }
errSecNoSuchClass = -25306; { The specified item does not appear to be a valid keychain item. }
errSecNoDefaultKeychain = -25307; { A default keychain could not be found. }
errSecInteractionNotAllowed = -25308; { User interaction is not allowed. }
errSecReadOnlyAttr = -25309; { The specified attribute could not be modified. }
errSecWrongSecVersion = -25310; { This keychain was created by a different version of the system software and cannot be opened. }
errSecKeySizeNotAllowed = -25311; { This item specifies a key size which is too large. }
errSecNoStorageModule = -25312; { A required component (data storage module) could not be loaded. You may need to restart your computer. }
errSecNoCertificateModule = -25313; { A required component (certificate module) could not be loaded. You may need to restart your computer. }
errSecNoPolicyModule = -25314; { A required component (policy module) could not be loaded. You may need to restart your computer. }
errSecInteractionRequired = -25315; { User interaction is required, but is currently not allowed. }
errSecDataNotAvailable = -25316; { The contents of this item cannot be retrieved. }
errSecDataNotModifiable = -25317; { The contents of this item cannot be modified. }
errSecCreateChainFailed = -25318; { One or more certificates required to validate this certificate cannot be found. }
errSecInvalidPrefsDomain = -25319; { The specified preferences domain is not valid. }
errSecInDarkWake = -25320; { In dark wake, no UI possible }
errSecACLNotSimple = -25240; { The specified access control list is not in standard (simple) form. }
errSecPolicyNotFound = -25241; { The specified policy cannot be found. }
errSecInvalidTrustSetting = -25242; { The specified trust setting is invalid. }
errSecNoAccessForItem = -25243; { The specified item has no access control. }
errSecInvalidOwnerEdit = -25244; { Invalid attempt to change the owner of this item. }
errSecTrustNotAvailable = -25245; { No trust results are available. }
errSecUnsupportedFormat = -25256; { Import/Export format unsupported. }
errSecUnknownFormat = -25257; { Unknown format in import. }
errSecKeyIsSensitive = -25258; { Key material must be wrapped for export. }
errSecMultiplePrivKeys = -25259; { An attempt was made to import multiple private keys. }
errSecPassphraseRequired = -25260; { Passphrase is required for import/export. }
errSecInvalidPasswordRef = -25261; { The password reference was invalid. }
errSecInvalidTrustSettings = -25262; { The Trust Settings Record was corrupted. }
errSecNoTrustSettings = -25263; { No Trust Settings were found. }
errSecPkcs12VerifyFailure = -25264; { MAC verification failed during PKCS12 import (wrong password?) }
errSecNotSigner = -26267; { A certificate was not signed by its proposed parent. }
errSecDecode = -26275; { Unable to decode the provided data. }
errSecServiceNotAvailable = -67585; { The required service is not available. }
errSecInsufficientClientID = -67586; { The client ID is not correct. }
errSecDeviceReset = -67587; { A device reset has occurred. }
errSecDeviceFailed = -67588; { A device failure has occurred. }
errSecAppleAddAppACLSubject = -67589; { Adding an application ACL subject failed. }
errSecApplePublicKeyIncomplete = -67590; { The public key is incomplete. }
errSecAppleSignatureMismatch = -67591; { A signature mismatch has occurred. }
errSecAppleInvalidKeyStartDate = -67592; { The specified key has an invalid start date. }
errSecAppleInvalidKeyEndDate = -67593; { The specified key has an invalid end date. }
errSecConversionError = -67594; { A conversion error has occurred. }
errSecAppleSSLv2Rollback = -67595; { A SSLv2 rollback error has occurred. }
errSecDiskFull = -34; { The disk is full. }
errSecQuotaExceeded = -67596; { The quota was exceeded. }
errSecFileTooBig = -67597; { The file is too big. }
errSecInvalidDatabaseBlob = -67598; { The specified database has an invalid blob. }
errSecInvalidKeyBlob = -67599; { The specified database has an invalid key blob. }
errSecIncompatibleDatabaseBlob = -67600; { The specified database has an incompatible blob. }
errSecIncompatibleKeyBlob = -67601; { The specified database has an incompatible key blob. }
errSecHostNameMismatch = -67602; { A host name mismatch has occurred. }
errSecUnknownCriticalExtensionFlag = -67603; { There is an unknown critical extension flag. }
errSecNoBasicConstraints = -67604; { No basic constraints were found. }
errSecNoBasicConstraintsCA = -67605; { No basic CA constraints were found. }
errSecInvalidAuthorityKeyID = -67606; { The authority key ID is not valid. }
errSecInvalidSubjectKeyID = -67607; { The subject key ID is not valid. }
errSecInvalidKeyUsageForPolicy = -67608; { The key usage is not valid for the specified policy. }
errSecInvalidExtendedKeyUsage = -67609; { The extended key usage is not valid. }
errSecInvalidIDLinkage = -67610; { The ID linkage is not valid. }
errSecPathLengthConstraintExceeded = -67611; { The path length constraint was exceeded. }
errSecInvalidRoot = -67612; { The root or anchor certificate is not valid. }
errSecCRLExpired = -67613; { The CRL has expired. }
errSecCRLNotValidYet = -67614; { The CRL is not yet valid. }
errSecCRLNotFound = -67615; { The CRL was not found. }
errSecCRLServerDown = -67616; { The CRL server is down. }
errSecCRLBadURI = -67617; { The CRL has a bad Uniform Resource Identifier. }
errSecUnknownCertExtension = -67618; { An unknown certificate extension was encountered. }
errSecUnknownCRLExtension = -67619; { An unknown CRL extension was encountered. }
errSecCRLNotTrusted = -67620; { The CRL is not trusted. }
errSecCRLPolicyFailed = -67621; { The CRL policy failed. }
errSecIDPFailure = -67622; { The issuing distribution point was not valid. }
errSecSMIMEEmailAddressesNotFound = -67623; { An email address mismatch was encountered. }
errSecSMIMEBadExtendedKeyUsage = -67624; { The appropriate extended key usage for SMIME was not found. }
errSecSMIMEBadKeyUsage = -67625; { The key usage is not compatible with SMIME. }
errSecSMIMEKeyUsageNotCritical = -67626; { The key usage extension is not marked as critical. }
errSecSMIMENoEmailAddress = -67627; { No email address was found in the certificate. }
errSecSMIMESubjAltNameNotCritical = -67628; { The subject alternative name extension is not marked as critical. }
errSecSSLBadExtendedKeyUsage = -67629; { The appropriate extended key usage for SSL was not found. }
errSecOCSPBadResponse = -67630; { The OCSP response was incorrect or could not be parsed. }
errSecOCSPBadRequest = -67631; { The OCSP request was incorrect or could not be parsed. }
errSecOCSPUnavailable = -67632; { OCSP service is unavailable. }
errSecOCSPStatusUnrecognized = -67633; { The OCSP server did not recognize this certificate. }
errSecEndOfData = -67634; { An end-of-data was detected. }
errSecIncompleteCertRevocationCheck = -67635; { An incomplete certificate revocation check occurred. }
errSecNetworkFailure = -67636; { A network failure occurred. }
errSecOCSPNotTrustedToAnchor = -67637; { The OCSP response was not trusted to a root or anchor certificate. }
errSecRecordModified = -67638; { The record was modified. }
errSecOCSPSignatureError = -67639; { The OCSP response had an invalid signature. }
errSecOCSPNoSigner = -67640; { The OCSP response had no signer. }
errSecOCSPResponderMalformedReq = -67641; { The OCSP responder was given a malformed request. }
errSecOCSPResponderInternalError = -67642; { The OCSP responder encountered an internal error. }
errSecOCSPResponderTryLater = -67643; { The OCSP responder is busy, try again later. }
errSecOCSPResponderSignatureRequired = -67644; { The OCSP responder requires a signature. }
errSecOCSPResponderUnauthorized = -67645; { The OCSP responder rejected this request as unauthorized. }
errSecOCSPResponseNonceMismatch = -67646; { The OCSP response nonce did not match the request. }
errSecCodeSigningBadCertChainLength = -67647; { Code signing encountered an incorrect certificate chain length. }
errSecCodeSigningNoBasicConstraints = -67648; { Code signing found no basic constraints. }
errSecCodeSigningBadPathLengthConstraint = -67649; { Code signing encountered an incorrect path length constraint. }
errSecCodeSigningNoExtendedKeyUsage = -67650; { Code signing found no extended key usage. }
errSecCodeSigningDevelopment = -67651; { Code signing indicated use of a development-only certificate. }
errSecResourceSignBadCertChainLength = -67652; { Resource signing has encountered an incorrect certificate chain length. }
errSecResourceSignBadExtKeyUsage = -67653; { Resource signing has encountered an error in the extended key usage. }
errSecTrustSettingDeny = -67654; { The trust setting for this policy was set to Deny. }
errSecInvalidSubjectName = -67655; { An invalid certificate subject name was encountered. }
errSecUnknownQualifiedCertStatement = -67656; { An unknown qualified certificate statement was encountered. }
errSecMobileMeRequestQueued = -67657; { The MobileMe request will be sent during the next connection. }
errSecMobileMeRequestRedirected = -67658; { The MobileMe request was redirected. }
errSecMobileMeServerError = -67659; { A MobileMe server error occurred. }
errSecMobileMeServerNotAvailable = -67660; { The MobileMe server is not available. }
errSecMobileMeServerAlreadyExists = -67661; { The MobileMe server reported that the item already exists. }
errSecMobileMeServerServiceErr = -67662; { A MobileMe service error has occurred. }
errSecMobileMeRequestAlreadyPending = -67663; { A MobileMe request is already pending. }
errSecMobileMeNoRequestPending = -67664; { MobileMe has no request pending. }
errSecMobileMeCSRVerifyFailure = -67665; { A MobileMe CSR verification failure has occurred. }
errSecMobileMeFailedConsistencyCheck = -67666; { MobileMe has found a failed consistency check. }
errSecNotInitialized = -67667; { A function was called without initializing CSSM. }
errSecInvalidHandleUsage = -67668; { The CSSM handle does not match with the service type. }
errSecPVCReferentNotFound = -67669; { A reference to the calling module was not found in the list of authorized callers. }
errSecFunctionIntegrityFail = -67670; { A function address was not within the verified module. }
errSecInternalError = -67671; { An internal error has occurred. }
errSecMemoryError = -67672; { A memory error has occurred. }
errSecInvalidData = -67673; { Invalid data was encountered. }
errSecMDSError = -67674; { A Module Directory Service error has occurred. }
errSecInvalidPointer = -67675; { An invalid pointer was encountered. }
errSecSelfCheckFailed = -67676; { Self-check has failed. }
errSecFunctionFailed = -67677; { A function has failed. }
errSecModuleManifestVerifyFailed = -67678; { A module manifest verification failure has occurred. }
errSecInvalidGUID = -67679; { An invalid GUID was encountered. }
errSecInvalidHandle = -67680; { An invalid handle was encountered. }
errSecInvalidDBList = -67681; { An invalid DB list was encountered. }
errSecInvalidPassthroughID = -67682; { An invalid passthrough ID was encountered. }
errSecInvalidNetworkAddress = -67683; { An invalid network address was encountered. }
errSecCRLAlreadySigned = -67684; { The certificate revocation list is already signed. }
errSecInvalidNumberOfFields = -67685; { An invalid number of fields were encountered. }
errSecVerificationFailure = -67686; { A verification failure occurred. }
errSecUnknownTag = -67687; { An unknown tag was encountered. }
errSecInvalidSignature = -67688; { An invalid signature was encountered. }
errSecInvalidName = -67689; { An invalid name was encountered. }
errSecInvalidCertificateRef = -67690; { An invalid certificate reference was encountered. }
errSecInvalidCertificateGroup = -67691; { An invalid certificate group was encountered. }
errSecTagNotFound = -67692; { The specified tag was not found. }
errSecInvalidQuery = -67693; { The specified query was not valid. }
errSecInvalidValue = -67694; { An invalid value was detected. }
errSecCallbackFailed = -67695; { A callback has failed. }
errSecACLDeleteFailed = -67696; { An ACL delete operation has failed. }
errSecACLReplaceFailed = -67697; { An ACL replace operation has failed. }
errSecACLAddFailed = -67698; { An ACL add operation has failed. }
errSecACLChangeFailed = -67699; { An ACL change operation has failed. }
errSecInvalidAccessCredentials = -67700; { Invalid access credentials were encountered. }
errSecInvalidRecord = -67701; { An invalid record was encountered. }
errSecInvalidACL = -67702; { An invalid ACL was encountered. }
errSecInvalidSampleValue = -67703; { An invalid sample value was encountered. }
errSecIncompatibleVersion = -67704; { An incompatible version was encountered. }
errSecPrivilegeNotGranted = -67705; { The privilege was not granted. }
errSecInvalidScope = -67706; { An invalid scope was encountered. }
errSecPVCAlreadyConfigured = -67707; { The PVC is already configured. }
errSecInvalidPVC = -67708; { An invalid PVC was encountered. }
errSecEMMLoadFailed = -67709; { The EMM load has failed. }
errSecEMMUnloadFailed = -67710; { The EMM unload has failed. }
errSecAddinLoadFailed = -67711; { The add-in load operation has failed. }
errSecInvalidKeyRef = -67712; { An invalid key was encountered. }
errSecInvalidKeyHierarchy = -67713; { An invalid key hierarchy was encountered. }
errSecAddinUnloadFailed = -67714; { The add-in unload operation has failed. }
errSecLibraryReferenceNotFound = -67715; { A library reference was not found. }
errSecInvalidAddinFunctionTable = -67716; { An invalid add-in function table was encountered. }
errSecInvalidServiceMask = -67717; { An invalid service mask was encountered. }
errSecModuleNotLoaded = -67718; { A module was not loaded. }
errSecInvalidSubServiceID = -67719; { An invalid subservice ID was encountered. }
errSecAttributeNotInContext = -67720; { An attribute was not in the context. }
errSecModuleManagerInitializeFailed = -67721; { A module failed to initialize. }
errSecModuleManagerNotFound = -67722; { A module was not found. }
errSecEventNotificationCallbackNotFound = -67723; { An event notification callback was not found. }
errSecInputLengthError = -67724; { An input length error was encountered. }
errSecOutputLengthError = -67725; { An output length error was encountered. }
errSecPrivilegeNotSupported = -67726; { The privilege is not supported. }
errSecDeviceError = -67727; { A device error was encountered. }
errSecAttachHandleBusy = -67728; { The CSP handle was busy. }
errSecNotLoggedIn = -67729; { You are not logged in. }
errSecAlgorithmMismatch = -67730; { An algorithm mismatch was encountered. }
errSecKeyUsageIncorrect = -67731; { The key usage is incorrect. }
errSecKeyBlobTypeIncorrect = -67732; { The key blob type is incorrect. }
errSecKeyHeaderInconsistent = -67733; { The key header is inconsistent. }
errSecUnsupportedKeyFormat = -67734; { The key header format is not supported. }
errSecUnsupportedKeySize = -67735; { The key size is not supported. }
errSecInvalidKeyUsageMask = -67736; { The key usage mask is not valid. }
errSecUnsupportedKeyUsageMask = -67737; { The key usage mask is not supported. }
errSecInvalidKeyAttributeMask = -67738; { The key attribute mask is not valid. }
errSecUnsupportedKeyAttributeMask = -67739; { The key attribute mask is not supported. }
errSecInvalidKeyLabel = -67740; { The key label is not valid. }
errSecUnsupportedKeyLabel = -67741; { The key label is not supported. }
errSecInvalidKeyFormat = -67742; { The key format is not valid. }
errSecUnsupportedVectorOfBuffers = -67743; { The vector of buffers is not supported. }
errSecInvalidInputVector = -67744; { The input vector is not valid. }
errSecInvalidOutputVector = -67745; { The output vector is not valid. }
errSecInvalidContext = -67746; { An invalid context was encountered. }
errSecInvalidAlgorithm = -67747; { An invalid algorithm was encountered. }
errSecInvalidAttributeKey = -67748; { A key attribute was not valid. }
errSecMissingAttributeKey = -67749; { A key attribute was missing. }
errSecInvalidAttributeInitVector = -67750; { An init vector attribute was not valid. }
errSecMissingAttributeInitVector = -67751; { An init vector attribute was missing. }
errSecInvalidAttributeSalt = -67752; { A salt attribute was not valid. }
errSecMissingAttributeSalt = -67753; { A salt attribute was missing. }
errSecInvalidAttributePadding = -67754; { A padding attribute was not valid. }
errSecMissingAttributePadding = -67755; { A padding attribute was missing. }
errSecInvalidAttributeRandom = -67756; { A random number attribute was not valid. }
errSecMissingAttributeRandom = -67757; { A random number attribute was missing. }
errSecInvalidAttributeSeed = -67758; { A seed attribute was not valid. }
errSecMissingAttributeSeed = -67759; { A seed attribute was missing. }
errSecInvalidAttributePassphrase = -67760; { A passphrase attribute was not valid. }
errSecMissingAttributePassphrase = -67761; { A passphrase attribute was missing. }
errSecInvalidAttributeKeyLength = -67762; { A key length attribute was not valid. }
errSecMissingAttributeKeyLength = -67763; { A key length attribute was missing. }
errSecInvalidAttributeBlockSize = -67764; { A block size attribute was not valid. }
errSecMissingAttributeBlockSize = -67765; { A block size attribute was missing. }
errSecInvalidAttributeOutputSize = -67766; { An output size attribute was not valid. }
errSecMissingAttributeOutputSize = -67767; { An output size attribute was missing. }
errSecInvalidAttributeRounds = -67768; { The number of rounds attribute was not valid. }
errSecMissingAttributeRounds = -67769; { The number of rounds attribute was missing. }
errSecInvalidAlgorithmParms = -67770; { An algorithm parameters attribute was not valid. }
errSecMissingAlgorithmParms = -67771; { An algorithm parameters attribute was missing. }
errSecInvalidAttributeLabel = -67772; { A label attribute was not valid. }
errSecMissingAttributeLabel = -67773; { A label attribute was missing. }
errSecInvalidAttributeKeyType = -67774; { A key type attribute was not valid. }
errSecMissingAttributeKeyType = -67775; { A key type attribute was missing. }
errSecInvalidAttributeMode = -67776; { A mode attribute was not valid. }
errSecMissingAttributeMode = -67777; { A mode attribute was missing. }
errSecInvalidAttributeEffectiveBits = -67778; { An effective bits attribute was not valid. }
errSecMissingAttributeEffectiveBits = -67779; { An effective bits attribute was missing. }
errSecInvalidAttributeStartDate = -67780; { A start date attribute was not valid. }
errSecMissingAttributeStartDate = -67781; { A start date attribute was missing. }
errSecInvalidAttributeEndDate = -67782; { An end date attribute was not valid. }
errSecMissingAttributeEndDate = -67783; { An end date attribute was missing. }
errSecInvalidAttributeVersion = -67784; { A version attribute was not valid. }
errSecMissingAttributeVersion = -67785; { A version attribute was missing. }
errSecInvalidAttributePrime = -67786; { A prime attribute was not valid. }
errSecMissingAttributePrime = -67787; { A prime attribute was missing. }
errSecInvalidAttributeBase = -67788; { A base attribute was not valid. }
errSecMissingAttributeBase = -67789; { A base attribute was missing. }
errSecInvalidAttributeSubprime = -67790; { A subprime attribute was not valid. }
errSecMissingAttributeSubprime = -67791; { A subprime attribute was missing. }
errSecInvalidAttributeIterationCount = -67792; { An iteration count attribute was not valid. }
errSecMissingAttributeIterationCount = -67793; { An iteration count attribute was missing. }
errSecInvalidAttributeDLDBHandle = -67794; { A database handle attribute was not valid. }
errSecMissingAttributeDLDBHandle = -67795; { A database handle attribute was missing. }
errSecInvalidAttributeAccessCredentials = -67796; { An access credentials attribute was not valid. }
errSecMissingAttributeAccessCredentials = -67797; { An access credentials attribute was missing. }
errSecInvalidAttributePublicKeyFormat = -67798; { A public key format attribute was not valid. }
errSecMissingAttributePublicKeyFormat = -67799; { A public key format attribute was missing. }
errSecInvalidAttributePrivateKeyFormat = -67800; { A private key format attribute was not valid. }
errSecMissingAttributePrivateKeyFormat = -67801; { A private key format attribute was missing. }
errSecInvalidAttributeSymmetricKeyFormat = -67802; { A symmetric key format attribute was not valid. }
errSecMissingAttributeSymmetricKeyFormat = -67803; { A symmetric key format attribute was missing. }
errSecInvalidAttributeWrappedKeyFormat = -67804; { A wrapped key format attribute was not valid. }
errSecMissingAttributeWrappedKeyFormat = -67805; { A wrapped key format attribute was missing. }
errSecStagedOperationInProgress = -67806; { A staged operation is in progress. }
errSecStagedOperationNotStarted = -67807; { A staged operation was not started. }
errSecVerifyFailed = -67808; { A cryptographic verification failure has occurred. }
errSecQuerySizeUnknown = -67809; { The query size is unknown. }
errSecBlockSizeMismatch = -67810; { A block size mismatch occurred. }
errSecPublicKeyInconsistent = -67811; { The public key was inconsistent. }
errSecDeviceVerifyFailed = -67812; { A device verification failure has occurred. }
errSecInvalidLoginName = -67813; { An invalid login name was detected. }
errSecAlreadyLoggedIn = -67814; { The user is already logged in. }
errSecInvalidDigestAlgorithm = -67815; { An invalid digest algorithm was detected. }
errSecInvalidCRLGroup = -67816; { An invalid CRL group was detected. }
errSecCertificateCannotOperate = -67817; { The certificate cannot operate. }
errSecCertificateExpired = -67818; { An expired certificate was detected. }
errSecCertificateNotValidYet = -67819; { The certificate is not yet valid. }
errSecCertificateRevoked = -67820; { The certificate was revoked. }
errSecCertificateSuspended = -67821; { The certificate was suspended. }
errSecInsufficientCredentials = -67822; { Insufficient credentials were detected. }
errSecInvalidAction = -67823; { The action was not valid. }
errSecInvalidAuthority = -67824; { The authority was not valid. }
errSecVerifyActionFailed = -67825; { A verify action has failed. }
errSecInvalidCertAuthority = -67826; { The certificate authority was not valid. }
errSecInvaldCRLAuthority = -67827; { The CRL authority was not valid. }
errSecInvalidCRLEncoding = -67828; { The CRL encoding was not valid. }
errSecInvalidCRLType = -67829; { The CRL type was not valid. }
errSecInvalidCRL = -67830; { The CRL was not valid. }
errSecInvalidFormType = -67831; { The form type was not valid. }
errSecInvalidID = -67832; { The ID was not valid. }
errSecInvalidIdentifier = -67833; { The identifier was not valid. }
errSecInvalidIndex = -67834; { The index was not valid. }
errSecInvalidPolicyIdentifiers = -67835; { The policy identifiers are not valid. }
errSecInvalidTimeString = -67836; { The time specified was not valid. }
errSecInvalidReason = -67837; { The trust policy reason was not valid. }
errSecInvalidRequestInputs = -67838; { The request inputs are not valid. }
errSecInvalidResponseVector = -67839; { The response vector was not valid. }
errSecInvalidStopOnPolicy = -67840; { The stop-on policy was not valid. }
errSecInvalidTuple = -67841; { The tuple was not valid. }
errSecMultipleValuesUnsupported = -67842; { Multiple values are not supported. }
errSecNotTrusted = -67843; { The trust policy was not trusted. }
errSecNoDefaultAuthority = -67844; { No default authority was detected. }
errSecRejectedForm = -67845; { The trust policy had a rejected form. }
errSecRequestLost = -67846; { The request was lost. }
errSecRequestRejected = -67847; { The request was rejected. }
errSecUnsupportedAddressType = -67848; { The address type is not supported. }
errSecUnsupportedService = -67849; { The service is not supported. }
errSecInvalidTupleGroup = -67850; { The tuple group was not valid. }
errSecInvalidBaseACLs = -67851; { The base ACLs are not valid. }
errSecInvalidTupleCredendtials = -67852; { The tuple credentials are not valid. }
errSecInvalidEncoding = -67853; { The encoding was not valid. }
errSecInvalidValidityPeriod = -67854; { The validity period was not valid. }
errSecInvalidRequestor = -67855; { The requestor was not valid. }
errSecRequestDescriptor = -67856; { The request descriptor was not valid. }
errSecInvalidBundleInfo = -67857; { The bundle information was not valid. }
errSecInvalidCRLIndex = -67858; { The CRL index was not valid. }
errSecNoFieldValues = -67859; { No field values were detected. }
errSecUnsupportedFieldFormat = -67860; { The field format is not supported. }
errSecUnsupportedIndexInfo = -67861; { The index information is not supported. }
errSecUnsupportedLocality = -67862; { The locality is not supported. }
errSecUnsupportedNumAttributes = -67863; { The number of attributes is not supported. }
errSecUnsupportedNumIndexes = -67864; { The number of indexes is not supported. }
errSecUnsupportedNumRecordTypes = -67865; { The number of record types is not supported. }
errSecFieldSpecifiedMultiple = -67866; { Too many fields were specified. }
errSecIncompatibleFieldFormat = -67867; { The field format was incompatible. }
errSecInvalidParsingModule = -67868; { The parsing module was not valid. }
errSecDatabaseLocked = -67869; { The database is locked. }
errSecDatastoreIsOpen = -67870; { The data store is open. }
errSecMissingValue = -67871; { A missing value was detected. }
errSecUnsupportedQueryLimits = -67872; { The query limits are not supported. }
errSecUnsupportedNumSelectionPreds = -67873; { The number of selection predicates is not supported. }
errSecUnsupportedOperator = -67874; { The operator is not supported. }
errSecInvalidDBLocation = -67875; { The database location is not valid. }
errSecInvalidAccessRequest = -67876; { The access request is not valid. }
errSecInvalidIndexInfo = -67877; { The index information is not valid. }
errSecInvalidNewOwner = -67878; { The new owner is not valid. }
errSecInvalidModifyMode = -67879; { The modify mode is not valid. }
errSecMissingRequiredExtension = -67880; { A required certificate extension is missing. }
errSecExtendedKeyUsageNotCritical = -67881; { The extended key usage extension was not marked critical. }
errSecTimestampMissing = -67882; { A timestamp was expected but was not found. }
errSecTimestampInvalid = -67883; { The timestamp was not valid. }
errSecTimestampNotTrusted = -67884; { The timestamp was not trusted. }
errSecTimestampServiceNotAvailable = -67885; { The timestamp service is not available. }
errSecTimestampBadAlg = -67886; { An unrecognized or unsupported Algorithm Identifier in timestamp. }
errSecTimestampBadRequest = -67887; { The timestamp transaction is not permitted or supported. }
errSecTimestampBadDataFormat = -67888; { The timestamp data submitted has the wrong format. }
errSecTimestampTimeNotAvailable = -67889; { The time source for the Timestamp Authority is not available. }
errSecTimestampUnacceptedPolicy = -67890; { The requested policy is not supported by the Timestamp Authority. }
errSecTimestampUnacceptedExtension = -67891; { The requested extension is not supported by the Timestamp Authority. }
errSecTimestampAddInfoNotAvailable = -67892; { The additional information requested is not available. }
errSecTimestampSystemFailure = -67893; { The timestamp request cannot be handled due to system failure . }
errSecSigningTimeMissing = -67894; { A signing time was expected but was not found. }
errSecTimestampRejection = -67895; { A timestamp transaction was rejected. }
errSecTimestampWaiting = -67896; { A timestamp transaction is waiting. }
errSecTimestampRevocationWarning = -67897; { A timestamp authority revocation warning was issued. }
errSecTimestampRevocationNotification = -67898; { A timestamp authority revocation notification was issued. }
{$ifc not defined MACOSALLINCLUDE or not MACOSALLINCLUDE}
end.
{$endc} {not MACOSALLINCLUDE}