用于检查客户端在打开 TLS 连接时请求的域。
Syntax
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
类型: ULONG
标识如何使用 http.sys SNI 进行此连接;标志的值为:
HTTP_REQUEST_PROPERTY_SNI_FLAG_SNI_USED (0x1)。 SNI 值用于在此请求握手期间标识终结点的一部分。 如果 TLS 握手中包含 SNI,但仍 http.sys 使用 IP 终结点进行查找,则不会设置此值。
HTTP_REQUEST_PROPERTY_SNI_FLAG_NO_SNI (0x2)。 客户端不包含 SNI。 如果设置了此标志,则无法设置 HTTP_REQUEST_PROPERTY_SNI_FLAG_SNI_USED 。
注解
服务器名称指示(SNI)是 TLS 客户端 Hello 的一部分,客户端从服务器请求特定主机名。 主机通常从单个服务器为多个域提供服务,并且会定期为不同的域使用不同的证书,这意味着他们需要知道 SNI 才能决定用于 TLS 握手的证书。
要求
| Requirement | 价值 |
|---|---|
| Header | http.h |