Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Сокеты Windows 2 предлагают расширенный набор операций, которые могут возникать совпадут с установкой подключения сокета. Ниже описаны требования поставщика услуг для реализации этих функций.
Условное принятие
Как описано ранее, WSPAccept вызывает функцию условия, предоставляемую клиентом, которая использует входные параметры для предоставления сведений о ожидающем запросе подключения. Эти сведения могут использоваться клиентом для принятия или отклонения запроса на подключение на основе сведений о вызывающих объектах, таких как идентификатор вызывающего объекта, QoS и т. д. Если функция условия возвращает CF_ACCEPT, создается новый сокет с теми же свойствами, что и сокет прослушивания, и возвращается дескриптор нового сокета. Если функция условия возвращает CF_REJECT, запрос на подключение должен быть отклонен. Если функция условия возвращает CF_DEFER, решение о принятии и отклонении не может быть принято немедленно, а поставщик услуг должен оставить запрос на подключение в очереди невыполненной работы. Клиент должен снова вызвать WSPAccept, когда он готов принять решение, и упорядочить функцию условия для возврата CF_ACCEPT или CF_REJECT. Хотя запрос на отложенное подключение находится в верхней части очереди невыполненной работы, поставщик служб не выдает никаких дополнительных указаний для ожидающих запросов на подключение.
Обмен данными пользователей во время подключения
Некоторые протоколы позволяют обмениваться небольшим количеством пользовательских данных во время подключения. Если эти данные получены от подключающегося узла, он помещается в буфер поставщика услуг, а указатель на этот буфер вместе с значением длины передаются клиенту Winsock SPI через входные параметры функции WSPAccept условий. Если клиент Winsock SPI имеет данные ответа для возврата к подключаемом узлу, он может скопировать его в буфер, предоставленный поставщиком услуг. Указатель на этот буфер и целое число, указывающее размер буфера, также предоставляются в качестве входных параметров функции условия (если поддерживается протоколом).
Установка групп сокетов
Все использование групп сокетов зарезервировано.