Secure Socket Control Codes

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Você pode especificar uma determinada operação para executar por chamado WSAIoctl ou WSPIoctl com codificar um controle específico, como definido pelo parâmetro de dwIoControlCode. Este parâmetro permite independência protocolo e fornecedor quando adicionando novos códigos controle, enquanto ele retém compatibilidade com versões anteriores o Winsock 1.1 e códigos controle UNIX.

A seguinte tabela mostra a disponível códigos controle.

Código de controle Descrição

SO_SSL_GET_PROTOCOLS

Especifique um protocolo de segurança específico ou determinar os protocolos usar como padrão. Em seguida, chamar WSAIoctl com o código de controle SO_SSL_SET_PROTOCOLS para selecionar os protocolos para ser habilitado. Caso contrário, Windows Embedded CE seleciona o protocolo.

SO_SSL_PERFORM_HANDSHAKE

Alternar para Seguro modo e transmitir no nome do servidor destino.

SO_SSL_SET_FLAGS

Defina a Soquete no modo determinado pelo sinalizador. De exemplo, se a codificar controle for SO_SSL_SET_FLAGS e o sinalizador sinalizador é definido como SSL_FLAG_DEFER_HANDSHAKE, o Soquete está no modo handshake adiada.

SO_SSL_SET_PEERNAME

Certifique-se de que o servidor sobre o Certificado é o mesmo nome como o servidor desejado.

SO_SSL_SET_PROTOCOLS

Seleciona os protocolos para ser habilitado. Caso contrário, Windows Embedded CE seleciona o protocolo.

SO_SSL_SET_VALIDATE_CERT_HOOK

Especificar a validação função callback Certificado

Para obter informações sobre a forma para o parâmetro dwIoControlCode, consulte WSAIoctl Ou WSPIoctl.

SO_SSL_SET_PEERNAME

Usando Seguro sockets do Windows (Winsock) soquetes, você pode garantir que o servidor sobre o Certificado tem o mesmo nome como o servidor desejado. Para fazer isso, passando o sinalizador SCH_CRED_NO_SERVERNAME_CHECK o CompletionRoutine.

CompletionRoutine é um espaço reservado para uma função Application-defined ou Library-defined.

Para obter mais informações sobre CompletionRoutine, consulte WSAIoctl. Para obter mais informações sobre o sinalizador SCH_CRED_NO_SERVERNAME_CHECK, consulte SCHANNEL_CRED.

Você deve chamar WSAIoctl Com a codificar controle SO_SSL_SET_PEERNAME após configuração até os Seguro Soquete e antes de fazer a conexão. O seguinte exemplo de código mostra como ele deve ser chamado.

WSAIoctl(m_socket,
   SO_SSL_SET_PEERNAME,
   "www.<domain>.com", strlen("www.<domain>.com")+1,
   NULL, 0,
   NULL, NULL, NULL);. 

O buffer de entrada, parâmetro 3 é o nome_do_servidor ASCII terminada por caractere nulo. A entrada tamanho do buffer está parâmetro 4.

See Also

Reference

Winsock Reference

Concepts

Implementing a Secure Socket
Using a Deferred Handshake