estrutura CSADDR_INFO (ws2def.h)
A estrutura CSADDR_INFO contém informações de endereço do Windows Sockets para um soquete, serviço de rede ou provedor de namespace.
Sintaxe
typedef struct _CSADDR_INFO {
SOCKET_ADDRESS LocalAddr;
SOCKET_ADDRESS RemoteAddr;
INT iSocketType;
INT iProtocol;
} CSADDR_INFO, *PCSADDR_INFO, *LPCSADDR_INFO;
Membros
LocalAddr
Tipo: SOCKET_ADDRESS
O endereço local do Windows Sockets.
Em um aplicativo cliente, passe esse endereço para a função de associação para obter acesso a um serviço de rede.
Em um serviço de rede, passe esse endereço para a função de associação para que o serviço seja associado ao endereço local apropriado.
RemoteAddr
Tipo: SOCKET_ADDRESS
Endereço remoto do Windows Sockets.
Há vários usos para este endereço remoto:
- Você pode usar esse endereço remoto para se conectar ao serviço por meio da função de conexão . Isso será útil se um aplicativo executar operações de envio/ derecebimento que envolvem protocolos orientados à conexão.
- Você pode usar esse endereço remoto com a função sendto quando estiver se comunicando por um protocolo sem conexão (datagram). Se você estiver usando um protocolo sem conexão, como UDP, sendto normalmente é a maneira como você passa dados para o sistema remoto.
iSocketType
Tipo: INT
O tipo de soquete do Windows. Os valores possíveis para o tipo de soquete são definidos no arquivo de cabeçalho Winsock2.h .
A tabela a seguir lista os valores possíveis compatíveis com o Windows Sockets 2:
Valor | Significado |
---|---|
|
Um soquete de fluxo. Esse é um protocolo que envia dados como um fluxo de bytes, sem limites de mensagem. Esse tipo de soquete fornece fluxos de bytes baseados em conexão sequenciados, confiáveis, bidirecionais e baseados em conexão com um mecanismo de transmissão de dados OOB. Esse tipo de soquete usa o Protocolo de Controle de Transmissão (TCP) para a família de endereços da Internet (AF_INET ou AF_INET6). |
|
Um soquete de datagrama. Esse tipo de soquete dá suporte a datagramas, que são buffers sem conexão e não confiáveis de um comprimento máximo fixo (normalmente pequeno). Esse tipo de soquete usa o UDP (User Datagram Protocol) para a família de endereços da Internet (AF_INET ou AF_INET6).
Os serviços usam a função recvfrom para obter datagramas. As funções de escuta e aceitação não funcionam com datagramas. |
|
Um soquete de datagrama de mensagem confiável. Esse tipo de soquete preserva os limites de mensagem nos dados. Um exemplo desse tipo é a implementação do protocolo multicast PGM (Pragmática Geral Multicast) no Windows, geralmente conhecida como programação multicast confiável. |
|
Um soquete de fluxo de pacotes sequenciado. Esse tipo de soquete fornece um pacote pseudo-fluxo com base em datagramas. |
iProtocol
Tipo: INT
O protocolo usado. As opções possíveis para o parâmetro de protocolo são específicas para a família de endereços e o tipo de soquete especificados. Os valores possíveis são definidos nos arquivos de cabeçalho Winsock2.h e Wsrm.h .
No SDK do Windows lançado para Windows Vista e posterior, a organização dos arquivos de cabeçalho foi alterada e esse parâmetro pode ser um dos valores do tipo de enumeração IPPROTO definido no arquivo de cabeçalho Ws2def.h . Observe que o arquivo de cabeçalho Ws2def.h é incluído automaticamente em Winsock2.h e nunca deve ser usado diretamente.
A tabela a seguir lista valores comuns para o protocolo , embora muitos outros valores sejam possíveis.
Comentários
A função GetAddressByName obtém informações de endereço do Windows Sockets usando estruturas CSADDR_INFO .
A função getsockopt chamada com a opção de soquete SO_BSP_STATE recupera uma estrutura de CSADDR_INFO para o soquete especificado.
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Cabeçalho | ws2def.h (inclua Nspapi.h) |