Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылка платформы CoreServices дополнения сокета CFStream

Опции
Развертывание Target:

На этой странице
Язык:

Дополнения сокета CFStream

Этот документ описывает CFStream функции для работы с сокетами. Это - часть CFSocketStream API.

Функции

  • Создает читаемые и перезаписываемые потоки, подключенные к данному CFHost объект.

    Объявление

    Swift

    func CFStreamCreatePairWithSocketToCFHost(_ alloc: CFAllocator!, _ host: CFHost!, _ port: Int32, _ readStream: UnsafeMutablePointer<Unmanaged<CFReadStream>?>, _ writeStream: UnsafeMutablePointer<Unmanaged<CFWriteStream>?>)

    Objective C

    void CFStreamCreatePairWithSocketToCFHost ( CFAllocatorRef alloc, CFHostRef host, SInt32 port, CFReadStreamRef *readStream, CFWriteStreamRef *writeStream );

    Параметры

    alloc

    Средство выделения для использования для выделения памяти для CFReadStream и CFWriteStream объекты. Передача NULL или kCFAllocatorDefault использовать текущее средство выделения по умолчанию.

    host

    A CFHost возразите, с которым подключены потоки. Если не разрешено, узел будет разрешен до соединения.

    port

    Номер порта TCP, с которым должны соединиться потоки сокета.

    readStream

    По возврату, содержит a CFReadStream объект соединился с узлом host на порту port, или NULL если существует отказ во время создания. Если Вы передаете NULL, функция не создаст читаемый поток. Владение соблюдает Создать Правило.

    writeStream

    По возврату, содержит a CFWriteStream объект соединился с узлом host на порту port, или NULL если существует отказ во время создания. Если Вы передаете NULL, функция не создаст перезаписываемый поток. Владение соблюдает Создать Правило.

    Обсуждение

    Потоки не создают сокет или подключение к указанному узлу, пока Вы не открываете один из потоков.

    Большинство свойств совместно используется обоими потоками. Установка совместно используемого свойства для одного потока автоматически устанавливает свойство для другого.

    Оператор импорта

    Objective C

    @import CFNetwork;

    Swift

    import CFNetwork

    Доступность

    Доступный в OS X v10.3 и позже.

  • Создает пару потоков для CFNetService.

    Объявление

    Swift

    func CFStreamCreatePairWithSocketToNetService(_ alloc: CFAllocator!, _ service: CFNetService!, _ readstream: UnsafeMutablePointer<Unmanaged<CFReadStream>?>, _ writeStream: UnsafeMutablePointer<Unmanaged<CFWriteStream>?>)

    Objective C

    void CFStreamCreatePairWithSocketToNetService ( CFAllocatorRef alloc, CFNetServiceRef service, CFReadStreamRef *readStream, CFWriteStreamRef *writeStream );

    Параметры

    alloc

    Средство выделения для использования для выделения памяти для CFReadStream и CFWriteStream объекты. Передача NULL или kCFAllocatorDefault использовать текущее средство выделения по умолчанию.

    service

    Ссылка на CFNetService с которым должны быть подключены потоки. Если служба не будет разрешена, то служба будет разрешена, прежде чем потоки соединяются.

    readstream

    По возврату, содержит a CFReadStream объект соединился со службой, указанной service, или NULL если существует отказ во время создания. Если Вы передаете NULL, функция не создаст читаемый поток. Владение соблюдает Создать Правило.

    writeStream

    По возврату, содержит a CFWriteStream объект соединился со службой, указанной service, или NULL если существует отказ во время создания. Если Вы передаете NULL, функция не создаст перезаписываемый поток. Владение соблюдает Создать Правило.

    Обсуждение

    Потоки не создают сокет, разрешают службу или соединяются с узлом службы, пока Вы не открываете один из потоков.

    Большинство свойств совместно используется обоими потоками. Установка совместно используемого свойства для одного потока автоматически устанавливает свойство для другого.

    Специальные замечания

    Эта функция ориентирована на многопотоковое исполнение.

    Оператор импорта

    Objective C

    @import CFNetwork;

    Swift

    import CFNetwork

    Доступность

    Доступный в OS X v10.3 и позже.

  • CFSocketStreamPairSetSecurityProtocol CFSocketStreamPairSetSecurityProtocol Доступный в OS X v10.1 через OS X v10.9

    Эта функция устанавливает протокол системы защиты для указанной пары потоков сокета.

    Оператор осуждения

    Использовать CFReadStreamSetProperty и CFWriteStreamSetProperty в сочетании с константами безопасности, определенными в CFSocketStream.

    Объявление

    Objective C

    Boolean CFSocketStreamPairSetSecurityProtocol ( CFReadStreamRef socketReadStream, CFWriteStreamRef socketWriteStream, CFStreamSocketSecurityProtocol securityProtocol );

    Параметры

    socketReadStream

    Поток чтения.

    socketWriteStream

    Поток записи.

    securityProtocol

    Протокол системы защиты, который будет установлен. См. Константы Протокола системы защиты Сокета CFStream для возможных значений.

    function result

    TRUE если был установлен указанный протокол системы защиты; иначе, FALSE.

    Обсуждение

    Вызовите эту функцию перед вызовом CFReadStreamOpen открыть поток чтения или CFWriteStreamOpen открыть поток записи.

    Специальные замечания

    Эта функция ориентирована на многопотоковое исполнение.

    Оператор импорта

    Objective C

    @import CFNetwork;

    Доступность

    Доступный в OS X v10.1 через OS X v10.9.

    Осуждаемый в OS X v10.2.

  • Эта функция вкладывает коды ошибки kCFStreamErrorDomainSOCKS домен от CFStreamError возвращенный операцией с потоками.

    Объявление

    Swift

    func CFSocketStreamSOCKSGetError(_ error: UnsafePointer<CFStreamError>) -> Int32

    Objective C

    SInt32 CFSocketStreamSOCKSGetError ( const CFStreamError *error );

    Параметры

    error

    Ошибочное значение для декодирования.

    Обсуждение

    Коды ошибки в kCFStreamErrorDomainSOCKS домен может прибыть из многократных частей стека протоколов, многие из которых определяют свои собственные ошибочные значения как часть внешних спецификаций, такие как Спецификация HTTP.

    Избегать беспорядка от конфликтных кодов ошибки, кодов ошибки в kCFStreamErrorDomainSOCKS домен содержит две части: подобласть, говорящая, какая часть стека протоколов генерировала ошибку и сам код ошибки.

    Вызов CFSocketStreamSOCKSGetError возвращает сам код ошибки, который должен быть интерпретирован в контексте результата вызова к CFSocketStreamSOCKSGetErrorSubdomain. Возможные возвращаемые значения (вне подпроблемно-ориентированных значений, таких как версии клиента и коды Ошибки HTTP) перечислены по Ошибкам CFStream.

    Оператор импорта

    Objective C

    @import CFNetwork;

    Swift

    import CFNetwork

    Доступность

    Доступный в OS X v10.2 и позже.

  • Связали ошибочную подобласть с ошибками в kCFStreamErrorDomainSOCKS домен от CFStreamError возвращенный операцией с потоками.

    Объявление

    Swift

    func CFSocketStreamSOCKSGetErrorSubdomain(_ error: UnsafePointer<CFStreamError>) -> Int32

    Objective C

    SInt32 CFSocketStreamSOCKSGetErrorSubdomain ( const CFStreamError *error );

    Параметры

    error

    Ошибочное значение для декодирования.

    Обсуждение

    Коды ошибки в kCFStreamErrorDomainSOCKS домен может прибыть из многократных частей стека протоколов, многие из которых определяют свои собственные ошибочные значения как часть внешних спецификаций, такие как Спецификация HTTP.

    Избегать беспорядка от конфликтных кодов ошибки, кодов ошибки в kCFStreamErrorDomainSOCKS домен содержит две части: подобласть, говорящая, какая часть стека протоколов генерировала ошибку и сам код ошибки.

    Вызов CFSocketStreamSOCKSGetErrorSubdomain возвращает идентификатор, говорящий, какой уровень стека протоколов произвел ошибку. Возможные значения перечислены в ошибочных Подобластях. С этой информацией можно интерпретировать коды ошибки, возвращенные CFSocketStreamSOCKSGetError.

    Оператор импорта

    Objective C

    @import CFNetwork;

    Swift

    import CFNetwork

    Доступность

    Доступный в OS X v10.2 и позже.

Константы

  • Константы для CFStream ключи свойства

    Объявление

    Swift

    let kCFStreamPropertyShouldCloseNativeSocket: CFString! let kCFStreamPropertySocketNativeHandle: CFString! let kCFStreamPropertySocketSecurityLevel: CFString! let kCFStreamPropertySSLPeerTrust: CFString! let kCFStreamPropertySSLContext: CFString! let kCFStreamPropertySOCKSProxy: CFString! let kCFStreamPropertySSLSettings: CFString! let kCFStreamPropertyProxyLocalBypass: CFString! let kCFStreamPropertySocketRemoteHost: CFString! let kCFStreamPropertySocketRemoteNetService: CFString! let kCFStreamNetworkServiceType: CFString! let kCFStreamPropertyConnectionIsCellular: CFString! let kCFStreamPropertyNoCellular: CFString!

    Objective C

    const CFStringRef kCFStreamPropertyShouldCloseNativeSocket; const CFStringRef kCFStreamPropertySocketSecurityLevel; const CFStringRef kCFStreamPropertySOCKSProxy; const CFStringRef kCFStreamPropertySSLPeerCertificates; const CFStringRef kCFStreamPropertySSLPeerTrust; const CFStringRef kCFStreamPropertySSLSettings; const CFStringRef kCFStreamPropertySSLContext; const CFStringRef kCFStreamPropertyProxyLocalByPass; const CFStringRef kCFStreamPropertySocketRemoteHost; const CFStringRef kCFStreamPropertySocketRemoteNetService; const CFStringRef kCFStreamNetworkServiceType; const CFStringRef kCFStreamPropertyConnectionIsCellular; const CFStringRef kCFStreamPropertyNoCellular;

    Константы

    • kCFStreamPropertyShouldCloseNativeSocket

      kCFStreamPropertyShouldCloseNativeSocket

      Если ключ свойства Close Native Socket.

      Если установлено в kCFBooleanTrue, когда поток будет выпущен, поток закроет и выпустит базовый собственный сокет. Если установлено в kCFBooleanFalse, когда поток будет выпущен, поток не закроет и выпустит базовый собственный сокет. Если поток создается с собственным сокетом, значение по умолчанию этого свойства kCFBooleanFalse. Это свойство только доступно для потоков сокета. Это может быть установлено путем вызова CFReadStreamSetProperty и CFWriteStreamSetProperty, и это может быть скопировано CFReadStreamCopyProperty и CFWriteStreamCopyProperty.

      Доступный в OS X v10.2 и позже.

    • kCFStreamPropertySocketNativeHandle

      kCFStreamPropertySocketNativeHandle

      Ключ свойства Native Handle сокета.

      Причины CFReadStreamCopyProperty или CFWriteStreamCopyProperty возвратиться CFData объект, содержащий собственный дескриптор для потока сокета. Это свойство только доступно для потоков сокета.

      Доступный в OS X v10.1 и позже.

    • kCFStreamPropertySocketSecurityLevel

      kCFStreamPropertySocketSecurityLevel

      Ключ свойства Security Level сокета.

      См. Константы Уровня безопасности Сокета CFStream для определенных констант уровня безопасности для использования.

      Доступный в OS X v10.2 и позже.

    • kCFStreamPropertySSLPeerCertificates

      kCFStreamPropertySSLPeerCertificates

      Ключ свойства SSL Peer Certificates для операций копии, возвращающих a CFArray объектный содержащий SecCertificateRef объекты.

      Для получения дополнительной информации посмотрите SSLGetPeerCertificates в Security/SecureTransport.h.

      Доступный в OS X v10.4 и позже.

      Осуждаемый в OS X v10.6.

    • kCFStreamPropertySSLPeerTrust

      kCFStreamPropertySSLPeerTrust

      Равноправный ключ Управляемой по доверенности собственности SSL для операций копии, возвращающих a SecTrustRef объект, содержащий результат квитирования SSL.

      Для получения дополнительной информации посмотрите SSLCopyPeerTrust в Security/SecureTransport.h.

      Доступный в OS X v10.5 и позже.

    • kCFStreamPropertySSLContext

      kCFStreamPropertySSLContext

      SSLContextRef объект, используемый для операций чтения и операций записи на потоке.

      Прежде, чем открыть поток, можно скопировать объект с этого свойства и сконфигурировать его с помощью Безопасного Транспортного API. Можно также установить это свойство для указания нового SSLContextRef для потока. Поведение зависит от того, был ли поток открыт и от того, связан ли контекст SSL с потоком, следующим образом:

      • Если поток не был открыт, указанный объект заменяет любой существующий контекст и используется в начальном потоковом квитировании, когда открыто соединение.

      • Если поток был открыт без включенного SSL, устанавливание этого свойства инициирует квитирование SSL по существующему сокету.

      • После того, как начальное квитирование SSL происходит, изменение объекта контекста не поддерживается.

      Если словарь настроек SSL установлен для kCFStreamPropertySSLSettings ключ, SSLContextRef объект создается внутренне и конфигурируется на основе того словаря. Однако, если SSLContextRef объект установлен впоследствии, его конфигурация имеет приоритет по ранее сконфигурированному контексту.

      Доступный в OS X v10.9 и позже.

    • kCFStreamPropertySOCKSProxy

      kCFStreamPropertySOCKSProxy

      SOCKS проксирует ключ свойства.

      Установить a CFStream возразите, чтобы использовать прокси SOCKS, вызвать CFReadStreamSetProperty или CFWriteStreamSetProperty со свойством называют набор к kCFStreamPropertySOCKSProxy и его набор значений к a CFDictionary наличие объекта в минимуме a kCFStreamPropertySOCKSProxyHost ключ и a kCFStreamPropertySOCKSProxyPort ключ. Для получения информации об этих ключах см. Прокси SOCKS CFStream Ключевые Константы. SystemConfiguration возвращает CFDictionary для прокси SOCKS, который применим без модификации.

      Доступный в OS X v10.2 и позже.

    • kCFStreamPropertySSLSettings

      kCFStreamPropertySSLSettings

      Ключ свойства SSL Settings для операций присвоения.

      Значение ключа является a CFDictionary объект, содержащий настройки безопасности. Для получения информации о ключах и значениях словаря, см. Свойство CFStream Константы Настроек SSL. По умолчанию нет никаких настроек безопасности.

      Доступный в OS X v10.4 и позже.

    • kCFStreamPropertyProxyLocalBypass

      kCFStreamPropertyProxyLocalBypass

      Проксируйте Локальный ключ свойства Bypass.

      Значение ключа CFBoolean возразите, чье значение указывает, должны ли локальные имена хоста подвергнуться для проксирования обработки.

      Доступный в OS X v10.4 и позже.

    • kCFStreamPropertySocketRemoteHost

      kCFStreamPropertySocketRemoteHost

      Значение ключа является a CFHostRef для удаленного узла, если это известно. В противном случае его значение NULL.

      Доступный в версии 10.3 OS X и позже.

    • kCFStreamPropertySocketRemoteNetService

      kCFStreamPropertySocketRemoteNetService

      Значение ключа является a CFNetServiceRef для службы удаленной сети, если это известно. В противном случае его значение NULL.

      Доступный в версии 10.3 OS X и позже.

    • kCFStreamNetworkServiceType

      kCFStreamNetworkServiceType

      Тип службы для потока. Обеспечение типа службы позволяет системе должным образом обрабатывать определенные атрибуты потока, включая поведение маршрутизации и приостановки. Большинство потоков не должно устанавливать это свойство. Посмотрите “Stream Service Types” для списка возможных значений.

      Доступный в OS X v10.7 и позже.

    • kCFStreamPropertyConnectionIsCellular

      kCFStreamPropertyConnectionIsCellular

      Булево значение, указывающее, соединяется ли поток по сотовому интерфейсу (WWAN). Это - свойство только для чтения и false пока соединение не было установлено.

      Доступный в OS X v10.8 и позже.

    • kCFStreamPropertyNoCellular

      kCFStreamPropertyNoCellular

      Булево значение, указывающее, что соединение не должно быть установлено по сотовой связи (WWAN) соединение. Это значение может быть установлено только перед открытием потока.

      Доступный в OS X v10.8 и позже.

  • Константы для использования в a CFDictionary объект, который является значением kCFStreamPropertySSLSettings потоковый ключ свойства.

    Объявление

    Swift

    let kCFStreamSSLLevel: CFString! let kCFStreamSSLValidatesCertificateChain: CFString! let kCFStreamSSLPeerName: CFString! let kCFStreamSSLCertificates: CFString! let kCFStreamSSLIsServer: CFString!

    Objective C

    const CFStringRef kCFStreamSSLLevel; const CFStringRef kCFStreamSSLAllowsExpiredCertificates; const CFStringRef kCFStreamSSLAllowsExpiredRoots; const CFStringRef kCFStreamSSLAllowsAnyRoot; const CFStringRef kCFStreamSSLValidatesCertificateChain; const CFStringRef kCFStreamSSLPeerName; const CFStringRef kCFStreamSSLCertificates; const CFStringRef kCFStreamSSLIsServer;

    Константы

    • kCFStreamSSLLevel

      kCFStreamSSLLevel

      Ключ свойства Security, значение которого указывает уровень безопасности потока.

      По умолчанию уровень безопасности потока kCFStreamSocketSecurityLevelNegotiatedSSL. Для других возможных значений см. Константы Уровня безопасности Сокета CFStream.

      Доступный в OS X v10.4 и позже.

    • kCFStreamSSLAllowsExpiredCertificates

      kCFStreamSSLAllowsExpiredCertificates

      Ключ свойства Security, значение которого указывает, позволяются ли сертификаты с истекшим сроком.

      По умолчанию значение этого ключа kCFBooleanFalse (сертификаты с истекшим сроком не позволяются).

      Доступный в OS X v10.4 и позже.

      Осуждаемый в OS X v10.6.

    • kCFStreamSSLAllowsExpiredRoots

      kCFStreamSSLAllowsExpiredRoots

      Свойство Security, значение которого указывает, позволяются ли корневые сертификаты с истекшим сроком.

      По умолчанию значение этого ключа kCFBooleanFalse (корневые сертификаты с истекшим сроком не позволяются).

      Доступный в OS X v10.4 и позже.

      Осуждаемый в OS X v10.6.

    • kCFStreamSSLAllowsAnyRoot

      kCFStreamSSLAllowsAnyRoot

      Ключ свойства Security, значение которого указывает, должны ли быть позволены корневые сертификаты.

      По умолчанию значение этого ключа kCFBooleanFalse (корневые сертификаты не позволяются).

      Доступный в OS X v10.4 и позже.

      Осуждаемый в OS X v10.6.

    • kCFStreamSSLValidatesCertificateChain

      kCFStreamSSLValidatesCertificateChain

      Ключ свойства Security, значение которого указывает, должна ли быть проверена цепочка сертификата.

      По умолчанию значение этого ключа kCFBooleanTrue (цепочка сертификата должна быть проверена).

      Доступный в OS X v10.4 и позже.

    • kCFStreamSSLPeerName

      kCFStreamSSLPeerName

      Ключ свойства Security, значение которого переопределяет имя, используемое для проверки сертификата.

      По умолчанию имя хоста, использовавшееся, когда поток создавался, используется; если никакое имя хоста не использовалось, никакое равноправное имя не будет использоваться. Установите значение этого ключа к kCFNull предотвратить проверку имени.

      Доступный в OS X v10.4 и позже.

    • kCFStreamSSLCertificates

      kCFStreamSSLCertificates

      Ключ свойства Security, значение которого является CFArray SecCertificateRefs за исключением первого элемента в массиве, который является SecIdentityRef.

      Для получения дополнительной информации посмотрите SSLSetCertificate() в Security/SecureTransport.h.

      Доступный в OS X v10.4 и позже.

    • kCFStreamSSLIsServer

      kCFStreamSSLIsServer

      Ключ свойства Security, значение которого указывает, должно ли соединение действовать как сервер в процессе SSL.

      По умолчанию значение этого ключа kCFBooleanFalse (соединение не должно действовать как сервер). Если значение этого ключа kCFBooleanTrue, kCFStreamSSLCertificates ключ должен содержать допустимое значение.

      Доступный в OS X v10.4 и позже.

    Обсуждение

    Это перечисление определяет константы для ключей a CFDictionary объект, который является значением kCFStreamPropertySSLSettings ключ.

  • Указывает константы для установки протокола системы защиты для потока сокета.

    Объявление

    Objective C

    typedef enum { kCFStreamSocketSecurityNone = 0, kCFStreamSocketSecuritySSLv2, kCFStreamSocketSecuritySSLv3, kCFStreamSocketSecuritySSLv23, kCFStreamSocketSecurityTLSv1 } CFStreamSocketSecurityProtocol;

    Константы

    • kCFStreamSocketSecurityNone

      kCFStreamSocketSecurityNone

      Указывает, что никакой протокол системы защиты не установлен для потока сокета.

      Использовать kCFStreamSocketSecurityLevelNone.

      Доступный в OS X v10.1 и позже.

      Осуждаемый в OS X v10.2.

    • kCFStreamSocketSecuritySSLv2

      kCFStreamSocketSecuritySSLv2

      Указывает что версия SSL, которая будет установлена как протокол системы защиты для потока сокета.

      Использовать kCFStreamSocketSecurityLevelSSLv2.

      Доступный в OS X v10.1 и позже.

      Осуждаемый в OS X v10.2.

    • kCFStreamSocketSecuritySSLv3

      kCFStreamSocketSecuritySSLv3

      Указывает, что версия 3 SSL установлена как протокол системы защиты для потока сокета.

      Использовать kCFStreamSocketSecurityLevelSSLv3.

      Доступный в OS X v10.1 и позже.

      Осуждаемый в OS X v10.2.

    • kCFStreamSocketSecuritySSLv23

      kCFStreamSocketSecuritySSLv23

      Указывает, что версия 3 SSL установлена как протокол системы защиты для потоковой пары сокета. Если та версия не доступна, указывает что версия SSL, которая будет установлена как протокол системы защиты для потока сокета.

      Использовать kCFStreamSocketSecurityLevelNegotiatedSSL.

      Доступный в OS X v10.1 и позже.

      Осуждаемый в OS X v10.2.

    • kCFStreamSocketSecurityTLSv1

      kCFStreamSocketSecurityTLSv1

      Указывает, что версия 1 TLS установлена как протокол системы защиты для потока сокета.

      Использовать kCFStreamSocketSecurityLevelTLSv1.

      Доступный в OS X v10.1 и позже.

      Осуждаемый в OS X v10.2.

    Обсуждение

    Это перечисление определяет константы для установки протокола системы защиты для потоковой пары сокета при вызове CFSocketStreamPairSetSecurityProtocol.

    Оператор импорта

    Objective C

    @import CFNetwork;

    Доступность

    Доступный в OS X v10.1 через OS X v10.9.

  • Константы для установки уровня безопасности потока сокета.

    Объявление

    Swift

    let kCFStreamSocketSecurityLevelNone: CFString! let kCFStreamSocketSecurityLevelSSLv2: CFString! let kCFStreamSocketSecurityLevelSSLv3: CFString! let kCFStreamSocketSecurityLevelTLSv1: CFString! let kCFStreamSocketSecurityLevelNegotiatedSSL: CFString!

    Objective C

    const CFStringRef kCFStreamSocketSecurityLevelNone; const CFStringRef kCFStreamSocketSecurityLevelSSLv2; const CFStringRef kCFStreamSocketSecurityLevelSSLv3; const CFStringRef kCFStreamSocketSecurityLevelTLSv1; const CFStringRef kCFStreamSocketSecurityLevelNegotiatedSSL;

    Константы

    • kCFStreamSocketSecurityLevelNone

      kCFStreamSocketSecurityLevelNone

      Указывает, что не установлен никакой уровень безопасности.

      Доступный в OS X v10.2 и позже.

    • kCFStreamSocketSecurityLevelSSLv2

      kCFStreamSocketSecurityLevelSSLv2

      Указывает что версия SSL, которая будет установлена как протокол системы защиты для потока сокета.

      Доступный в OS X v10.2 и позже.

    • kCFStreamSocketSecurityLevelSSLv3

      kCFStreamSocketSecurityLevelSSLv3

      Указывает, что версия 3 SSL установлена как протокол системы защиты для потоковой пары сокета.

      Если версия 3 SSL не доступна, указывает что версия SSL, которая будет установлена как протокол системы защиты для потока сокета.

      Доступный в OS X v10.2 и позже.

    • kCFStreamSocketSecurityLevelTLSv1

      kCFStreamSocketSecurityLevelTLSv1

      Указывает, что версия 1 TLS установлена как протокол системы защиты для потока сокета.

      Доступный в OS X v10.2 и позже.

    • kCFStreamSocketSecurityLevelNegotiatedSSL

      kCFStreamSocketSecurityLevelNegotiatedSSL

      Указывает, что протокол системы защиты высшего уровня, который может быть согласован быть установленным как протокол системы защиты для потока сокета.

      Доступный в OS X v10.2 и позже.

    Обсуждение

    Это перечисление определяет предпочтительные константы для установки протокола системы защиты для потоковой пары сокета при вызове CFReadStreamSetProperty или CFWriteStreamSetProperty.

  • Константы для прокси SOCKS CFDictionary ключи.

    Объявление

    Swift

    let kCFStreamPropertySOCKSProxyHost: CFString! let kCFStreamPropertySOCKSProxyPort: CFString! let kCFStreamPropertySOCKSVersion: CFString! let kCFStreamSocketSOCKSVersion4: CFString! let kCFStreamSocketSOCKSVersion5: CFString! let kCFStreamPropertySOCKSUser: CFString! let kCFStreamPropertySOCKSPassword: CFString!

    Objective C

    const CFStringRef kCFStreamPropertySOCKSProxyHost; const CFStringRef kCFStreamPropertySOCKSProxyPort; const CFStringRef kCFStreamPropertySOCKSVersion; const CFStringRef kCFStreamSocketSOCKSVersion4; const CFStringRef kCFStreamSocketSOCKSVersion5; const CFStringRef kCFStreamPropertySOCKSUser; const CFStringRef kCFStreamPropertySOCKSPassword;

    Константы

    • kCFStreamPropertySOCKSProxyHost

      kCFStreamPropertySOCKSProxyHost

      Постоянный для ключа прокси-сервера SOCKS.

      Этот ключ содержит объект CFString, представляющий прокси-сервер SOCKS. Определенный для соответствия kSCPropNetProxiesSOCKSProxy.

      Доступный в OS X v10.2 и позже.

    • kCFStreamPropertySOCKSProxyPort

      kCFStreamPropertySOCKSProxyPort

      Постоянный для ключа порта хоста прокси SOCKS.

      Этот ключ содержит a CFNumberRef объект типа kCFNumberSInt32Type чье значение представляет порт, на котором слушает прокси.

      Доступный в OS X v10.2 и позже.

    • kCFStreamPropertySOCKSVersion

      kCFStreamPropertySOCKSVersion

      Постоянный для ключа версии SOCKS.

      Его значение должно быть kCFStreamSocketSOCKSVersion4 или kCFStreamSocketSOCKSVersion5 установить SOCKS4 или SOCKS5, соответственно. Если этот ключ не присутствует, SOCKS5 используется по умолчанию.

      Доступный в OS X v10.2 и позже.

    • kCFStreamSocketSOCKSVersion4

      kCFStreamSocketSOCKSVersion4

      Констант использовал в kCFStreamSockerSOCKSVersion ключ для указания SOCKS4 как версию SOCKS для потока.

      Доступный в OS X v10.2 и позже.

    • kCFStreamSocketSOCKSVersion5

      kCFStreamSocketSOCKSVersion5

      Констант использовал в kCFStreamSOCKSVersion ключ для указания SOCKS5 как версию SOCKS для потока.

      Доступный в OS X v10.2 и позже.

    • kCFStreamPropertySOCKSUser

      kCFStreamPropertySOCKSUser

      Постоянный для ключа, требуемого установить имя пользователя.

      Значение является a CFString объект, содержащий имя пользователя.

      Доступный в OS X v10.2 и позже.

    • kCFStreamPropertySOCKSPassword

      kCFStreamPropertySOCKSPassword

      Постоянный для ключа, требуемого установить пароль пользователя.

      Значение является a CFString объект, содержащий пароль пользователя.

      Доступный в OS X v10.2 и позже.

    Обсуждение

    При установке свойства SOCKS Proxy потока значение свойства является a CFDictionary объект, содержащий в минимуме kCFStreamPropertySOCKSProxyHost и kCFStreamPropertySOCKSProxyPort ключи. Словарь может также содержать другие ключи, описанные в этом разделе.

  • Строковые константы, указывающие тип службы потока.

    Объявление

    Swift

    let kCFStreamNetworkServiceTypeVoIP: CFString! let kCFStreamNetworkServiceTypeVideo: CFString! let kCFStreamNetworkServiceTypeBackground: CFString! let kCFStreamNetworkServiceTypeVoice: CFString!

    Objective C

    CFStringRef const kCFStreamNetworkServiceTypeVoIP; const CFStringRef kCFStreamNetworkServiceTypeVideo; const CFStringRef kCFStreamNetworkServiceTypeBackground; const CFStringRef kCFStreamNetworkServiceTypeVoice;

    Константы

    • kCFStreamNetworkServiceTypeVoIP

      kCFStreamNetworkServiceTypeVoIP

      Указывает, что поток предоставляет услугу VoIP.

      Доступный в OS X v10.7 и позже.

    • kCFStreamNetworkServiceTypeVideo

      kCFStreamNetworkServiceTypeVideo

      Указывает, что поток обеспечивает интерактивные видеоданные.

      Доступный в OS X v10.7 и позже.

    • kCFStreamNetworkServiceTypeBackground

      kCFStreamNetworkServiceTypeBackground

      Указывает, что поток является фоновой загрузкой.

      Доступный в OS X v10.7 и позже.

    • kCFStreamNetworkServiceTypeVoice

      kCFStreamNetworkServiceTypeVoice

      Указывает, что поток обеспечивает интерактивную речевую информацию.

      Доступный в OS X v10.7 и позже.

  • Ошибочные домены, определенные для CFSocketStream вызовы.

    Объявление

    Swift

    let kCFStreamErrorDomainSOCKS: Int32 let kCFStreamErrorDomainSSL: Int32 let kCFStreamErrorDomainWinSock: CFIndex

    Objective C

    extern const int kCFStreamErrorDomainSOCKS; extern const int kCFStreamErrorDomainSSL; extern const CFIndex kCFStreamErrorDomainWinSock;

    Константы

    • kCFStreamErrorDomainSOCKS

      kCFStreamErrorDomainSOCKS

      Этот домен возвращает коды ошибки из уровня SOCKS. Ошибки описаны в

      Доступный в версии 10.5 OS X и позже.

    • kCFStreamErrorDomainSSL

      kCFStreamErrorDomainSSL

      Этот домен возвращает коды ошибки, связанные с уровнем SSL. Для списка кодов ошибки посмотрите заголовок SecureTransport.h в Security.framework.

      Доступный в версии 10.5 OS X и позже.

    • kCFStreamErrorDomainWinSock

      kCFStreamErrorDomainWinSock

      При выполнении кода CFNetwork Windows этот домен возвращает коды ошибки, связанные с базовым штабелем TCP/IP. Необходимо также отметить что несетевые ошибки такой как ENOMEM поставлены через домен POSIX. Посмотрите заголовок winsock2.h для соответствующих кодов ошибки.

      Доступный в версии 10.5 OS X и позже.

    Обсуждение

    Для определения источника ошибки исследуйте userInfo словарь, включенный в CFError объект, возвращенный вызовом функции или вызовом CFErrorGetDomain и передача в CFError возразите и домен, значение которого Вы хотите считать.

  • Подобласти раньше определяли, как интерпретировать ошибку в kCFStreamErrorDomainSOCKS домен.

    Объявление

    Objective C

    enum { kCFStreamErrorSOCKSSubDomainNone = 0, kCFStreamErrorSOCKSSubDomainVersionCode = 1, kCFStreamErrorSOCKS4SubDomainResponse = 2, kCFStreamErrorSOCKS5SubDomainUserPass = 3, kCFStreamErrorSOCKS5SubDomainMethod = 4, kCFStreamErrorSOCKS5SubDomainResponse = 5 };

    Константы

    • kCFStreamErrorSOCKSSubDomainNone

      kCFStreamErrorSOCKSSubDomainNone

      Код ошибки возвратился, код ошибки SOCKS.

      Доступный в версии 10.5 OS X и позже.

    • kCFStreamErrorSOCKSSubDomainVersionCode

      kCFStreamErrorSOCKSSubDomainVersionCode

      Ошибка возвратилась, содержит версию SOCKS, который сервер хочет использовать.

      Доступный в версии 10.5 OS X и позже.

    • kCFStreamErrorSOCKS4SubDomainResponse

      kCFStreamErrorSOCKS4SubDomainResponse

      Ошибка возвратилась, код состояния, который сервер возвратил после последней работы.

      Доступный в версии 10.5 OS X и позже.

    • kCFStreamErrorSOCKS5SubDomainUserPass

      kCFStreamErrorSOCKS5SubDomainUserPass

      Эта подобласть возвращает коды ошибки, связанные с последней попыткой аутентификации.

      Доступный в версии 10.5 OS X и позже.

    • kCFStreamErrorSOCKS5SubDomainMethod

      kCFStreamErrorSOCKS5SubDomainMethod

      Эта подобласть возвращает желаемый метод согласования сервера.

      Доступный в версии 10.5 OS X и позже.

    • kCFStreamErrorSOCKS5SubDomainResponse

      kCFStreamErrorSOCKS5SubDomainResponse

      Эта подобласть возвращает код ответа, отправленный сервером при ответе на запрос на установление соединения.

      Доступный в версии 10.5 OS X и позже.

    Обсуждение

    Коды ошибки в kCFStreamErrorDomainSOCKS домен может прибыть из многократных частей стека протоколов, многие из которых определяют свои собственные ошибочные значения как часть внешних спецификаций, такие как Спецификация HTTP.

    Избегать беспорядка от конфликтных кодов ошибки, кодов ошибки в kCFStreamErrorDomainSOCKS домен содержит две части: подобласть, говорящая, какая часть стека протоколов генерировала ошибку и сам код ошибки.

    Вызов CFSocketStreamSOCKSGetErrorSubdomain возвращает идентификатор, говорящий, какой уровень стека протоколов произвел ошибку. Этот список констант содержит возможные значения, которые возвратит эта функция.

    Вызов CFSocketStreamSOCKSGetError возвращает фактический код ошибки, который описывает подобласть.

  • Коды ошибки, возвращенные kCFStreamErrorDomainSOCKS ошибочный домен.

    Объявление

    Swift

    var kCFStreamErrorSOCKS5BadResponseAddr: Int { get } var kCFStreamErrorSOCKS5BadState: Int { get } var kCFStreamErrorSOCKSUnknownClientVersion: Int { get } var kCFStreamErrorSOCKS4RequestFailed: Int { get } var kCFStreamErrorSOCKS4IdentdFailed: Int { get } var kCFStreamErrorSOCKS4IdConflict: Int { get } var kSOCKS5NoAcceptableMethod: Int { get }

    Objective C

    /* kCFStreamErrorSOCKSSubDomainNone */ enum { kCFStreamErrorSOCKS5BadResponseAddr = 1, kCFStreamErrorSOCKS5BadState = 2, kCFStreamErrorSOCKSUnknownClientVersion = 3 }; /* kCFStreamErrorSOCKS4SubDomainResponse */ enum { kCFStreamErrorSOCKS4RequestFailed = 91, kCFStreamErrorSOCKS4IdentdFailed = 92, kCFStreamErrorSOCKS4IdConflict = 93 }; /* kCFStreamErrorSOCKS5SubDomainMethod */ enum { kSOCKS5NoAcceptableMethod = 0xFF };

    Константы

    • kCFStreamErrorSOCKS5BadResponseAddr

      kCFStreamErrorSOCKS5BadResponseAddr

      Адрес возвратился, не имеет известного типа. Этот код ошибки только допустим для ошибок в kCFStreamErrorSOCKSSubDomainNone подобласть.

      Доступный в версии 10.5 OS X и позже.

    • kCFStreamErrorSOCKS5BadState

      kCFStreamErrorSOCKS5BadState

      Поток не находится в состоянии, позволяющем требуемую работу. Этот код ошибки только допустим для ошибок в kCFStreamErrorSOCKSSubDomainNone подобласть..

      Доступный в версии 10.5 OS X и позже.

    • kCFStreamErrorSOCKSUnknownClientVersion

      kCFStreamErrorSOCKSUnknownClientVersion

      Сервер SOCKS отклонил доступ, потому что это не поддерживает соединения с требуемой версией SOCKS. Версия клиента SOCKS. Можно запросить kCFSOCKSVersionKey ключ для обнаружения, что версия сервер, который требуют. Этот код ошибки только допустим для ошибок в kCFStreamErrorSOCKSSubDomainNone подобласть.

      Доступный в версии 10.5 OS X и позже.

    • kCFStreamErrorSOCKS4RequestFailed

      kCFStreamErrorSOCKS4RequestFailed

      Запрос, отклоненный сервером или запросом, перестал работать. Эта ошибка является определенной для SOCKS4. Этот код ошибки только допустим для ошибок в kCFStreamErrorSOCKS4SubDomainResponse подобласть.

      Доступный в версии 10.5 OS X и позже.

    • kCFStreamErrorSOCKS4IdentdFailed

      kCFStreamErrorSOCKS4IdentdFailed

      Запрос, отклоненный сервером, потому что это не могло соединиться с identd демон на клиенте. Эта ошибка является определенной для SOCKS4. Этот код ошибки только допустим для ошибок в kCFStreamErrorSOCKS4SubDomainResponse подобласть.

      Доступный в версии 10.5 OS X и позже.

    • kCFStreamErrorSOCKS4IdConflict

      kCFStreamErrorSOCKS4IdConflict

      Запрос, отклоненный сервером, потому что клиентская программа и identd демон сообщил о различных идентификаторах пользователей. Эта ошибка является определенной для SOCKS4. Этот код ошибки только допустим для ошибок в kCFStreamErrorSOCKS4SubDomainResponse подобласть.

      Доступный в версии 10.5 OS X и позже.

    • kSOCKS5NoAcceptableMethod

      kSOCKS5NoAcceptableMethod

      Клиент и сервер не мог найти согласованный метод аутентификации. Этот код ошибки только допустим для ошибок в kCFStreamErrorSOCKS5SubDomainMethod подобласть.

      Доступный в версии 10.5 OS X и позже.

    Обсуждение

    Коды ошибки в kCFStreamErrorDomainSOCKS домен может прибыть из многократных частей стека протоколов, многие из которых определяют свои собственные ошибочные значения как часть внешних спецификаций, такие как Спецификация HTTP.

    Избегать беспорядка от конфликтных кодов ошибки, кодов ошибки в kCFStreamErrorDomainSOCKS домен содержит две части: подобласть, говорящая, какая часть стека протоколов генерировала ошибку и сам код ошибки.

    Вызов CFSocketStreamSOCKSGetErrorSubdomain возвращает идентификатор, говорящий, какой уровень стека протоколов произвел ошибку.

    Вызов CFSocketStreamSOCKSGetError возвращает фактический код ошибки, который описывает подобласть. Этот список констант содержит возможные значения, которые возвратит эта функция. Они должны быть интерпретированы в контексте соответствующей ошибочной подобласти.