push-include for #pragma pack(16)
[reactos.git] / reactos / w32api / include / windns.h
1 #ifndef _WINDNS_H
2 #define _WINDNS_H
3 #if __GNUC__ >= 3
4 #pragma GCC system_header
5 #endif
6
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10
11 #define DNS_QUERY_STANDARD 0x0
12 #define DNS_QUERY_ACCEPT_TRUNCATED_RESPONSE 0x1
13 #define DNS_QUERY_USE_TCP_ONLY 0x2
14 #define DNS_QUERY_NO_RECURSION 0x4
15 #define DNS_QUERY_BYPASS_CACHE 0x8
16 #define DNS_QUERY_NO_WIRE_QUERY 0x10
17 #define DNS_QUERY_NO_LOCAL_NAME 0x20
18 #define DNS_QUERY_NO_HOSTS_FILE 0x40
19 #define DNS_QUERY_NO_NETBT 0x80
20 #define DNS_QUERY_TREAT_AS_FQDN 0x1000
21 #define DNS_QUERY_WIRE_ONLY 0x100
22 #define DNS_QUERY_RETURN_MESSAGE 0x200
23 #define DNS_QUERY_DONT_RESET_TTL_VALUES 0x100000
24 #define DNS_QUERY_RESERVED 0xff000000
25
26 #define DNS_UPDATE_SECURITY_USE_DEFAULT 0x0
27 #define DNS_UPDATE_SECURITY_OFF 0x10
28 #define DNS_UPDATE_SECURITY_ON 0x20
29 #define DNS_UPDATE_SECURITY_ONLY 0x100
30 #define DNS_UPDATE_CACHE_SECURITY_CONTEXT 0x200
31 #define DNS_UPDATE_TEST_USE_LOCAL_SYS_ACCT 0x400
32 #define DNS_UPDATE_FORCE_SECURITY_NEGO 0x800
33 #define DNS_UPDATE_RESERVED 0xffff0000
34
35 #ifndef RC_INVOKE
36 typedef DWORD IP4_ADDRESS;
37 typedef DWORD DNS_STATUS;
38 enum {
39 DNS_TYPE_A=1,
40 DNS_TYPE_NS,
41 DNS_TYPE_MD,
42 DNS_TYPE_MF,
43 DNS_TYPE_CNAME,
44 DNS_TYPE_SOA,
45 DNS_TYPE_MB,
46 DNS_TYPE_MG,
47 DNS_TYPE_MR,
48 DNS_TYPE_NULL,
49 DNS_TYPE_WKS,
50 DNS_TYPE_PTR,
51 DNS_TYPE_HINFO,
52 DNS_TYPE_MINFO,
53 DNS_TYPE_MX,
54 DNS_TYPE_TEXT
55 };
56 typedef enum _DNS_CHARSET
57 {
58 DnsCharSetUnknown,
59 DnsCharSetUnicode,
60 DnsCharSetUtf8,
61 DnsCharSetAnsi
62 } DNS_CHARSET;
63 typedef enum
64 {
65 DnsConfigPrimaryDomainName_W,
66 DnsConfigPrimaryDomainName_A,
67 DnsConfigPrimaryDomainName_UTF8,
68 DnsConfigAdapterDomainName_W,
69 DnsConfigAdapterDomainName_A,
70 DnsConfigAdapterDomainName_UTF8,
71 DnsConfigDnsServerList,
72 DnsConfigSearchList,
73 DnsConfigAdapterInfo,
74 DnsConfigPrimaryHostNameRegistrationEnabled,
75 DnsConfigAdapterHostNameRegistrationEnabled,
76 DnsConfigAddressRegistrationMaxCount,
77 DnsConfigHostName_W,
78 DnsConfigHostName_A,
79 DnsConfigHostName_UTF8,
80 DnsConfigFullHostName_W,
81 DnsConfigFullHostName_A,
82 DnsConfigFullHostName_UTF8
83 } DNS_CONFIG_TYPE;
84 typedef enum
85 {
86 DnsFreeFlat = 0,
87 DnsFreeRecordList,
88 DnsFreeParsedMessageFields
89 } DNS_FREE_TYPE;
90 typedef enum _DNS_NAME_FORMAT
91 {
92 DnsNameDomain,
93 DnsNameDomainLabel,
94 DnsNameHostnameFull,
95 DnsNameHostnameLabel,
96 DnsNameWildcard,
97 DnsNameSrvRecord
98 } DNS_NAME_FORMAT;
99 typedef enum
100 {
101 DnsSectionQuestion,
102 DnsSectionAnswer,
103 DnsSectionAuthority,
104 DnsSectionAdditional
105 } DNS_SECTION;
106 typedef struct _IP4_ARRAY {
107 DWORD AddrCount;
108 IP4_ADDRESS AddrArray[1];
109 } IP4_ARRAY, *PIP4_ARRAY;
110 typedef struct {
111 DWORD IP6Dword[4];
112 } IP6_ADDRESS, *PIP6_ADDRESS, DNS_IP6_ADDRESS, *PDNS_IP6_ADDRESS;
113 typedef struct _DNS_HEADER {
114 WORD Xid;
115 BYTE RecursionDesired;
116 BYTE Truncation;
117 BYTE Authoritative;
118 BYTE Opcode;
119 BYTE IsResponse;
120 BYTE ResponseCode;
121 BYTE Reserved;
122 BYTE RecursionAvailable;
123 WORD QuestionCount;
124 WORD AnswerCount;
125 WORD NameServerCount;
126 WORD AdditionalCount;
127 } DNS_HEADER, *PDNS_HEADER;
128 typedef struct _DNS_MESSAGE_BUFFER {
129 DNS_HEADER MessageHead;
130 CHAR MessageBody[1];
131 } DNS_MESSAGE_BUFFER, *PDNS_MESSAGE_BUFFER;
132 typedef struct _DnsRecordFlags {
133 DWORD Section :2;
134 DWORD Delete :1;
135 DWORD CharSet :2;
136 DWORD Unused :3;
137 DWORD Reserved :24;
138 } DNS_RECORD_FLAGS;
139 typedef struct {
140 IP4_ADDRESS IpAddress;
141 } DNS_A_DATA, *PDNS_A_DATA;
142 typedef struct {
143 DNS_IP6_ADDRESS Ip6Address;
144 } DNS_AAAA_DATA, *PDNS_AAAA_DATA;
145 #define DNS_ATMA_MAX_ADDR_LENGTH 20
146 typedef struct {
147 BYTE AddressType;
148 BYTE Address[DNS_ATMA_MAX_ADDR_LENGTH];
149 } DNS_ATMA_DATA, *PDNS_ATMA_DATA;
150 typedef struct {
151 WORD wFlags;
152 BYTE chProtocol;
153 BYTE chAlgorithm;
154 BYTE Key[1];
155 } DNS_KEY_DATA, *PDNS_KEY_DATA;
156 typedef struct {
157 WORD wVersion;
158 WORD wSize;
159 WORD wHorPrec;
160 WORD wVerPrec;
161 DWORD dwLatitude;
162 DWORD dwLongitude;
163 DWORD dwAltitude;
164 } DNS_LOC_DATA, *PDNS_LOC_DATA;
165 typedef struct {
166 LPSTR pNameMailbox;
167 LPSTR pNameErrorsMailbox;
168 } DNS_MINFO_DATAA, *PDNS_MINFO_DATAA;
169 typedef struct {
170 LPWSTR pNameMailbox;
171 LPWSTR pNameErrorsMailbox;
172 } DNS_MINFO_DATAW, *PDNS_MINFO_DATAW;
173 typedef struct {
174 LPSTR pNameExchange;
175 WORD wPreference;
176 WORD Pad;
177 } DNS_MX_DATAA, *PDNS_MX_DATAA;
178 typedef struct {
179 LPWSTR pNameExchange;
180 WORD wPreference;
181 WORD Pad;
182 } DNS_MX_DATAW, *PDNS_MX_DATAW;
183 typedef struct {
184 DWORD dwByteCount;
185 BYTE Data[1];
186 } DNS_NULL_DATA, *PDNS_NULL_DATA;
187 typedef struct {
188 LPSTR pNameNext;
189 WORD wNumTypes;
190 WORD wTypes[1];
191 } DNS_NXT_DATAA, *PDNS_NXT_DATAA;
192 typedef struct {
193 LPWSTR pNameNext;
194 WORD wNumTypes;
195 WORD wTypes[1];
196 } DNS_NXT_DATAW, *PDNS_NXT_DATAW;
197 typedef struct {
198 LPSTR pNameHost;
199 } DNS_PTR_DATAA, *PDNS_PTR_DATAA;
200 typedef struct {
201 LPWSTR pNameHost;
202 } DNS_PTR_DATAW, *PDNS_PTR_DATAW;
203 typedef struct {
204 LPSTR pNameSigner;
205 WORD wTypeCovered;
206 BYTE chAlgorithm;
207 BYTE chLabelCount;
208 DWORD dwOriginalTtl;
209 DWORD dwExpiration;
210 DWORD dwTimeSigned;
211 WORD wKeyTag;
212 WORD Pad;
213 BYTE Signature[1];
214 } DNS_SIG_DATAA, *PDNS_SIG_DATAA;
215 typedef struct {
216 LPWSTR pNameSigner;
217 WORD wTypeCovered;
218 BYTE chAlgorithm;
219 BYTE chLabelCount;
220 DWORD dwOriginalTtl;
221 DWORD dwExpiration;
222 DWORD dwTimeSigned;
223 WORD wKeyTag;
224 WORD Pad;
225 BYTE Signature[1];
226 } DNS_SIG_DATAW, *PDNS_SIG_DATAW;
227 typedef struct {
228 LPSTR pNamePrimaryServer;
229 LPSTR pNameAdministrator;
230 DWORD dwSerialNo;
231 DWORD dwRefresh;
232 DWORD dwRetry;
233 DWORD dwExpire;
234 DWORD dwDefaultTtl;
235 } DNS_SOA_DATAA, *PDNS_SOA_DATAA;
236 typedef struct {
237 LPWSTR pNamePrimaryServer;
238 LPWSTR pNameAdministrator;
239 DWORD dwSerialNo;
240 DWORD dwRefresh;
241 DWORD dwRetry;
242 DWORD dwExpire;
243 DWORD dwDefaultTtl;
244 } DNS_SOA_DATAW, *PDNS_SOA_DATAW;
245 typedef struct {
246 LPSTR pNameTarget;
247 WORD wPriority;
248 WORD wWeight;
249 WORD wPort;
250 WORD Pad;
251 } DNS_SRV_DATAA, *PDNS_SRV_DATAA;
252 typedef struct {
253 LPWSTR pNameTarget;
254 WORD wPriority;
255 WORD wWeight;
256 WORD wPort;
257 WORD Pad;
258 } DNS_SRV_DATAW, *PDNS_SRV_DATAW;
259 typedef struct {
260 DWORD dwStringCount;
261 LPSTR pStringArray[1];
262 } DNS_TXT_DATAA, *PDNS_TXT_DATAA;
263 typedef struct {
264 DWORD dwStringCount;
265 LPWSTR pStringArray[1];
266 } DNS_TXT_DATAW, *PDNS_TXT_DATAW;
267 typedef struct {
268 LPSTR pNameAlgorithm;
269 PBYTE pAlgorithmPacket;
270 PBYTE pKey;
271 PBYTE pOtherData;
272 DWORD dwCreateTime;
273 DWORD dwExpireTime;
274 WORD wMode;
275 WORD wError;
276 WORD wKeyLength;
277 WORD wOtherLength;
278 UCHAR cAlgNameLength;
279 BOOL bPacketPointers;
280 } DNS_TKEY_DATAA, *PDNS_TKEY_DATAA;
281 typedef struct {
282 LPWSTR pNameAlgorithm;
283 PBYTE pAlgorithmPacket;
284 PBYTE pKey;
285 PBYTE pOtherData;
286 DWORD dwCreateTime;
287 DWORD dwExpireTime;
288 WORD wMode;
289 WORD wError;
290 WORD wKeyLength;
291 WORD wOtherLength;
292 UCHAR cAlgNameLength;
293 BOOL bPacketPointers;
294 } DNS_TKEY_DATAW, *PDNS_TKEY_DATAW;
295 typedef struct {
296 LPSTR pNameAlgorithm;
297 PBYTE pAlgorithmPacket;
298 PBYTE pSignature;
299 PBYTE pOtherData;
300 LONGLONG i64CreateTime;
301 WORD wFudgeTime;
302 WORD wOriginalXid;
303 WORD wError;
304 WORD wSigLength;
305 WORD wOtherLength;
306 UCHAR cAlgNameLength;
307 BOOL bPacketPointers;
308 } DNS_TSIG_DATAA, *PDNS_TSIG_DATAA;
309 typedef struct {
310 LPWSTR pNameAlgorithm;
311 PBYTE pAlgorithmPacket;
312 PBYTE pSignature;
313 PBYTE pOtherData;
314 LONGLONG i64CreateTime;
315 WORD wFudgeTime;
316 WORD wOriginalXid;
317 WORD wError;
318 WORD wSigLength;
319 WORD wOtherLength;
320 UCHAR cAlgNameLength;
321 BOOL bPacketPointers;
322 } DNS_TSIG_DATAW, *PDNS_TSIG_DATAW;
323 typedef struct {
324 DWORD dwMappingFlag;
325 DWORD dwLookupTimeout;
326 DWORD dwCacheTimeout;
327 DWORD cWinsServerCount;
328 IP4_ADDRESS WinsServers[1];
329 } DNS_WINS_DATA, *PDNS_WINS_DATA;
330 typedef struct {
331 DWORD dwMappingFlag;
332 DWORD dwLookupTimeout;
333 DWORD dwCacheTimeout;
334 LPSTR pNameResultDomain;
335 } DNS_WINSR_DATAA, *PDNS_WINSR_DATAA;
336 typedef struct {
337 DWORD dwMappingFlag;
338 DWORD dwLookupTimeout;
339 DWORD dwCacheTimeout;
340 LPWSTR pNameResultDomain;
341 } DNS_WINSR_DATAW, *PDNS_WINSR_DATAW;
342 typedef struct _DNS_WIRE_QUESTION {
343 WORD QuestionType;
344 WORD QuestionClass;
345 } DNS_WIRE_QUESTION, *PDNS_WIRE_QUESTION;
346 typedef struct _DNS_WIRE_RECORD {
347 WORD RecordType;
348 WORD RecordClass;
349 DWORD TimeToLive;
350 WORD DataLength;
351 } DNS_WIRE_RECORD, *PDNS_WIRE_RECORD;
352 typedef struct {
353 IP4_ADDRESS IpAddress;
354 UCHAR chProtocol;
355 BYTE BitMask[1];
356 } DNS_WKS_DATA, *PDNS_WKS_DATA;
357 typedef struct _DnsRecordA {
358 struct _DnsRecordA* pNext;
359 LPSTR pName;
360 WORD wType;
361 WORD wDataLength;
362 union {
363 DWORD DW;
364 DNS_RECORD_FLAGS S;
365 } Flags;
366 DWORD dwTtl;
367 DWORD dwReserved;
368 union {
369 DNS_A_DATA A;
370 DNS_SOA_DATAA SOA, Soa;
371 DNS_PTR_DATAA PTR, Ptr, NS, Ns, CNAME, Cname, MB, Mb,
372 MD, Md, MF, Mf, MG, Mg, MR, Mr;
373 DNS_MINFO_DATAA MINFO, Minfo, RP, Rp;
374 DNS_MX_DATAA MX, Mx, AFSDB, Afsdb, RT, Rt;
375 DNS_TXT_DATAA HINFO, Hinfo, ISDN, Isdn, TXT, Txt, X25;
376 DNS_NULL_DATA Null;
377 DNS_WKS_DATA WKS, Wks;
378 DNS_AAAA_DATA AAAA;
379 DNS_KEY_DATA KEY, Key;
380 DNS_SIG_DATAA SIG, Sig;
381 DNS_ATMA_DATA ATMA, Atma;
382 DNS_NXT_DATAA NXT, Nxt;
383 DNS_SRV_DATAA SRV, Srv;
384 DNS_TKEY_DATAA TKEY, Tkey;
385 DNS_TSIG_DATAA TSIG, Tsig;
386 DNS_WINS_DATA WINS, Wins;
387 DNS_WINSR_DATAA WINSR, WinsR, NBSTAT, Nbstat;
388 } Data;
389 } DNS_RECORDA, *PDNS_RECORDA;
390 typedef struct _DnsRecordW {
391 struct _DnsRecordW* pNext;
392 LPWSTR pName;
393 WORD wType;
394 WORD wDataLength;
395 union {
396 DWORD DW;
397 DNS_RECORD_FLAGS S;
398 } Flags;
399 DWORD dwTtl;
400 DWORD dwReserved;
401 union {
402 DNS_A_DATA A;
403 DNS_SOA_DATAW SOA, Soa;
404 DNS_PTR_DATAW PTR, Ptr, NS, Ns, CNAME, Cname, MB, Mb,
405 MD, Md, MF, Mf, MG, Mg, MR, Mr;
406 DNS_MINFO_DATAW MINFO, Minfo, RP, Rp;
407 DNS_MX_DATAW MX, Mx, AFSDB, Afsdb, RT, Rt;
408 DNS_TXT_DATAW HINFO, Hinfo, ISDN, Isdn, TXT, Txt, X25;
409 DNS_NULL_DATA Null;
410 DNS_WKS_DATA WKS, Wks;
411 DNS_AAAA_DATA AAAA;
412 DNS_KEY_DATA KEY, Key;
413 DNS_SIG_DATAW SIG, Sig;
414 DNS_ATMA_DATA ATMA, Atma;
415 DNS_NXT_DATAW NXT, Nxt;
416 DNS_SRV_DATAW SRV, Srv;
417 DNS_TKEY_DATAW TKEY, Tkey;
418 DNS_TSIG_DATAW TSIG, Tsig;
419 DNS_WINS_DATA WINS, Wins;
420 DNS_WINSR_DATAW WINSR, WinsR, NBSTAT, Nbstat;
421 } Data;
422 } DNS_RECORDW, *PDNS_RECORDW;
423
424 #ifdef UNICODE
425 #define DNS_RECORD DNS_RECORDW
426 #define PDNS_RECORD PDNS_RECORDW
427 #else
428 #define DNS_RECORD DNS_RECORDA
429 #define PDNS_RECORD PDNS_RECORDA
430 #endif
431
432 typedef struct _DnsRRSet {
433 PDNS_RECORD pFirstRR;
434 PDNS_RECORD pLastRR;
435 } DNS_RRSET, *PDNS_RRSET;
436
437 DNS_STATUS WINAPI DnsAcquireContextHandle_A(DWORD,PVOID,HANDLE*);
438 DNS_STATUS WINAPI DnsAcquireContextHandle_W(DWORD,PVOID,HANDLE*);
439 DNS_STATUS WINAPI DnsExtractRecordsFromMessage_W(PDNS_MESSAGE_BUFFER,WORD,PDNS_RECORD*);
440 DNS_STATUS WINAPI DnsExtractRecordsFromMessage_UTF8(PDNS_MESSAGE_BUFFER,WORD,PDNS_RECORD*);
441 DNS_STATUS WINAPI DnsModifyRecordsInSet_A(PDNS_RECORD,PDNS_RECORD,DWORD,HANDLE,PIP4_ARRAY,PVOID);
442 DNS_STATUS WINAPI DnsModifyRecordsInSet_W(PDNS_RECORD,PDNS_RECORD,DWORD,HANDLE,PIP4_ARRAY,PVOID);
443 DNS_STATUS WINAPI DnsModifyRecordsInSet_UTF8(PDNS_RECORD,PDNS_RECORD,DWORD,HANDLE,PIP4_ARRAY,PVOID);
444 BOOL WINAPI DnsNameCompare_A(LPSTR,LPSTR);
445 BOOL WINAPI DnsNameCompare_W(LPWSTR,LPWSTR);
446 DNS_STATUS WINAPI DnsQuery_A(PCSTR,WORD,DWORD,PIP4_ARRAY,PDNS_RECORD*,PVOID*);
447 DNS_STATUS WINAPI DnsQuery_W(PCWSTR,WORD,DWORD,PIP4_ARRAY,PDNS_RECORD*,PVOID*);
448 DNS_STATUS WINAPI DnsQuery_UTF8(PCSTR,WORD,DWORD,PIP4_ARRAY,PDNS_RECORD*,PVOID*);
449 DNS_STATUS WINAPI DnsQueryConfig(DNS_CONFIG_TYPE,DWORD,PWSTR,PVOID,PVOID,PDWORD);
450 BOOL WINAPI DnsRecordCompare(PDNS_RECORD,PDNS_RECORD);
451 PDNS_RECORD WINAPI DnsRecordCopyEx(PDNS_RECORD,DNS_CHARSET,DNS_CHARSET);
452 void WINAPI DnsRecordListFree(PDNS_RECORD,DNS_FREE_TYPE);
453 BOOL WINAPI DnsRecordSetCompare(PDNS_RECORD,PDNS_RECORD,PDNS_RECORD*,PDNS_RECORD*);
454 PDNS_RECORD WINAPI DnsRecordSetCopyEx(PDNS_RECORD,DNS_CHARSET,DNS_CHARSET);
455 PDNS_RECORD WINAPI DnsRecordSetDetach(PDNS_RECORD);
456 void WINAPI DnsReleaseContextHandle(HANDLE);
457 DNS_STATUS WINAPI DnsReplaceRecordSetA(PDNS_RECORD,DWORD,HANDLE,PIP4_ARRAY,PVOID);
458 DNS_STATUS WINAPI DnsReplaceRecordSetW(PDNS_RECORD,DWORD,HANDLE,PIP4_ARRAY,PVOID);
459 DNS_STATUS WINAPI DnsReplaceRecordSetUTF8(PDNS_RECORD,DWORD,HANDLE,PIP4_ARRAY,PVOID);
460 DNS_STATUS WINAPI DnsValidateName_A(LPCSTR,DNS_NAME_FORMAT);
461 DNS_STATUS WINAPI DnsValidateName_W(LPCWSTR, DNS_NAME_FORMAT);
462 DNS_STATUS WINAPI DnsValidateName_UTF8(LPCSTR,DNS_NAME_FORMAT);
463 BOOL WINAPI DnsWriteQuestionToBuffer_W(PDNS_MESSAGE_BUFFER,LPDWORD,LPWSTR,WORD,WORD,BOOL);
464 BOOL WINAPI DnsWriteQuestionToBuffer_UTF8(PDNS_MESSAGE_BUFFER,LPDWORD,LPSTR,WORD,WORD,BOOL);
465
466 #ifdef UNICODE
467 #define DNS_MINFO_DATA DNS_MINFO_DATAW
468 #define PDNS_MINFO_DATA PDNS_MINFO_DATAW
469 #define DNS_MX_DATA DNS_MX_DATAW
470 #define PDNS_MX_DATA PDNS_MX_DATAW
471 #define DNS_NXT_DATA DNS_NXT_DATAW
472 #define PDNS_NXT_DATA PDNS_NXT_DATAW
473 #define DNS_PTR_DATA DNS_PTR_DATAW
474 #define PDNS_PTR_DATA PDNS_PTR_DATAW
475 #define DNS_SIG_DATA DNS_SIG_DATAW
476 #define PDNS_SIG_DATA PDNS_SIG_DATAW
477 #define DNS_SOA_DATA DNS_SOA_DATAW
478 #define PDNS_SOA_DATA PDNS_SOA_DATAW
479 #define DNS_TXT_DATA DNS_TXT_DATAW
480 #define PDNS_TXT_DATA PDNS_TXT_DATAW
481 #define DNS_TKEY_DATA DNS_TKEY_DATAW
482 #define PDNS_TKEY_DATA PDNS_TKEY_DATAW
483 #define DNS_WINSR_DATA DNS_WINSR_DATAW
484 #define PDNS_WINSR_DATA PDNS_WINSR_DATAW
485 #define DnsAcquireContextHandle DnsAcquireContextHandle_W
486 #define DnsModifyRecordsInSet DnsModifyRecordsInSet_W
487 #define DnsNameCompare DnsNameCompare_W
488 #define DnsQuery DnsQuery_W
489 #define DnsReplaceRecordSet DnsReplaceRecordSetW
490 #define DnsValidateName DnsValidateName_W
491 #else
492 #define DNS_MINFO_DATA DNS_MINFO_DATAA
493 #define PDNS_MINFO_DATA PDNS_MINFO_DATAA
494 #define DNS_MX_DATA DNS_MX_DATAA
495 #define PDNS_MX_DATA PDNS_MX_DATAA
496 #define DNS_NXT_DATA DNS_NXT_DATAA
497 #define PDNS_NXT_DATA PDNS_NXT_DATAA
498 #define DNS_PTR_DATA DNS_PTR_DATAA
499 #define PDNS_PTR_DATA PDNS_PTR_DATAA
500 #define DNS_SIG_DATA DNS_SIG_DATAA
501 #define PDNS_SIG_DATA PDNS_SIG_DATAA
502 #define DNS_SOA_DATA DNS_SOA_DATAA
503 #define PDNS_SOA_DATA PDNS_SOA_DATAA
504 #define DNS_TXT_DATA DNS_TXT_DATAA
505 #define PDNS_TXT_DATA PDNS_TXT_DATAA
506 #define DNS_TKEY_DATA DNS_TKEY_DATAA
507 #define PDNS_TKEY_DATA PDNS_TKEY_DATAA
508 #define DNS_WINSR_DATA DNS_WINSR_DATAA
509 #define PDNS_WINSR_DATA PDNS_WINSR_DATAA
510 #define DnsAcquireContextHandle DnsAcquireContextHandle_A
511 #define DnsModifyRecordsInSet DnsModifyRecordsInSet_A
512 #define DnsNameCompare DnsNameCompare_A
513 #define DnsQuery DnsQuery_A
514 #define DnsReplaceRecordSet DnsReplaceRecordSetA
515 #define DnsValidateName DnsValidateName_A
516 #endif
517
518 #endif /* RC_INVOKED */
519
520 #ifdef __cplusplus
521 }
522 #endif
523
524 #endif /* _WINDNS_H */