Compartilhar via


estrutura HTTP_REQUEST_PROPERTY_SNI (http.h)

Usado para verificar qual domínio o cliente solicitou ao abrir uma conexão TLS.

Sintaxe

typedef struct _HTTP_REQUEST_PROPERTY_SNI {
       WCHAR Hostname[HTTP_REQUEST_PROPERTY_SNI_HOST_MAX_LENGTH + 1];
       ULONG Flags;
} HTTP_REQUEST_PROPERTY_SNI, *PHTTP_REQUEST_PROPERTY_SNI;

Members

Hostname[HTTP_REQUEST_PROPERTY_SNI_HOST_MAX_LENGTH + 1]

Flags

Tipo: ULONG

Identifica como http.sys está usando o SNI para essa conexão; os valores dos sinalizadores são:

HTTP_REQUEST_PROPERTY_SNI_FLAG_SNI_USED (0x1). O valor de SNI foi usado como parte da identificação do ponto de extremidade durante o handshake para essa solicitação. Se um SNI foi incluído no handshake do TLS, mas http.sys ainda usou um ponto de extremidade IP para pesquisa, esse valor não será definido. HTTP_REQUEST_PROPERTY_SNI_FLAG_NO_SNI (0x2). O cliente não incluiu um SNI. Se esse sinalizador estiver definido, HTTP_REQUEST_PROPERTY_SNI_FLAG_SNI_USED não poderá ser definido.

Observações

A SNI (indicação de nome do servidor) faz parte do Cliente TLS Hello, em que o cliente solicita um nome de host específico de um servidor. Os hosts geralmente atendem a uma infinidade de domínios de um único servidor e terão regularmente certificados diferentes para domínios diferentes, o que significa que eles precisam conhecer o SNI para decidir qual certificado usar para o handshake do TLS.

Requirements

Requirement Value
Header http.h