Documentation Archive Developer
Search

Security Changes for Swift

Security

Added cssm_certgroup.GroupList
Added cssm_certgroup.init(CertType: CSSM_CERT_TYPE, CertEncoding: CSSM_CERT_ENCODING, NumCerts: uint32, GroupList: cssm_certgroup.__Unnamed_union_GroupList, CertGroupType: CSSM_CERTGROUP_TYPE, Reserved: UnsafeMutablePointer<Void>)
Added cssm_context_attribute_value [struct]
Added cssm_context_attribute_value.AccessCredentials
Added cssm_context_attribute_value.CryptoData
Added cssm_context_attribute_value.Data
Added cssm_context_attribute_value.Date
Added cssm_context_attribute_value.DLDBHandle
Added cssm_context_attribute_value.init()
Added cssm_context_attribute_value.init(AccessCredentials: CSSM_ACCESS_CREDENTIALS_PTR)
Added cssm_context_attribute_value.init(CryptoData: CSSM_CRYPTO_DATA_PTR)
Added cssm_context_attribute_value.init(Data: CSSM_DATA_PTR)
Added cssm_context_attribute_value.init(Date: CSSM_DATE_PTR)
Added cssm_context_attribute_value.init(DLDBHandle: CSSM_DL_DB_HANDLE_PTR)
Added cssm_context_attribute_value.init(Key: CSSM_KEY_PTR)
Added cssm_context_attribute_value.init(KRProfile: UnsafeMutablePointer<cssm_kr_profile>)
Added cssm_context_attribute_value.init(Padding: CSSM_PADDING)
Added cssm_context_attribute_value.init(Range: CSSM_RANGE_PTR)
Added cssm_context_attribute_value.init(String: UnsafeMutablePointer<Int8>)
Added cssm_context_attribute_value.init(Uint32: uint32)
Added cssm_context_attribute_value.init(Version: CSSM_VERSION_PTR)
Added cssm_context_attribute_value.Key
Added cssm_context_attribute_value.KRProfile
Added cssm_context_attribute_value.Padding
Added cssm_context_attribute_value.Range
Added cssm_context_attribute_value.String
Added cssm_context_attribute_value.Uint32
Added cssm_context_attribute_value.Version
Added cssm_crlgroup.GroupCrlList
Added cssm_crlgroup.init(CrlType: CSSM_CRL_TYPE, CrlEncoding: CSSM_CRL_ENCODING, NumberOfCrls: uint32, GroupCrlList: cssm_crlgroup.__Unnamed_union_GroupCrlList, CrlGroupType: CSSM_CRLGROUP_TYPE)
Added cssm_db_attribute_label [struct]
Added cssm_db_attribute_label.AttributeID
Added cssm_db_attribute_label.AttributeName
Added cssm_db_attribute_label.AttributeOID
Added cssm_db_attribute_label.init()
Added cssm_db_attribute_label.init(AttributeID: uint32)
Added cssm_db_attribute_label.init(AttributeName: UnsafeMutablePointer<Int8>)
Added cssm_db_attribute_label.init(AttributeOID: CSSM_OID)
Added cssm_list_element.Element
Added cssm_list_element.init(NextElement: UnsafeMutablePointer<cssm_list_element>, WordID: CSSM_WORDID_TYPE, ElementType: CSSM_LIST_ELEMENT_TYPE, Element: cssm_list_element.__Unnamed_union_Element)
Added cssm_x509ext_value [struct]
Added cssm_x509ext_value.init()
Added cssm_x509ext_value.init(parsedValue: UnsafeMutablePointer<Void>)
Added cssm_x509ext_value.init(tagAndValue: UnsafeMutablePointer<CSSM_X509EXT_TAGandVALUE>)
Added cssm_x509ext_value.init(valuePair: UnsafeMutablePointer<CSSM_X509EXT_PAIR>)
Added cssm_x509ext_value.parsedValue
Added cssm_x509ext_value.tagAndValue
Added cssm_x509ext_value.valuePair
Modified CMSDecoder
NameDeclaration
FromCMSDecoderRef
typealias CMSDecoderRef = CMSDecoder
ToCMSDecoder
class CMSDecoder {
}

Modified CMSEncoder
NameDeclaration
FromCMSEncoderRef
typealias CMSEncoderRef = CMSEncoder
ToCMSEncoder
class CMSEncoder {
}

Declaration
From
enum CMSSignedAttributes : UInt32 {
    case AttrNone
    case AttrSmimeCapabilities
    case AttrSmimeEncryptionKeyPrefs
    case AttrSmimeMSEncryptionKeyPrefs
    case AttrSigningTime
}
To
enum CMSSignedAttributes : UInt32 {
    case AttrNone
    case AttrSmimeCapabilities
    case AttrSmimeEncryptionKeyPrefs
    case AttrSmimeMSEncryptionKeyPrefs
    case AttrSigningTime
    case AttrAppleCodesigningHashAgility
}

Modified cssm_certgroup [struct]
Declaration
From
struct cssm_certgroup {
    var CertType: CSSM_CERT_TYPE
    var CertEncoding: CSSM_CERT_ENCODING
    var NumCerts: uint32
    var CertGroupType: CSSM_CERTGROUP_TYPE
    var Reserved: UnsafeMutablePointer<Void>
    init()
}
To
struct cssm_certgroup {
    struct __Unnamed_union_GroupList {
        var CertList: CSSM_DATA_PTR
        var EncodedCertList: CSSM_ENCODED_CERT_PTR
        var ParsedCertList: CSSM_PARSED_CERT_PTR
        var PairCertList: CSSM_CERT_PAIR_PTR
        init(CertList CertList: CSSM_DATA_PTR)
        init(EncodedCertList EncodedCertList: CSSM_ENCODED_CERT_PTR)
        init(ParsedCertList ParsedCertList: CSSM_PARSED_CERT_PTR)
        init(PairCertList PairCertList: CSSM_CERT_PAIR_PTR)
        init()
    }
    var CertType: CSSM_CERT_TYPE
    var CertEncoding: CSSM_CERT_ENCODING
    var NumCerts: uint32
    var GroupList: cssm_certgroup.__Unnamed_union_GroupList
    var CertGroupType: CSSM_CERTGROUP_TYPE
    var Reserved: UnsafeMutablePointer<Void>
    init()
    init(CertType CertType: CSSM_CERT_TYPE, CertEncoding CertEncoding: CSSM_CERT_ENCODING, NumCerts NumCerts: uint32, GroupList GroupList: cssm_certgroup.__Unnamed_union_GroupList, CertGroupType CertGroupType: CSSM_CERTGROUP_TYPE, Reserved Reserved: UnsafeMutablePointer<Void>)
}

Modified cssm_crlgroup [struct]
Declaration
From
struct cssm_crlgroup {
    var CrlType: CSSM_CRL_TYPE
    var CrlEncoding: CSSM_CRL_ENCODING
    var NumberOfCrls: uint32
    var CrlGroupType: CSSM_CRLGROUP_TYPE
    init()
}
To
struct cssm_crlgroup {
    struct __Unnamed_union_GroupCrlList {
        var CrlList: CSSM_DATA_PTR
        var EncodedCrlList: CSSM_ENCODED_CRL_PTR
        var ParsedCrlList: CSSM_PARSED_CRL_PTR
        var PairCrlList: CSSM_CRL_PAIR_PTR
        init(CrlList CrlList: CSSM_DATA_PTR)
        init(EncodedCrlList EncodedCrlList: CSSM_ENCODED_CRL_PTR)
        init(ParsedCrlList ParsedCrlList: CSSM_PARSED_CRL_PTR)
        init(PairCrlList PairCrlList: CSSM_CRL_PAIR_PTR)
        init()
    }
    var CrlType: CSSM_CRL_TYPE
    var CrlEncoding: CSSM_CRL_ENCODING
    var NumberOfCrls: uint32
    var GroupCrlList: cssm_crlgroup.__Unnamed_union_GroupCrlList
    var CrlGroupType: CSSM_CRLGROUP_TYPE
    init()
    init(CrlType CrlType: CSSM_CRL_TYPE, CrlEncoding CrlEncoding: CSSM_CRL_ENCODING, NumberOfCrls NumberOfCrls: uint32, GroupCrlList GroupCrlList: cssm_crlgroup.__Unnamed_union_GroupCrlList, CrlGroupType CrlGroupType: CSSM_CRLGROUP_TYPE)
}

Modified cssm_list_element [struct]
Declaration
From
struct cssm_list_element {
    var NextElement: UnsafeMutablePointer<cssm_list_element>
    var WordID: CSSM_WORDID_TYPE
    var ElementType: CSSM_LIST_ELEMENT_TYPE
    init()
}
To
struct cssm_list_element {
    struct __Unnamed_union_Element {
        var Sublist: CSSM_LIST
        var Word: CSSM_DATA
        init(Sublist Sublist: CSSM_LIST)
        init(Word Word: CSSM_DATA)
        init()
    }
    var NextElement: UnsafeMutablePointer<cssm_list_element>
    var WordID: CSSM_WORDID_TYPE
    var ElementType: CSSM_LIST_ELEMENT_TYPE
    var Element: cssm_list_element.__Unnamed_union_Element
    init()
    init(NextElement NextElement: UnsafeMutablePointer<cssm_list_element>, WordID WordID: CSSM_WORDID_TYPE, ElementType ElementType: CSSM_LIST_ELEMENT_TYPE, Element Element: cssm_list_element.__Unnamed_union_Element)
}

Modified SecAccess
NameDeclaration
FromSecAccessRef
typealias SecAccessRef = SecAccess
ToSecAccess
class SecAccess {
}

NameDeclaration
FromSecAccessControlRef
typealias SecAccessControlRef = SecAccessControl
ToSecAccessControl
class SecAccessControl {
}

Modified SecACL
NameDeclaration
FromSecACLRef
typealias SecACLRef = SecACL
ToSecACL
class SecACL {
}

NameDeclaration
FromSecCertificateRef
typealias SecCertificateRef = SecCertificate
ToSecCertificate
class SecCertificate {
}

Modified SecCode
NameDeclaration
FromSecCodeRef
typealias SecCodeRef = SecCode
ToSecCode
class SecCode {
}

Modified SecIdentity
NameDeclaration
FromSecIdentityRef
typealias SecIdentityRef = SecIdentity
ToSecIdentity
class SecIdentity {
}

NameDeclaration
FromSecIdentitySearchRef
typealias SecIdentitySearchRef = SecIdentitySearch
ToSecIdentitySearch
class SecIdentitySearch {
}

Modified SecKey
NameDeclaration
FromSecKeyRef
typealias SecKeyRef = SecKey
ToSecKey
class SecKey {
}

Modified SecKeychain
NameDeclaration
FromSecKeychainRef
typealias SecKeychainRef = SecKeychain
ToSecKeychain
class SecKeychain {
}

NameDeclaration
FromSecKeychainItemRef
typealias SecKeychainItemRef = SecKeychainItem
ToSecKeychainItem
class SecKeychainItem {
}

NameDeclaration
FromSecKeychainSearchRef
typealias SecKeychainSearchRef = SecKeychainSearch
ToSecKeychainSearch
class SecKeychainSearch {
}

Modified SecPassword
NameDeclaration
FromSecPasswordRef
typealias SecPasswordRef = SecPassword
ToSecPassword
class SecPassword {
}

Modified SecPolicy
NameDeclaration
FromSecPolicyRef
typealias SecPolicyRef = SecPolicy
ToSecPolicy
class SecPolicy {
}

NameDeclaration
FromSecPolicySearchRef
typealias SecPolicySearchRef = SecPolicySearch
ToSecPolicySearch
class SecPolicySearch {
}

NameDeclaration
FromSecRequirementRef
typealias SecRequirementRef = SecRequirement
ToSecRequirement
class SecRequirement {
}

Modified SecStaticCode
NameDeclaration
FromSecStaticCodeRef
typealias SecStaticCodeRef = SecStaticCode
ToSecStaticCode
class SecStaticCode {
}

Modified SecTask
NameDeclaration
FromSecTaskRef
typealias SecTaskRef = SecTask
ToSecTask
class SecTask {
}

Modified SecTrust
NameDeclaration
FromSecTrustRef
typealias SecTrustRef = SecTrust
ToSecTrust
class SecTrust {
}

NameDeclaration
FromSecTrustedApplicationRef
typealias SecTrustedApplicationRef = SecTrustedApplication
ToSecTrustedApplication
class SecTrustedApplication {
}

Modified SSLContext
NameDeclaration
FromSSLContextRef
typealias SSLContextRef = SSLContext
ToSSLContext
class SSLContext {
}

Declaration
From
func SecCodeCopySelf(_ flags: SecCSFlags, _ `self`: UnsafeMutablePointer<SecCode?>) -> OSStatus
To
func SecCodeCopySelf(_ flags: SecCSFlags, _ self: UnsafeMutablePointer<SecCode?>) -> OSStatus

Declaration
From
typealias SecGroupTransformRef = SecGroupTransform
To
typealias SecGroupTransform = CFTypeRef

Declaration
From
func SecKeychainAddInternetPassword(_ keychain: SecKeychain?, _ serverNameLength: UInt32, _ serverName: UnsafePointer<Int8>, _ securityDomainLength: UInt32, _ securityDomain: UnsafePointer<Int8>, _ accountNameLength: UInt32, _ accountName: UnsafePointer<Int8>, _ pathLength: UInt32, _ path: UnsafePointer<Int8>, _ port: UInt16, _ `protocol`: SecProtocolType, _ authenticationType: SecAuthenticationType, _ passwordLength: UInt32, _ passwordData: UnsafePointer<Void>, _ itemRef: UnsafeMutablePointer<SecKeychainItem?>) -> OSStatus
To
func SecKeychainAddInternetPassword(_ keychain: SecKeychain?, _ serverNameLength: UInt32, _ serverName: UnsafePointer<Int8>, _ securityDomainLength: UInt32, _ securityDomain: UnsafePointer<Int8>, _ accountNameLength: UInt32, _ accountName: UnsafePointer<Int8>, _ pathLength: UInt32, _ path: UnsafePointer<Int8>, _ port: UInt16, _ protocol: SecProtocolType, _ authenticationType: SecAuthenticationType, _ passwordLength: UInt32, _ passwordData: UnsafePointer<Void>, _ itemRef: UnsafeMutablePointer<SecKeychainItem?>) -> OSStatus

Declaration
From
func SecKeychainFindInternetPassword(_ keychainOrArray: AnyObject?, _ serverNameLength: UInt32, _ serverName: UnsafePointer<Int8>, _ securityDomainLength: UInt32, _ securityDomain: UnsafePointer<Int8>, _ accountNameLength: UInt32, _ accountName: UnsafePointer<Int8>, _ pathLength: UInt32, _ path: UnsafePointer<Int8>, _ port: UInt16, _ `protocol`: SecProtocolType, _ authenticationType: SecAuthenticationType, _ passwordLength: UnsafeMutablePointer<UInt32>, _ passwordData: UnsafeMutablePointer<UnsafeMutablePointer<Void>>, _ itemRef: UnsafeMutablePointer<SecKeychainItem?>) -> OSStatus
To
func SecKeychainFindInternetPassword(_ keychainOrArray: AnyObject?, _ serverNameLength: UInt32, _ serverName: UnsafePointer<Int8>, _ securityDomainLength: UInt32, _ securityDomain: UnsafePointer<Int8>, _ accountNameLength: UInt32, _ accountName: UnsafePointer<Int8>, _ pathLength: UInt32, _ path: UnsafePointer<Int8>, _ port: UInt16, _ protocol: SecProtocolType, _ authenticationType: SecAuthenticationType, _ passwordLength: UnsafeMutablePointer<UInt32>, _ passwordData: UnsafeMutablePointer<UnsafeMutablePointer<Void>>, _ itemRef: UnsafeMutablePointer<SecKeychainItem?>) -> OSStatus

Modified SecTransform
Declaration
From
typealias SecTransformRef = SecTransform
To
typealias SecTransform = CFTypeRef

Declaration
From
typealias SecTransformStringOrAttributeRef = SecTransformStringOrAttribute
To
typealias SecTransformStringOrAttribute = CFTypeRef

Declaration
From
func SSLGetNegotiatedProtocolVersion(_ context: SSLContext, _ `protocol`: UnsafeMutablePointer<SSLProtocol>) -> OSStatus
To
func SSLGetNegotiatedProtocolVersion(_ context: SSLContext, _ protocol: UnsafeMutablePointer<SSLProtocol>) -> OSStatus