Resumo de opcodes Ioctl de soquete
Alguns dos opcodes IOCTL de soquete para Windows Sockets 2 são resumidos na tabela a seguir. Informações mais detalhadas estão na referência winsock em WINSock IOCTLs e na função WSPIoctl . Há outros novos opcodes IOCTL específicos do protocolo que podem ser encontrados no anexo específico do protocolo.
Uma lista completa de IOCTLs do Winsock está disponível na referência do Winsock.
Opcode | Tipo de entrada | Tipo de saída | Significado |
---|---|---|---|
FIONBIO | Longo sem sinal | <Não usado> | Habilita ou desabilita o modo de desbloqueio no soquete. |
FIONREAD | <Não usado> | Longo sem sinal | Determina a quantidade de dados que podem ser lidos atomicamente do soquete. |
SIOCATMARK | <Não usado> | BOOL | Determina se todos os dados OOB foram lidos ou não. |
SIO_ASSOCIATE_HANDLE | Dependente da API complementar | <Não usado> | Associa o soquete ao identificador especificado de uma interface complementar. |
SIO_ENABLE_CIRCULAR_QUEUEING | <Não usado> | <Não usado> | Habilita o enfileiramento circular. |
SIO_FIND_ROUTE | estrutura sockaddr | <Não usado> | Solicita a rota para o endereço especificado a ser descoberto. |
SIO_FLUSH | <Não usado> | <Não usado> | Descarta o conteúdo atual da fila de envio. |
SIO_GET_BROADCAST_ADDRESS | <Não usado> | estrutura sockaddr | Recupera o endereço de difusão específico do protocolo a ser usado no WSPSendTo. |
SIO_GET_QOS | <Não usado> | QOS | Recupera as especificações de fluxo atuais para o soquete. |
SIO_GET_GROUP_QOS | <Não usado> | QOS | Reservado. |
SIO_MULTIPOINT_LOOPBACK | BOOL | <Não usado> | Controla se os dados enviados em uma sessão de vários pontos também serão recebidos pelo mesmo soquete no host local. |
SIO_MULTICAST_SCOPE | INT | <Não usado> | Especifica o escopo sobre o qual as transmissões multicast ocorrerão. |
SIO_SET_QOS | QOS | <Não usado> | Estabelece novas especificações de fluxo para o soquete. |
SIO_SET_GROUP_QOS | QOS | <Não usado> | Reservado. |
SIO_TRANSLATE_HANDLE | INT | Dependente da API complementar | Obtém um identificador correspondente para soquetes que é válido no contexto de uma interface complementar. |
SIO_ROUTING_INTERFACE_QUERY | Sockaddr | Sockaddr | Obtém o endereço da interface local que deve ser usado para enviar para o endereço especificado. |
SIO_ROUTING_INTERFACE_CHANGE | Sockaddr | <Não usado> | Solicita a notificação de alterações nas informações relatadas por meio de SIO_ROUTING_INTERFACE_QUERY para o endereço especificado. |
SIO_ADDRESS_LIST_QUERY | <Não usado> | SOCKET_ADDRESS | Obtém uma lista de endereços de transporte local da família de protocolos do soquete à qual o aplicativo pode ser associado. A lista de endereços varia de acordo com a família de endereços e alguns endereços são excluídos da lista. |
SIO_ADDRESS_LIST_CHANGE | <Não usado> | <Não usado> | Solicita a notificação de alterações nas informações relatadas por meio de SIO_ADDRESS_LIST_QUERY |
SIO_QUERY_PNP_TARGET_HANDLE | <Não usado> | SOQUETE | Obtém o descritor de soquete do próximo provedor na cadeia da qual o soquete atual depende em relação ao PnP. |