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. Existem outras novas opções de soquete específicas do protocolo que podem ser encontradas no Anexo Específico do Protocolo. Uma lista completa de Opções de Soquete para Windows Sockets está disponível na referência Winsock.

Para um resumo de alguns dos Ioctls Winsock, consulte Resumo de Opcodes de IOCTL de Soquete. Uma lista completa de IOCTLs Winsock estão disponíveis na referência Winsock.

Resumo das opções comuns de soquete

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

Valor

Tipo

Significado

Padrão

Observação

SO_ACCEPTCONN

BOOL

O soquete está escutando.

FALSE a menos que um WSPListen tenha sido executado.

SO_BROADCAST

BOOL

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

FALSE

SO_DEBUG

BOOL

A depuração está habilitada

FALSE

(i)

SO_DONTLINGER

BOOL

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

TRUE

SO_DONTROUTE

BOOL

O roteamento está desabilitado. Obtém êxito, mas é ignorado em soquetes AF_INET; falha em soquetes AF_INET6 com WSAENOPROTOOPT. Não suportado em tomadas ATM (resulta em um erro).

FALSE

(i)

SO_ERROR

INT

Recupera o status do erro e limpa.

0

SO_GROUP_ID

GROUP

Reservado.

NULO

Obtém somente

SO_GROUP_PRIORITY

INT

Reservado.

0

SO_KEEPALIVE

BOOL

Keepalives estão sendo enviados. Não suportado em tomadas ATM (resulta em um erro).

FALSE

(i)

SO_LINGER

A estrutura permanece

Retorna as opções persistentes 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

Obtém somente

SO_OOBINLINE

BOOL

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

FALSE

SO_PROTOCOL_INFOW

estrutura WSAPROTOCOL_INFO

Descrição das informações de protocolo para o protocolo que está vinculado a este soquete.

Dependente do protocolo

Obtém 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 TCP.

Dependente da implementação

(i)

SO_REUSEADDR

BOOL

O endereço ao qual esse soquete está vinculado pode ser usado por outras pessoas. Não aplicável em soquetes ATM.

FALSE

SO_SNDBUF

INT

O espaço do buffer total 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 TCP.

Dependente da implementação

(i)

SO_TYPE

INT

O tipo do soquete (por exemplo, SOCK_STREAM).

Como criado através de 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 união de envio.

Dependente da implementação

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

 

Opções de soquete

Opções de soquete SOL_SOCKET

Opções de soquete IPPROTO_TCP

Opções de soquete IPPROTO_UDP

Winsock IOCTLs