Функция setsourcefilter (ws2tcpip.h)

Встроенная функция setsourcefilter задает состояние фильтра многоадресной рассылки для сокета IPv4 или IPv6.

Синтаксис

int setsourcefilter(
  [in] SOCKET                 Socket,
  [in] ULONG                  Interface,
  [in] const SOCKADDR         *Group,
  [in] int                    GroupLength,
  [in] MULTICAST_MODE_TYPE    FilterMode,
  [in] ULONG                  SourceCount,
  [in] const SOCKADDR_STORAGE *SourceList
);

Параметры

[in] Socket

Дескриптор, определяющий сокет многоадресной рассылки.

[in] Interface

Индекс интерфейса многоадресной рассылки.

[in] Group

Указатель на адрес сокета группы многоадресной рассылки.

[in] GroupLength

Длина (в байтах) адреса сокета, на который указывает параметр Group .

[in] FilterMode

Режим фильтрации многоадресной рассылки для адреса группы многоадресной рассылки.

[in] SourceCount

Количество исходных адресов в буфере, на который указывает параметр SourceList .

[in] SourceList

Указатель на буфер с IP-адресами, которые необходимо связать с фильтром многоадресной рассылки.

Возвращаемое значение

При успешном выполнении метод setsourcefilter возвращает NO_ERROR (0). Любое ненулевое возвращаемое значение указывает на сбой, и конкретный код ошибки можно получить, вызвав WSAGetLastError.

Код ошибки Значение
WSAENOBUFS
Недостаточно места в буфере.
WSAENOTSOCK
Дескриптор не является сокетом.

Комментарии

Встроенная функция setsourcefilter используется для задания состояния фильтра многоадресной рассылки для сокета IPv4 или IPv6.

Эта функция является частью расширений интерфейса сокета для фильтров источников многоадресной рассылки, определенных в RFC 3678. Приложение может использовать эти функции для получения и настройки фильтров адресов источника многоадресной рассылки, связанных с сокетом.

Windows Phone 8. Эта функция поддерживается для приложений Магазина Windows Phone Windows Phone 8 и более поздних версий.

Windows 8.1 и Windows Server 2012 R2. Эта функция поддерживается для приложений Магазина Windows в Windows 8.1, Windows Server 2012 R2 и более поздних версий.

Требования

Требование Значение
Минимальная версия клиента Windows 8.1, Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2003 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header ws2tcpip.h
Библиотека Ws2_32.lib
DLL Ws2_32.dll

См. также раздел

MULTICAST_MODE_TYPE

SOCKADDR_STORAGE

getipv4sourcefilter

getsourcefilter

setipv4sourcefilter