Função getsourcefilter (ws2tcpip.h)
A função embutida getsourcefilter recupera o estado do filtro multicast para um soquete IPv4 ou IPv6.
Sintaxe
int getsourcefilter(
[in] SOCKET Socket,
[in] ULONG Interface,
[in] const SOCKADDR *Group,
[in] int GroupLength,
[out] MULTICAST_MODE_TYPE *FilterMode,
[in, out] ULONG *SourceCount,
[out] SOCKADDR_STORAGE *SourceList
);
Parâmetros
[in] Socket
Um descritor que identifica um soquete multicast.
[in] Interface
O índice de interface da interface multicast.
[in] Group
Um ponteiro para o endereço do soquete do grupo multicast.
[in] GroupLength
O comprimento, em bytes, do endereço do soquete apontado pelo parâmetro Group .
[out] FilterMode
Um ponteiro para um valor para receber o modo de filtro multicast para o endereço do grupo multicast quando a função retornar.
[in, out] SourceCount
Na entrada, um ponteiro para um valor que indica o número máximo de endereços de origem que caberão no buffer apontado pelo parâmetro SourceList .
Na saída, um ponteiro para um valor que indica o número total de endereços de origem associados ao filtro multicast.
[out] SourceList
Um ponteiro para um buffer para receber a lista de endereços IP associados ao filtro multicast.
Se SourceCount for zero na entrada, um ponteiro NULL poderá ser fornecido.
Retornar valor
Em caso de êxito, getsourcefilter retorna NO_ERROR (0). Qualquer valor retornado diferente de zero indica falha e um código de erro específico pode ser recuperado chamando WSAGetLastError.
Código do erro | Significado |
---|---|
Espaço em buffer insuficiente está disponível. | |
O descritor não é um soquete. |
Comentários
A função embutida getsourcefilter é usada para recuperar o estado do filtro multicast para um soquete IPv4 ou IPv6.
Se o aplicativo não souber o tamanho da lista de origem com antecedência, ele poderá fazer uma suposição (zero, por exemplo). Se após a conclusão, o parâmetro SourceCount conterá um valor maior, a operação poderá ser repetida com um buffer grande o suficiente.
No retorno, o parâmetro SourceCount é sempre atualizado para ser o número total de fontes no filtro, enquanto o buffer apontado pelo parâmetro SourceList conterá quantos endereços de origem forem ajustados, até o mínimo do tamanho da matriz passado como o valor sourceCount original e o número total de fontes no filtro.
Essa função faz parte das extensões de interface do soquete para filtros de origem multicast definidos no RFC 3678. Um aplicativo pode usar essas funções para recuperar e definir os filtros de endereço de origem multicast associados a um soquete.
Windows Phone 8: essa função tem suporte para aplicativos da Windows Phone Store no Windows Phone 8 e posterior.
Windows 8.1 e Windows Server 2012 R2: essa função tem suporte para aplicativos da Windows Store em Windows 8.1, Windows Server 2012 R2 e posteriores.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 8.1, Windows Vista [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows Server 2003 [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | ws2tcpip.h |
Biblioteca | Ws2_32.lib |
DLL | Ws2_32.dll |