Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenwindns.h
Go to the documentation of this file.
00001 #ifndef _WINDNS_H 00002 #define _WINDNS_H 00003 00004 #ifdef __cplusplus 00005 extern "C" { 00006 #endif 00007 00008 #define DNS_QUERY_STANDARD 0x0 00009 #define DNS_QUERY_ACCEPT_TRUNCATED_RESPONSE 0x1 00010 #define DNS_QUERY_USE_TCP_ONLY 0x2 00011 #define DNS_QUERY_NO_RECURSION 0x4 00012 #define DNS_QUERY_BYPASS_CACHE 0x8 00013 #define DNS_QUERY_NO_WIRE_QUERY 0x10 00014 #define DNS_QUERY_NO_LOCAL_NAME 0x20 00015 #define DNS_QUERY_NO_HOSTS_FILE 0x40 00016 #define DNS_QUERY_NO_NETBT 0x80 00017 #define DNS_QUERY_TREAT_AS_FQDN 0x1000 00018 #define DNS_QUERY_WIRE_ONLY 0x100 00019 #define DNS_QUERY_RETURN_MESSAGE 0x200 00020 #define DNS_QUERY_DONT_RESET_TTL_VALUES 0x100000 00021 #define DNS_QUERY_RESERVED 0xff000000 00022 00023 #define DNS_UPDATE_SECURITY_USE_DEFAULT 0x0 00024 #define DNS_UPDATE_SECURITY_OFF 0x10 00025 #define DNS_UPDATE_SECURITY_ON 0x20 00026 #define DNS_UPDATE_SECURITY_ONLY 0x100 00027 #define DNS_UPDATE_CACHE_SECURITY_CONTEXT 0x200 00028 #define DNS_UPDATE_TEST_USE_LOCAL_SYS_ACCT 0x400 00029 #define DNS_UPDATE_FORCE_SECURITY_NEGO 0x800 00030 #define DNS_UPDATE_RESERVED 0xffff0000 00031 00032 #define DNS_CONFIG_FLAG_ALLOC TRUE 00033 00034 #ifndef RC_INVOKE 00035 typedef DWORD IP4_ADDRESS; 00036 typedef DWORD DNS_STATUS; 00037 #define DNS_TYPE_ZERO 0x0000 00038 00039 #define DNS_TYPE_A 0x0001 00040 #define DNS_TYPE_NS 0x0002 00041 #define DNS_TYPE_MD 0x0003 00042 #define DNS_TYPE_MF 0x0004 00043 #define DNS_TYPE_CNAME 0x0005 00044 #define DNS_TYPE_SOA 0x0006 00045 #define DNS_TYPE_MB 0x0007 00046 #define DNS_TYPE_MG 0x0008 00047 #define DNS_TYPE_MR 0x0009 00048 #define DNS_TYPE_NULL 0x000a 00049 #define DNS_TYPE_WKS 0x000b 00050 #define DNS_TYPE_PTR 0x000c 00051 #define DNS_TYPE_HINFO 0x000d 00052 #define DNS_TYPE_MINFO 0x000e 00053 #define DNS_TYPE_MX 0x000f 00054 #define DNS_TYPE_TEXT 0x0010 00055 #define DNS_TYPE_RP 0x0011 00056 #define DNS_TYPE_AFSDB 0x0012 00057 #define DNS_TYPE_X25 0x0013 00058 #define DNS_TYPE_ISDN 0x0014 00059 #define DNS_TYPE_RT 0x0015 00060 #define DNS_TYPE_NSAP 0x0016 00061 #define DNS_TYPE_NSAPPTR 0x0017 00062 #define DNS_TYPE_SIG 0x0018 00063 #define DNS_TYPE_KEY 0x0019 00064 #define DNS_TYPE_PX 0x001a 00065 #define DNS_TYPE_GPOS 0x001b 00066 #define DNS_TYPE_AAAA 0x001c 00067 #define DNS_TYPE_LOC 0x001d 00068 #define DNS_TYPE_NXT 0x001e 00069 #define DNS_TYPE_EID 0x001f 00070 #define DNS_TYPE_NIMLOC 0x0020 00071 #define DNS_TYPE_SRV 0x0021 00072 #define DNS_TYPE_ATMA 0x0022 00073 #define DNS_TYPE_NAPTR 0x0023 00074 #define DNS_TYPE_KX 0x0024 00075 #define DNS_TYPE_CERT 0x0025 00076 #define DNS_TYPE_A6 0x0026 00077 #define DNS_TYPE_DNAME 0x0027 00078 #define DNS_TYPE_SINK 0x0028 00079 #define DNS_TYPE_OPT 0x0029 00080 #define DNS_TYPE_UINFO 0x0064 00081 #define DNS_TYPE_UID 0x0065 00082 #define DNS_TYPE_GID 0x0066 00083 #define DNS_TYPE_UNSPEC 0x0067 00084 #define DNS_TYPE_ADDRS 0x00f8 00085 #define DNS_TYPE_TKEY 0x00f9 00086 #define DNS_TYPE_TSIG 0x00fa 00087 #define DNS_TYPE_IXFR 0x00fb 00088 #define DNS_TYPE_AXFR 0x00fc 00089 #define DNS_TYPE_MAILB 0x00fd 00090 #define DNS_TYPE_MAILA 0x00fe 00091 #define DNS_TYPE_ALL 0x00ff 00092 #define DNS_TYPE_ANY 0x00ff 00093 00094 #define DNS_TYPE_WINS 0xff01 00095 #define DNS_TYPE_WINSR 0xff02 00096 #define DNS_TYPE_NBSTAT (DNS_TYPE_WINSR) 00097 00098 typedef enum _DNS_CHARSET 00099 { 00100 DnsCharSetUnknown, 00101 DnsCharSetUnicode, 00102 DnsCharSetUtf8, 00103 DnsCharSetAnsi 00104 } DNS_CHARSET; 00105 typedef enum 00106 { 00107 DnsConfigPrimaryDomainName_W, 00108 DnsConfigPrimaryDomainName_A, 00109 DnsConfigPrimaryDomainName_UTF8, 00110 DnsConfigAdapterDomainName_W, 00111 DnsConfigAdapterDomainName_A, 00112 DnsConfigAdapterDomainName_UTF8, 00113 DnsConfigDnsServerList, 00114 DnsConfigSearchList, 00115 DnsConfigAdapterInfo, 00116 DnsConfigPrimaryHostNameRegistrationEnabled, 00117 DnsConfigAdapterHostNameRegistrationEnabled, 00118 DnsConfigAddressRegistrationMaxCount, 00119 DnsConfigHostName_W, 00120 DnsConfigHostName_A, 00121 DnsConfigHostName_UTF8, 00122 DnsConfigFullHostName_W, 00123 DnsConfigFullHostName_A, 00124 DnsConfigFullHostName_UTF8 00125 } DNS_CONFIG_TYPE; 00126 typedef enum 00127 { 00128 DnsFreeFlat = 0, 00129 DnsFreeRecordList, 00130 DnsFreeParsedMessageFields 00131 } DNS_FREE_TYPE; 00132 typedef enum _DNS_NAME_FORMAT 00133 { 00134 DnsNameDomain, 00135 DnsNameDomainLabel, 00136 DnsNameHostnameFull, 00137 DnsNameHostnameLabel, 00138 DnsNameWildcard, 00139 DnsNameSrvRecord 00140 } DNS_NAME_FORMAT; 00141 typedef enum 00142 { 00143 DnsSectionQuestion, 00144 DnsSectionAnswer, 00145 DnsSectionAuthority, 00146 DnsSectionAdditional 00147 } DNS_SECTION; 00148 typedef struct _IP4_ARRAY { 00149 DWORD AddrCount; 00150 IP4_ADDRESS AddrArray[1]; 00151 } IP4_ARRAY, *PIP4_ARRAY; 00152 typedef struct { 00153 DWORD IP6Dword[4]; 00154 } IP6_ADDRESS, *PIP6_ADDRESS, DNS_IP6_ADDRESS, *PDNS_IP6_ADDRESS; 00155 typedef struct _DNS_HEADER { 00156 WORD Xid; 00157 BYTE RecursionDesired; 00158 BYTE Truncation; 00159 BYTE Authoritative; 00160 BYTE Opcode; 00161 BYTE IsResponse; 00162 BYTE ResponseCode; 00163 BYTE Reserved; 00164 BYTE RecursionAvailable; 00165 WORD QuestionCount; 00166 WORD AnswerCount; 00167 WORD NameServerCount; 00168 WORD AdditionalCount; 00169 } DNS_HEADER, *PDNS_HEADER; 00170 typedef struct _DNS_MESSAGE_BUFFER { 00171 DNS_HEADER MessageHead; 00172 CHAR MessageBody[1]; 00173 } DNS_MESSAGE_BUFFER, *PDNS_MESSAGE_BUFFER; 00174 typedef struct _DnsRecordFlags { 00175 DWORD Section :2; 00176 DWORD Delete :1; 00177 DWORD CharSet :2; 00178 DWORD Unused :3; 00179 DWORD Reserved :24; 00180 } DNS_RECORD_FLAGS; 00181 #define DNSREC_QUESTION 0 00182 #define DNSREC_ANSWER 1 00183 #define DNSREC_AUTHORITY 2 00184 #define DNSREC_ADDITIONAL 3 00185 typedef struct { 00186 IP4_ADDRESS IpAddress; 00187 } DNS_A_DATA, *PDNS_A_DATA; 00188 typedef struct { 00189 DNS_IP6_ADDRESS Ip6Address; 00190 } DNS_AAAA_DATA, *PDNS_AAAA_DATA; 00191 #define DNS_ATMA_MAX_ADDR_LENGTH 20 00192 typedef struct { 00193 BYTE AddressType; 00194 BYTE Address[DNS_ATMA_MAX_ADDR_LENGTH]; 00195 } DNS_ATMA_DATA, *PDNS_ATMA_DATA; 00196 typedef struct { 00197 WORD wFlags; 00198 BYTE chProtocol; 00199 BYTE chAlgorithm; 00200 BYTE Key[1]; 00201 } DNS_KEY_DATA, *PDNS_KEY_DATA; 00202 typedef struct { 00203 WORD wVersion; 00204 WORD wSize; 00205 WORD wHorPrec; 00206 WORD wVerPrec; 00207 DWORD dwLatitude; 00208 DWORD dwLongitude; 00209 DWORD dwAltitude; 00210 } DNS_LOC_DATA, *PDNS_LOC_DATA; 00211 typedef struct { 00212 LPSTR pNameMailbox; 00213 LPSTR pNameErrorsMailbox; 00214 } DNS_MINFO_DATAA, *PDNS_MINFO_DATAA; 00215 typedef struct { 00216 LPWSTR pNameMailbox; 00217 LPWSTR pNameErrorsMailbox; 00218 } DNS_MINFO_DATAW, *PDNS_MINFO_DATAW; 00219 typedef struct { 00220 LPSTR pNameExchange; 00221 WORD wPreference; 00222 WORD Pad; 00223 } DNS_MX_DATAA, *PDNS_MX_DATAA; 00224 typedef struct { 00225 LPWSTR pNameExchange; 00226 WORD wPreference; 00227 WORD Pad; 00228 } DNS_MX_DATAW, *PDNS_MX_DATAW; 00229 typedef struct { 00230 DWORD dwByteCount; 00231 BYTE Data[1]; 00232 } DNS_NULL_DATA, *PDNS_NULL_DATA; 00233 typedef struct { 00234 LPSTR pNameNext; 00235 WORD wNumTypes; 00236 WORD wTypes[1]; 00237 } DNS_NXT_DATAA, *PDNS_NXT_DATAA; 00238 typedef struct { 00239 LPWSTR pNameNext; 00240 WORD wNumTypes; 00241 WORD wTypes[1]; 00242 } DNS_NXT_DATAW, *PDNS_NXT_DATAW; 00243 typedef struct { 00244 LPSTR pNameHost; 00245 } DNS_PTR_DATAA, *PDNS_PTR_DATAA; 00246 typedef struct { 00247 LPWSTR pNameHost; 00248 } DNS_PTR_DATAW, *PDNS_PTR_DATAW; 00249 typedef struct { 00250 LPSTR pNameSigner; 00251 WORD wTypeCovered; 00252 BYTE chAlgorithm; 00253 BYTE chLabelCount; 00254 DWORD dwOriginalTtl; 00255 DWORD dwExpiration; 00256 DWORD dwTimeSigned; 00257 WORD wKeyTag; 00258 WORD Pad; 00259 BYTE Signature[1]; 00260 } DNS_SIG_DATAA, *PDNS_SIG_DATAA; 00261 typedef struct { 00262 LPWSTR pNameSigner; 00263 WORD wTypeCovered; 00264 BYTE chAlgorithm; 00265 BYTE chLabelCount; 00266 DWORD dwOriginalTtl; 00267 DWORD dwExpiration; 00268 DWORD dwTimeSigned; 00269 WORD wKeyTag; 00270 WORD Pad; 00271 BYTE Signature[1]; 00272 } DNS_SIG_DATAW, *PDNS_SIG_DATAW; 00273 typedef struct { 00274 LPSTR pNamePrimaryServer; 00275 LPSTR pNameAdministrator; 00276 DWORD dwSerialNo; 00277 DWORD dwRefresh; 00278 DWORD dwRetry; 00279 DWORD dwExpire; 00280 DWORD dwDefaultTtl; 00281 } DNS_SOA_DATAA, *PDNS_SOA_DATAA; 00282 typedef struct { 00283 LPWSTR pNamePrimaryServer; 00284 LPWSTR pNameAdministrator; 00285 DWORD dwSerialNo; 00286 DWORD dwRefresh; 00287 DWORD dwRetry; 00288 DWORD dwExpire; 00289 DWORD dwDefaultTtl; 00290 } DNS_SOA_DATAW, *PDNS_SOA_DATAW; 00291 typedef struct { 00292 LPSTR pNameTarget; 00293 WORD wPriority; 00294 WORD wWeight; 00295 WORD wPort; 00296 WORD Pad; 00297 } DNS_SRV_DATAA, *PDNS_SRV_DATAA; 00298 typedef struct { 00299 LPWSTR pNameTarget; 00300 WORD wPriority; 00301 WORD wWeight; 00302 WORD wPort; 00303 WORD Pad; 00304 } DNS_SRV_DATAW, *PDNS_SRV_DATAW; 00305 typedef struct { 00306 DWORD dwStringCount; 00307 LPSTR pStringArray[1]; 00308 } DNS_TXT_DATAA, *PDNS_TXT_DATAA; 00309 typedef struct { 00310 DWORD dwStringCount; 00311 LPWSTR pStringArray[1]; 00312 } DNS_TXT_DATAW, *PDNS_TXT_DATAW; 00313 typedef struct { 00314 LPSTR pNameAlgorithm; 00315 PBYTE pAlgorithmPacket; 00316 PBYTE pKey; 00317 PBYTE pOtherData; 00318 DWORD dwCreateTime; 00319 DWORD dwExpireTime; 00320 WORD wMode; 00321 WORD wError; 00322 WORD wKeyLength; 00323 WORD wOtherLength; 00324 UCHAR cAlgNameLength; 00325 BOOL bPacketPointers; 00326 } DNS_TKEY_DATAA, *PDNS_TKEY_DATAA; 00327 typedef struct { 00328 LPWSTR pNameAlgorithm; 00329 PBYTE pAlgorithmPacket; 00330 PBYTE pKey; 00331 PBYTE pOtherData; 00332 DWORD dwCreateTime; 00333 DWORD dwExpireTime; 00334 WORD wMode; 00335 WORD wError; 00336 WORD wKeyLength; 00337 WORD wOtherLength; 00338 UCHAR cAlgNameLength; 00339 BOOL bPacketPointers; 00340 } DNS_TKEY_DATAW, *PDNS_TKEY_DATAW; 00341 typedef struct { 00342 LPSTR pNameAlgorithm; 00343 PBYTE pAlgorithmPacket; 00344 PBYTE pSignature; 00345 PBYTE pOtherData; 00346 LONGLONG i64CreateTime; 00347 WORD wFudgeTime; 00348 WORD wOriginalXid; 00349 WORD wError; 00350 WORD wSigLength; 00351 WORD wOtherLength; 00352 UCHAR cAlgNameLength; 00353 BOOL bPacketPointers; 00354 } DNS_TSIG_DATAA, *PDNS_TSIG_DATAA; 00355 typedef struct { 00356 LPWSTR pNameAlgorithm; 00357 PBYTE pAlgorithmPacket; 00358 PBYTE pSignature; 00359 PBYTE pOtherData; 00360 LONGLONG i64CreateTime; 00361 WORD wFudgeTime; 00362 WORD wOriginalXid; 00363 WORD wError; 00364 WORD wSigLength; 00365 WORD wOtherLength; 00366 UCHAR cAlgNameLength; 00367 BOOL bPacketPointers; 00368 } DNS_TSIG_DATAW, *PDNS_TSIG_DATAW; 00369 typedef struct { 00370 DWORD dwMappingFlag; 00371 DWORD dwLookupTimeout; 00372 DWORD dwCacheTimeout; 00373 DWORD cWinsServerCount; 00374 IP4_ADDRESS WinsServers[1]; 00375 } DNS_WINS_DATA, *PDNS_WINS_DATA; 00376 typedef struct { 00377 DWORD dwMappingFlag; 00378 DWORD dwLookupTimeout; 00379 DWORD dwCacheTimeout; 00380 LPSTR pNameResultDomain; 00381 } DNS_WINSR_DATAA, *PDNS_WINSR_DATAA; 00382 typedef struct { 00383 DWORD dwMappingFlag; 00384 DWORD dwLookupTimeout; 00385 DWORD dwCacheTimeout; 00386 LPWSTR pNameResultDomain; 00387 } DNS_WINSR_DATAW, *PDNS_WINSR_DATAW; 00388 typedef struct _DNS_WIRE_QUESTION { 00389 WORD QuestionType; 00390 WORD QuestionClass; 00391 } DNS_WIRE_QUESTION, *PDNS_WIRE_QUESTION; 00392 typedef struct _DNS_WIRE_RECORD { 00393 WORD RecordType; 00394 WORD RecordClass; 00395 DWORD TimeToLive; 00396 WORD DataLength; 00397 } DNS_WIRE_RECORD, *PDNS_WIRE_RECORD; 00398 typedef struct { 00399 IP4_ADDRESS IpAddress; 00400 UCHAR chProtocol; 00401 BYTE BitMask[1]; 00402 } DNS_WKS_DATA, *PDNS_WKS_DATA; 00403 typedef struct _DnsRecordA { 00404 struct _DnsRecordA* pNext; 00405 LPSTR pName; 00406 WORD wType; 00407 WORD wDataLength; 00408 union { 00409 DWORD DW; 00410 DNS_RECORD_FLAGS S; 00411 } Flags; 00412 DWORD dwTtl; 00413 DWORD dwReserved; 00414 union { 00415 DNS_A_DATA A; 00416 DNS_SOA_DATAA SOA, Soa; 00417 DNS_PTR_DATAA PTR, Ptr, NS, Ns, CNAME, Cname, MB, Mb, 00418 MD, Md, MF, Mf, MG, Mg, MR, Mr; 00419 DNS_MINFO_DATAA MINFO, Minfo, RP, Rp; 00420 DNS_MX_DATAA MX, Mx, AFSDB, Afsdb, RT, Rt; 00421 DNS_TXT_DATAA HINFO, Hinfo, ISDN, Isdn, TXT, Txt, X25; 00422 DNS_NULL_DATA Null; 00423 DNS_WKS_DATA WKS, Wks; 00424 DNS_AAAA_DATA AAAA; 00425 DNS_KEY_DATA KEY, Key; 00426 DNS_SIG_DATAA SIG, Sig; 00427 DNS_ATMA_DATA ATMA, Atma; 00428 DNS_NXT_DATAA NXT, Nxt; 00429 DNS_SRV_DATAA SRV, Srv; 00430 DNS_TKEY_DATAA TKEY, Tkey; 00431 DNS_TSIG_DATAA TSIG, Tsig; 00432 DNS_WINS_DATA WINS, Wins; 00433 DNS_WINSR_DATAA WINSR, WinsR, NBSTAT, Nbstat; 00434 } Data; 00435 } DNS_RECORDA, *PDNS_RECORDA; 00436 typedef struct _DnsRecordW { 00437 struct _DnsRecordW* pNext; 00438 LPWSTR pName; 00439 WORD wType; 00440 WORD wDataLength; 00441 union { 00442 DWORD DW; 00443 DNS_RECORD_FLAGS S; 00444 } Flags; 00445 DWORD dwTtl; 00446 DWORD dwReserved; 00447 union { 00448 DNS_A_DATA A; 00449 DNS_SOA_DATAW SOA, Soa; 00450 DNS_PTR_DATAW PTR, Ptr, NS, Ns, CNAME, Cname, MB, Mb, 00451 MD, Md, MF, Mf, MG, Mg, MR, Mr; 00452 DNS_MINFO_DATAW MINFO, Minfo, RP, Rp; 00453 DNS_MX_DATAW MX, Mx, AFSDB, Afsdb, RT, Rt; 00454 DNS_TXT_DATAW HINFO, Hinfo, ISDN, Isdn, TXT, Txt, X25; 00455 DNS_NULL_DATA Null; 00456 DNS_WKS_DATA WKS, Wks; 00457 DNS_AAAA_DATA AAAA; 00458 DNS_KEY_DATA KEY, Key; 00459 DNS_SIG_DATAW SIG, Sig; 00460 DNS_ATMA_DATA ATMA, Atma; 00461 DNS_NXT_DATAW NXT, Nxt; 00462 DNS_SRV_DATAW SRV, Srv; 00463 DNS_TKEY_DATAW TKEY, Tkey; 00464 DNS_TSIG_DATAW TSIG, Tsig; 00465 DNS_WINS_DATA WINS, Wins; 00466 DNS_WINSR_DATAW WINSR, WinsR, NBSTAT, Nbstat; 00467 } Data; 00468 } DNS_RECORDW, *PDNS_RECORDW; 00469 00470 #ifdef UNICODE 00471 #define DNS_RECORD DNS_RECORDW 00472 #define PDNS_RECORD PDNS_RECORDW 00473 #else 00474 #define DNS_RECORD DNS_RECORDA 00475 #define PDNS_RECORD PDNS_RECORDA 00476 #endif 00477 00478 typedef struct _DnsRRSet { 00479 PDNS_RECORD pFirstRR; 00480 PDNS_RECORD pLastRR; 00481 } DNS_RRSET, *PDNS_RRSET; 00482 00483 #define DNS_RRSET_INIT( rrset ) \ 00484 { \ 00485 PDNS_RRSET _prrset = &(rrset); \ 00486 _prrset->pFirstRR = NULL; \ 00487 _prrset->pLastRR = (PDNS_RECORD) &_prrset->pFirstRR; \ 00488 } 00489 00490 #define DNS_RRSET_ADD( rrset, pnewRR ) \ 00491 { \ 00492 PDNS_RRSET _prrset = &(rrset); \ 00493 PDNS_RECORD _prrnew = (pnewRR); \ 00494 _prrset->pLastRR->pNext = _prrnew; \ 00495 _prrset->pLastRR = _prrnew; \ 00496 } 00497 00498 #define DNS_RRSET_TERMINATE( rrset ) \ 00499 { \ 00500 PDNS_RRSET _prrset = &(rrset); \ 00501 _prrset->pLastRR->pNext = NULL; \ 00502 } 00503 00504 DNS_STATUS WINAPI DnsAcquireContextHandle_A(DWORD,PVOID,HANDLE*); 00505 DNS_STATUS WINAPI DnsAcquireContextHandle_W(DWORD,PVOID,HANDLE*); 00506 DNS_STATUS WINAPI DnsExtractRecordsFromMessage_W(PDNS_MESSAGE_BUFFER,WORD,PDNS_RECORD*); 00507 DNS_STATUS WINAPI DnsExtractRecordsFromMessage_UTF8(PDNS_MESSAGE_BUFFER,WORD,PDNS_RECORD*); 00508 DNS_STATUS WINAPI DnsModifyRecordsInSet_A(PDNS_RECORD,PDNS_RECORD,DWORD,HANDLE,PIP4_ARRAY,PVOID); 00509 DNS_STATUS WINAPI DnsModifyRecordsInSet_W(PDNS_RECORD,PDNS_RECORD,DWORD,HANDLE,PIP4_ARRAY,PVOID); 00510 DNS_STATUS WINAPI DnsModifyRecordsInSet_UTF8(PDNS_RECORD,PDNS_RECORD,DWORD,HANDLE,PIP4_ARRAY,PVOID); 00511 BOOL WINAPI DnsNameCompare_A(PCSTR,PCSTR); 00512 BOOL WINAPI DnsNameCompare_W(PCWSTR,PCWSTR); 00513 DNS_STATUS WINAPI DnsQuery_A(PCSTR,WORD,DWORD,PIP4_ARRAY,PDNS_RECORD*,PVOID*); 00514 DNS_STATUS WINAPI DnsQuery_W(PCWSTR,WORD,DWORD,PIP4_ARRAY,PDNS_RECORD*,PVOID*); 00515 DNS_STATUS WINAPI DnsQuery_UTF8(PCSTR,WORD,DWORD,PIP4_ARRAY,PDNS_RECORD*,PVOID*); 00516 DNS_STATUS WINAPI DnsQueryConfig(DNS_CONFIG_TYPE,DWORD,PWSTR,PVOID,PVOID,PDWORD); 00517 BOOL WINAPI DnsRecordCompare(PDNS_RECORD,PDNS_RECORD); 00518 PDNS_RECORD WINAPI DnsRecordCopyEx(PDNS_RECORD,DNS_CHARSET,DNS_CHARSET); 00519 void WINAPI DnsRecordListFree(PDNS_RECORD,DNS_FREE_TYPE); 00520 BOOL WINAPI DnsRecordSetCompare(PDNS_RECORD,PDNS_RECORD,PDNS_RECORD*,PDNS_RECORD*); 00521 PDNS_RECORD WINAPI DnsRecordSetCopyEx(PDNS_RECORD,DNS_CHARSET,DNS_CHARSET); 00522 PDNS_RECORD WINAPI DnsRecordSetDetach(PDNS_RECORD); 00523 void WINAPI DnsReleaseContextHandle(HANDLE); 00524 DNS_STATUS WINAPI DnsReplaceRecordSetA(PDNS_RECORD,DWORD,HANDLE,PIP4_ARRAY,PVOID); 00525 DNS_STATUS WINAPI DnsReplaceRecordSetW(PDNS_RECORD,DWORD,HANDLE,PIP4_ARRAY,PVOID); 00526 DNS_STATUS WINAPI DnsReplaceRecordSetUTF8(PDNS_RECORD,DWORD,HANDLE,PIP4_ARRAY,PVOID); 00527 DNS_STATUS WINAPI DnsValidateName_A(LPCSTR,DNS_NAME_FORMAT); 00528 DNS_STATUS WINAPI DnsValidateName_W(LPCWSTR, DNS_NAME_FORMAT); 00529 DNS_STATUS WINAPI DnsValidateName_UTF8(LPCSTR,DNS_NAME_FORMAT); 00530 BOOL WINAPI DnsWriteQuestionToBuffer_W(PDNS_MESSAGE_BUFFER,LPDWORD,LPWSTR,WORD,WORD,BOOL); 00531 BOOL WINAPI DnsWriteQuestionToBuffer_UTF8(PDNS_MESSAGE_BUFFER,LPDWORD,LPSTR,WORD,WORD,BOOL); 00532 00533 #ifdef UNICODE 00534 #define DNS_MINFO_DATA DNS_MINFO_DATAW 00535 #define PDNS_MINFO_DATA PDNS_MINFO_DATAW 00536 #define DNS_MX_DATA DNS_MX_DATAW 00537 #define PDNS_MX_DATA PDNS_MX_DATAW 00538 #define DNS_NXT_DATA DNS_NXT_DATAW 00539 #define PDNS_NXT_DATA PDNS_NXT_DATAW 00540 #define DNS_PTR_DATA DNS_PTR_DATAW 00541 #define PDNS_PTR_DATA PDNS_PTR_DATAW 00542 #define DNS_SIG_DATA DNS_SIG_DATAW 00543 #define PDNS_SIG_DATA PDNS_SIG_DATAW 00544 #define DNS_SOA_DATA DNS_SOA_DATAW 00545 #define PDNS_SOA_DATA PDNS_SOA_DATAW 00546 #define DNS_TXT_DATA DNS_TXT_DATAW 00547 #define PDNS_TXT_DATA PDNS_TXT_DATAW 00548 #define DNS_TKEY_DATA DNS_TKEY_DATAW 00549 #define PDNS_TKEY_DATA PDNS_TKEY_DATAW 00550 #define DNS_WINSR_DATA DNS_WINSR_DATAW 00551 #define PDNS_WINSR_DATA PDNS_WINSR_DATAW 00552 #define DnsAcquireContextHandle DnsAcquireContextHandle_W 00553 #define DnsModifyRecordsInSet DnsModifyRecordsInSet_W 00554 #define DnsNameCompare DnsNameCompare_W 00555 #define DnsQuery DnsQuery_W 00556 #define DnsReplaceRecordSet DnsReplaceRecordSetW 00557 #define DnsValidateName DnsValidateName_W 00558 #else 00559 #define DNS_MINFO_DATA DNS_MINFO_DATAA 00560 #define PDNS_MINFO_DATA PDNS_MINFO_DATAA 00561 #define DNS_MX_DATA DNS_MX_DATAA 00562 #define PDNS_MX_DATA PDNS_MX_DATAA 00563 #define DNS_NXT_DATA DNS_NXT_DATAA 00564 #define PDNS_NXT_DATA PDNS_NXT_DATAA 00565 #define DNS_PTR_DATA DNS_PTR_DATAA 00566 #define PDNS_PTR_DATA PDNS_PTR_DATAA 00567 #define DNS_SIG_DATA DNS_SIG_DATAA 00568 #define PDNS_SIG_DATA PDNS_SIG_DATAA 00569 #define DNS_SOA_DATA DNS_SOA_DATAA 00570 #define PDNS_SOA_DATA PDNS_SOA_DATAA 00571 #define DNS_TXT_DATA DNS_TXT_DATAA 00572 #define PDNS_TXT_DATA PDNS_TXT_DATAA 00573 #define DNS_TKEY_DATA DNS_TKEY_DATAA 00574 #define PDNS_TKEY_DATA PDNS_TKEY_DATAA 00575 #define DNS_WINSR_DATA DNS_WINSR_DATAA 00576 #define PDNS_WINSR_DATA PDNS_WINSR_DATAA 00577 #define DnsAcquireContextHandle DnsAcquireContextHandle_A 00578 #define DnsModifyRecordsInSet DnsModifyRecordsInSet_A 00579 #define DnsNameCompare DnsNameCompare_A 00580 #define DnsQuery DnsQuery_A 00581 #define DnsReplaceRecordSet DnsReplaceRecordSetA 00582 #define DnsValidateName DnsValidateName_A 00583 #endif 00584 00585 #endif /* RC_INVOKED */ 00586 00587 #ifdef __cplusplus 00588 } 00589 #endif 00590 00591 #endif /* _WINDNS_H */ Generated on Sun May 27 2012 04:23:31 for ReactOS by
1.7.6.1
|