Condividi tramite


struttura DNS_CUSTOM_SERVER (windnsdef.h)

Rappresenta un server personalizzato DNS. Un oggetto DNS_CUSTOM_SERVER viene passato a DnsQueryEx tramite la struttura di DNS_QUERY_REQUEST3.

Per usare DNS_CUSTOM_SERVER insieme a ServerAddr, includere ws2ipdef.h prima di windns.h.

Sintassi

typedef struct _DNS_CUSTOM_SERVER {
  DWORD   dwServerType;
  ULONG64 ullFlags;
  union {
    PWSTR pwszTemplate;
    PWSTR pwszHostname;
  };
  CHAR    MaxSa[DNS_ADDR_MAX_SOCKADDR_LENGTH];
} DNS_CUSTOM_SERVER;

Membri

dwServerType

Tipo: DWORD

Tipo di server. Deve essere uno dei seguenti.

Valore Descrizione
DNS_CUSTOM_SERVER_TYPE_UDP 0x1 Eseguire la risoluzione dei nomi non protetta
DNS_CUSTOM_SERVER_TYPE_DOH 0x2 Eseguire risoluzione dei nomi DNS-over-HTTPS

ullFlags

Tipo: ULONG64

Valore che contiene una bitmap delle opzioni seguenti.

Valore Descrizione
DNS_CUSTOM_SERVER_UDP_FALLBACK 0x1 Il server potrebbe eseguire il fallback alla risoluzione non protetta

pwszTemplate

Tipo: pwstr

Stringa wide NULLcon terminazione che rappresenta il modello di DNS-over-HTTPS .

Se dwServerType è impostato su DNS_CUSTOM_SERVER_TYPE_UDP, questo campo deve essere NULL.

Se dwServerType è impostato su DNS_CUSTOM_SERVER_TYPE_DOH, questo campo deve puntare a un NULL validostringa con terminazione.

pwszHostname

MaxSa[DNS_ADDR_MAX_SOCKADDR_LENGTH]

Tipo: CHAR[DNS_ADDR_MAX_SOCKADDR_LENGTH]

Matrice di byte, che definisce l'archiviazione per un SOCKADDR_INET. MaxSa è un'unione con ServerAddr.

Per usare DNS_CUSTOM_SERVER insieme a ServerAddr, è necessario includere ws2ipdef.h prima di windns.h.

Oltre all'archiviazione per il SOCKADDR_INET, MaxSa evita errori di compilazione causati da non incluso ws2ipdef.h. In questo modo è possibile usare qualsiasi funzionalità di windns.h ad eccezione del DNS_CUSTOM_SERVER.

Fabbisogno

Requisito Valore
client minimo supportato Windows Build 22000
server minimo supportato Windows Build 22000
intestazione windnsdef.h

Vedere anche