структура DNS_CUSTOM_SERVER (windnsdef.h)
Представляет пользовательский DNS-сервер. Объект DNS_CUSTOM_SERVER передается в DnsQueryEx через структуру DNS_QUERY_REQUEST3.
Чтобы использовать DNS_CUSTOM_SERVER вместе с ServerAddr, включите ws2ipdef.h
перед windns.h
.
Синтаксис
typedef struct _DNS_CUSTOM_SERVER {
DWORD dwServerType;
ULONG64 ullFlags;
union {
PWSTR pwszTemplate;
PWSTR pwszHostname;
};
CHAR MaxSa[DNS_ADDR_MAX_SOCKADDR_LENGTH];
} DNS_CUSTOM_SERVER;
Члены
dwServerType
Тип: DWORD
Тип сервера. Должен быть одним из следующих.
Ценность | Описание | |
---|---|---|
DNS_CUSTOM_SERVER_TYPE_UDP | 0x1 | Выполнение небезопасного разрешения имен |
DNS_CUSTOM_SERVER_TYPE_DOH | 0x2 | Выполнение разрешения имен DNS по протоколу HTTPS |
ullFlags
Тип: ULONG64
Значение, содержащее растровое изображение следующих параметров.
Ценность | Описание | |
---|---|---|
DNS_CUSTOM_SERVER_UDP_FALLBACK | 0x1 | Сервер может вернуться к небезопасной разрешению |
pwszTemplate
Тип: PWSTR
Строка
Если
Если dwServerType задано значение DNS_CUSTOM_SERVER_TYPE_DOH, то это поле должно указывать на допустимую строку NULL-terminated.
pwszHostname
MaxSa[DNS_ADDR_MAX_SOCKADDR_LENGTH]
Тип: CHAR[DNS_ADDR_MAX_SOCKADDR_LENGTH]
Массив байтов, который обозначает хранилище для SOCKADDR_INET. MaxSa является объединением ServerAddr.
Чтобы использовать DNS_CUSTOM_SERVER вместе с ServerAddr, необходимо включить ws2ipdef.h
перед windns.h
.
Помимо хранилища для SOCKADDR_INET, MaxSa избегает ошибок компиляции, вызванных не включая ws2ipdef.h
. Это позволяет использовать любые функции из windns.h
, кроме DNS_CUSTOM_SERVER.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows Build 22000 |
минимальный поддерживаемый сервер | Windows Build 22000 |
заголовка | windnsdef.h |