Compartilhar via


Opções de soquete e IOCTLs

Algumas das opções de soquete do Windows Sockets 2 são resumidas na tabela a seguir. Informações mais detalhadas são fornecidas na seção 4 em WSPGetSockOpt e/ou WSPSetSockOpt. Há outras opções de soquete específicas do protocolo que podem ser encontradas no Anexo Protocol-Specific. Uma lista completa de opções de soquete para soquetes do Windows estão disponíveis na referência winsock.

Para obter um resumo de alguns dos Winsock Ioctls, consulte Resumo de Opcodes ioctl do soquete. Uma lista completa de IOCTLs winsock estão disponíveis na referência winsock.

Resumo das opções comuns do soquete

Um provedor de serviços Winsock deve reconhecer todas essas opções e (para WSPGetSockOpt) retornar valores plausíveis para cada um. O valor padrão para cada opção é mostrado na tabela a seguir.

Valor

Tipo

Significado

Inadimplência

Nota

SO_ACCEPTCONN

BOOL

Soquete está escutando.

FALSE, a menos que umWSPListentenha sido executado.

SO_BROADCAST

BOOL

O soquete é configurado para a transmissão e o recebimento de mensagens de transmissão.

FALSO

SO_DEBUG

BOOL

A depuração está habilitada.

FALSO

(i)

SO_DONTLINGER

BOOL

Se for true, a opção SO_LINGER será desabilitada.

VERDADEIRO

SO_DONTROUTE

BOOL

O roteamento está desabilitado. É bem-sucedido, mas é ignorado em soquetes AF_INET; falha em soquetes AF_INET6 com WSAENOPROTOOPT . Não há suporte para soquetes atm (resulta em um erro).

FALSO

(i)

SO_ERROR

int

Recupera o status do erro e limpa.

0

SO_GROUP_ID

GRUPO

Reservado.

ZERO

Obter somente

SO_GROUP_PRIORITY

int

Reservado.

0

SO_KEEPALIVE

BOOL

Keepalives estão sendo enviados. Não há suporte para soquetes atm (resulta em um erro).

FALSO

(i)

SO_LINGER

A estrutura permanece

Retorna as opções de permanência atuais.

l_onoff é 0

SO_MAX_MSG_SIZE

int

Tamanho máximo de saída de uma mensagem para tipos de soquete de mensagem. Não há nenhuma provisão para determinar o tamanho máximo da mensagem de entrada. Não tem significado para soquetes orientados a fluxo.

Dependente da implementação

Obter somente

SO_OOBINLINE

BOOL

Os dados do OOB estão sendo recebidos no fluxo de dados normal.

FALSO

SO_PROTOCOL_INFOW

estrutura WSAPROTOCOL_INFO

Descrição das informações de protocolo para o protocolo associado a esse soquete.

Dependente de protocolo

Obter somente

SO_RCVBUF

int

O espaço total de buffer por soquete reservado para recebimentos. Isso não está relacionado ao SO_MAX_MSG_SIZE e não corresponde necessariamente ao tamanho da janela de recebimento do TCP.

Dependente da implementação

(i)

SO_REUSEADDR

BOOL

O endereço ao qual esse soquete está associado pode ser usado por outras pessoas. Não aplicável em soquetes de caixa eletrônico.

FALSO

SO_SNDBUF

int

O espaço total de buffer por soquete reservado para envios. Isso não está relacionado ao SO_MAX_MSG_SIZE e não corresponde necessariamente ao tamanho de uma janela de envio TCP.

Dependente da implementação

(i)

SO_TYPE

int

O tipo do soquete (por exemplo, SOCK_STREAM).

Conforme criado por meio do soquete.

PVD_CONFIG

char FAR *

Um objeto de estrutura de dados opaco que contém informações de configuração do provedor de serviços.

Dependente da implementação

TCP_NODELAY

BOOL

Desabilita o algoritmo Nagle para enviar a coalescagem.

Dependente da implementação

(i) Um provedor de serviços pode ignorar silenciosamente essa opção em WSPSetSockOpt e retornar um valor constante para WSPGetSockOpt ou pode aceitar um valor para WSPSetSockOpt e retornar o valor correspondente em WSPGetSockOpt sem usar o valor de qualquer forma.

 

opções de soquete

opções de soquete SOL_SOCKET

opções de soquete IPPROTO_TCP

opções de soquete IPPROTO_UDP

ioctls winsock