WSAPROTOCOL_INFO

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Essa estrutura é usada para armazenar ou completo recuperar informações para um determinado protocolo.

Syntax

typedef struct _WSAPROTOCOL_INFO {
  DWORD dwServiceFlags1;
  DWORD dwServiceFlags2;
  DWORD dwServiceFlags3;
  DWORD dwServiceFlags4;
  DWORD dwProviderFlags;
  GUID ProviderId;
  DWORD dwCatalogEntryId;
  WSAPROTOCOLCHAIN ProtocolChain;
  int iVersion;
  int iAddressFamily;
  int iMaxSockAddr;
  int iMinSockAddr;
  int iSocketType;
  int iProtocol;
  int iProtocolMaxOffset;
  int iNetworkByteOrder;
  int iSecurityScheme;
  DWORD dwMessageSize;
  DWORD dwProviderReserved;
  TCHAR szProtocol[WSAPROTOCOL_LEN+1];
} WSAPROTOCOL_INFO, *LPWSAPROTOCOL_INFO;

Os membros

  • dwServiceFlags1
    Máscara de bits que descrevem os serviços fornecidos pelo protocolo. A seguinte tabela mostra os valores possíveis.

    Valor Descrição

    XP1_CONNECTIONLESS

    Fornece serviço sem conexão (datagrama). Se não for definida, o protocolo oferece suporte a transferência de dados Connection-Oriented

    XP1_GUARANTEED_DELIVERY

    Garante que todos os dados enviados alcançarão o destino pretendido.

    XP1_GUARANTEED_ORDER

    Garante que dados somente chega na ordem na qual ela foi enviada e que ele não é duplicado. Esta característica não necessariamente significar que os dados sempre for entregue, mas que quaisquer dados que é entregue é entregue na ordem na qual ela foi enviada.

    XP1_MESSAGE_ORIENTED

    Honra limites mensagem — as opposed to um protocolo Stream-Oriented onde há não concepção de mensagem limites.

    XP1_PSEUDO_STREAM

    Um protocolo message-oriented, mas limites mensagem são ignoradas para todas as confirmações. Isso é conveniente quando um aplicativo não desejar estruturas mensagem a ser feito pelo protocolo.

    XP1_GRACEFUL_CLOSE

    Oferece suporte a duas fases fechar (normal). Se não for definida, apenas abortive fecha é executadas

    XP1_EXPEDITED_DATA

    Suporta acelerado dados (urgentes).

    XP1_CONNECT_DATA

    Oferece suporte a conectar dados.

    XP1_DISCONNECT_DATA

    Oferece suporte a desconectar dados.

    XP1_INTERRUPT

    Bit é reservado.

    XP1_SUPPORT_BROADCAST

    Oferece suporte a um transmitir mecanismo.

    XP1_SUPPORT_MULTIPOINT

    Oferece suporte a um multiponto ou Multicast mecanismo. Controle e dados avião atributos são indicados abaixo.

    XP1_MULTIPOINT_CONTROL_PLANE

    Indica se o avião controle é raiz (valor = 1) ou nonrooted (valor = 0).

    XP1_MULTIPOINT_DATA_PLANE

    Indica se o avião dados é raiz (valor = 1) ou nonrooted (valor = 0).

    XP1_UNI_SEND

    Protocolo é unidirecional na direção de envio.

    XP1_UNI_RECV

    Protocolo é unidirecional em direção a recv.

    XP1_IFS_HANDLES

    Descritores Soquete retornados de provedor são sistema operacional do sistema de arquivos instalável (IFS) alças.

    XP1_PARTIAL_MESSAGE

    É o sinalizador MSG_PARTIAL com suporte in WSASend e WSASendTo.

  • ProtocolChain
    WSAPROTOCOLCHAIN estrutura associado com o protocolo.
  • dwServiceFlags2
    Reservado para protocolo adicional-definições atributo.
  • dwServiceFlags3
    Reservado para protocolo adicional-definições atributo.
  • dwServiceFlags4
    Reservado para protocolo adicional-definições atributo.
  • dwProviderFlags
    Fornece informações sobre como esse protocolo é representado no Catálogo de protocolo. O seguinte sinalizador valores são possíveis:

    Valor Descrição

    PFL_MULTIPLE_PROTO_ENTRIES

    Indica que este é um dos dois ou mais entradas para um protocolo único (de um determinado provedor) que é capaz de implementar múltiplo comportamentos. Um exemplo disso é que, no lado de recebimento, pode se comportar como um message-oriented, SPX, ou um protocolo Stream-Oriented.

    PFL_RECOMMENDED_PROTO_ENTRY

    Indica que esse é o recomendado ou mais freqüentes usado entrada para um protocolo que é capaz de implementar múltiplo comportamentos.

    PFL_HIDDEN

    Definido por um provedor para indicar ao ws2_32.dll que esse protocolo não deve ser retornado na reserva a resultado gerada pelo WSAEnumProtocols. Obviamente, um aplicativo sockets do Windows (Winsock) nunca verá uma entrada com esse bit definido.

    PFL_MATCHES_PROTOCOL_ZERO

    Indica que um valor de zero na protocolo parâmetro de Soquete (Soquetes do Windows) Ou WSASocket coincide com esta entrada protocolo.

  • ProviderId
    Identificador exclusivo Globalmente atribuído ao provedor pelo fornecedor provedor de serviço. Esse valor é útil para instâncias onde um more than provedor de serviços é capaz para implementar um protocolo específico. Um aplicativo pode usar o dwProviderIdvalor distinguir entre provedores caso contrário que podem ser indistinguíveis.
  • dwCatalogEntryId
    Identificador exclusivo atribuído pela WS2_32.DLL.

    WSAPROTOCOLCHAIN ProtocolChain;

    Se o comprimento do encadear for 0, isso WSAPROTOCOL_INFOW entrada representa uma em camadas protocolo, que tem Winsock SPI como bordas tanto seu parte superior e inferior. Se o comprimento do encadear for igual a 1, essa entrada representa um protocolo de base cujo identificador Catalog Entry consta o dwCatalogEntryId membro das WSAPROTOCOL_INFOW estrutura. Se o comprimento do encadear for maior que 1, essa entrada representa um encadear provedor que consiste em camadas um ou mais protocolos No parte superior de um protocolo de base. O correspondente identificadores de entrada Catálogo são na matriz de ProtocolChain.ChainEntries começando com a em camadas protocolo na parte superior (o zero elemento na matriz de ProtocolChain.ChainEntries) e terminando com o protocolo de base. Consulte a especificação Interface do provedor de serviços sockets do Windows (Winsock) para obter mais informações no provedor cadeias.

  • iVersion
    Identificador versão de protocolo.
  • iAddressFamily
    O valor para transmitir como o parâmetro família de endereços para a Soquete (Soquetes do Windows)/WSASocket função na ordem para aberto um Soquete para esse protocolo. Esse valor também exclusivamente define a estrutura de endereços protocolo sockaddrs usado pelo protocolo.
  • iMaxSockAddr
    Comprimento Máximo de endereço.
  • iMinSockAddr
    Comprimento mínimo de endereço.
  • iSocketType
    O valor para transmitir como parâmetro do tipo o Soquete para a Soquete (Soquetes do Windows) função na ordem para aberto um Soquete para esse protocolo.
  • iProtocol
    O valor para transmitir como o parâmetro protocolo para o Soquete (Soquetes do Windows) função na ordem para aberto um Soquete para esse protocolo.
  • iProtocolMaxOffset
    Valor máximo que pode ser adicionado ao iProtocol Ao fornecer um valor para o protocolo parâmetro para Soquete e WSASocket. Nem todos os protocolos permitem uma intervalo de valores. Quando esta for a maiúsculas e minúsculas iProtocolMaxOffseté zero.
  • iNetworkByteOrder
    No momento, esses valores são manifesto constantes (BIGENDIAN e LITTLEENDIAN) que indicam o big-endian ou little-endian com os valores 0 e 1 respectivamente.
  • iSecurityScheme
    Indica o tipo de esquema de segurança empregada (se houver algum). Um valor de SECURITY_PROTOCOL_NONE é usado para protocolos que não incorporar disposições de segurança.
  • dwMessageSize
    Tamanho máximo de mensagem com suporte, o protocolo. Este é o tamanho máximo que pode ser enviado de qualquer local da hospedar interfaces. Para protocolos que não suporte mensagem estruturas, o máximo real que pode ser enviadas para um determinado endereço podem ser menor. Não há nenhum padrão configurar para determinar a de entrada máxima tamanho mensagem. A seguinte tabela mostra os valores especiais que são definidos.

    Valor Descrição

    0

    O protocolo é orientado a-fluxo e, portanto, a concepção do tamanho mensagem não é relevante.

    0 x 1

    A de saída máxima (Enviar) tamanho mensagem é dependente na subjacente rede MTU (unidade máxima de transmissão de tamanho) e, portanto, não pode ser conhecido até após um Soquete ligado. Os aplicativos devem usar getsockopt (Soquetes do Windows) Para recuperar o valor de SO_MAX_MSG_SIZE após o Soquete ligado a um local endereço.

    0xFFFFFFFF

    O protocolo é orientado a mensagem, mas não há nenhum limite máximo para o tamanho das mensagens que podem ser transmitidas.

  • dwProviderReserved
    Reservado para uso por provedores serviço.
  • szProtocol
    Matriz de caracteres que contém um nome legível que identifica o protocolo, de exemplo, SPX2. O número máximo de caracteres permitidos é WSAPROTOCOL_LEN, que é definido como 255.

Requirements

Header winsock2.h
Windows Embedded CE Windows CE .NET 4.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

WSAEnumProtocols
WSASend
WSASendTo
getsockopt (Windows Sockets)
socket (Windows Sockets)