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

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

Разработчик

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

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

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

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

Наследование


Не применимый

Соответствует


Не применимый

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


Swift

import CFNetwork

Objective C

@import CFNetwork;

Этот документ описывает 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

    Доступность

    Доступный в iOS 2.0 и позже.

  • Создает пару потоков для 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

    Доступность

    Доступный в iOS 2.0 и позже.

  • Эта функция вкладывает коды ошибки 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

    Доступность

    Доступный в iOS 2.0 и позже.

  • Связали ошибочную подобласть с ошибками в 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

    Доступность

    Доступный в iOS 2.0 и позже.

Константы

  • Константы для 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

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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamPropertySocketNativeHandle

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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamPropertySocketSecurityLevel

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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamPropertySSLPeerCertificates

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

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

      Доступный в iOS 2.0 и позже.

      Осуждаемый в iOS 4.0.

    • kCFStreamPropertySSLPeerTrust

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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamPropertySSLContext

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

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

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

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

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

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

      Доступный в iOS 5.0 и позже.

    • kCFStreamPropertySOCKSProxy

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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamPropertySSLSettings

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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamPropertyProxyLocalBypass

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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamPropertySocketRemoteHost

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamPropertySocketRemoteNetService

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamNetworkServiceType

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

      Доступный в iOS 4.0 и позже.

    • kCFStreamPropertyConnectionIsCellular

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

      Доступный в iOS 6.0 и позже.

    • kCFStreamPropertyNoCellular

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

      Доступный в iOS 5.0 и позже.

  • Константы для использования в 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

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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamSSLAllowsExpiredCertificates

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

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

      Доступный в iOS 2.0 и позже.

      Осуждаемый в iOS 4.0.

    • kCFStreamSSLAllowsExpiredRoots

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

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

      Доступный в iOS 2.0 и позже.

      Осуждаемый в iOS 4.0.

    • kCFStreamSSLAllowsAnyRoot

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

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

      Доступный в iOS 2.0 и позже.

      Осуждаемый в iOS 4.0.

    • kCFStreamSSLValidatesCertificateChain

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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamSSLPeerName

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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamSSLCertificates

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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamSSLIsServer

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

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

      Доступный в iOS 2.0 и позже.

    Обсуждение

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

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

    Объявление

    Objective C

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

    Константы

    • kCFStreamSocketSecurityNone

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

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

      Доступный в iOS 2.0 через iOS 7.1.

    • kCFStreamSocketSecuritySSLv2

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

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

      Доступный в iOS 2.0 через iOS 7.1.

    • kCFStreamSocketSecuritySSLv3

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

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

      Доступный в iOS 2.0 через iOS 7.1.

    • kCFStreamSocketSecuritySSLv23

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

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

      Доступный в iOS 2.0 через iOS 7.1.

    • kCFStreamSocketSecurityTLSv1

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

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

      Доступный в iOS 2.0 через iOS 7.1.

    Обсуждение

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

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

    Objective C

    @import CFNetwork;

    Доступность

    Доступный в iOS 2.0 через iOS 7.1.

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

    Объявление

    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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamSocketSecurityLevelSSLv2

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamSocketSecurityLevelSSLv3

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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamSocketSecurityLevelTLSv1

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamSocketSecurityLevelNegotiatedSSL

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

      Доступный в iOS 2.0 и позже.

    Обсуждение

    Это перечисление определяет предпочтительные константы для установки протокола системы защиты для потоковой пары сокета при вызове 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

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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamPropertySOCKSProxyPort

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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamPropertySOCKSVersion

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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamSocketSOCKSVersion4

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamSocketSOCKSVersion5

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamPropertySOCKSUser

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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamPropertySOCKSPassword

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

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

      Доступный в iOS 2.0 и позже.

    Обсуждение

    При установке свойства 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

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

      Доступный в iOS 4.0 и позже.

    • kCFStreamNetworkServiceTypeVideo

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

      Доступный в iOS 5.0 и позже.

    • kCFStreamNetworkServiceTypeBackground

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

      Доступный в iOS 5.0 и позже.

    • kCFStreamNetworkServiceTypeVoice

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

      Доступный в iOS 5.0 и позже.

  • Ошибочные домены, определенные для 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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamErrorDomainSSL

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamErrorDomainWinSock

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

      Доступный в iOS 2.0 и позже.

    Обсуждение

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

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

    Объявление

    Objective C

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

    Константы

    • kCFStreamErrorSOCKSSubDomainNone

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

    • kCFStreamErrorSOCKSSubDomainVersionCode

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

    • kCFStreamErrorSOCKS4SubDomainResponse

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

    • kCFStreamErrorSOCKS5SubDomainUserPass

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

    • kCFStreamErrorSOCKS5SubDomainMethod

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

    • kCFStreamErrorSOCKS5SubDomainResponse

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

    Обсуждение

    Коды ошибки в 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

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamErrorSOCKS5BadState

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamErrorSOCKSUnknownClientVersion

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamErrorSOCKS4RequestFailed

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamErrorSOCKS4IdentdFailed

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

      Доступный в iOS 2.0 и позже.

    • kCFStreamErrorSOCKS4IdConflict

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

      Доступный в iOS 2.0 и позже.

    • kSOCKS5NoAcceptableMethod

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

      Доступный в iOS 2.0 и позже.

    Обсуждение

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

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

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

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