Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygendnslib.h
Go to the documentation of this file.
00001 /* 00002 * COPYRIGHT: See COPYING in the top level directory 00003 * PROJECT: ReactOS Ancillary Function Driver DLL 00004 * FILE: include/mswsock.h 00005 * PURPOSE: Ancillary Function Driver DLL header 00006 */ 00007 00008 #pragma once 00009 00010 /* INCLUDES ******************************************************************/ 00011 #include <ws2atm.h> 00012 00013 /* ENUMERATIONS **************************************************************/ 00014 00015 typedef enum _DNS_STRING_TYPE 00016 { 00017 UnicodeString = 1, 00018 Utf8String, 00019 AnsiString, 00020 } DNS_STRING_TYPE; 00021 00022 #define IpV4Address 3 00023 00024 /* TYPES *********************************************************************/ 00025 00026 typedef struct _DNS_IPV6_ADDRESS 00027 { 00028 ULONG Unknown; 00029 ULONG Unknown2; 00030 IP6_ADDRESS Address; 00031 ULONG Unknown3; 00032 ULONG Unknown4; 00033 DWORD Reserved; 00034 ULONG Unknown5; 00035 } DNS_IPV6_ADDRESS, *PDNS_IPV6_ADDRESS; 00036 00037 typedef struct _DNS_ADDRESS 00038 { 00039 union 00040 { 00041 struct 00042 { 00043 WORD AddressFamily; 00044 WORD Port; 00045 ATM_ADDRESS AtmAddress; 00046 }; 00047 SOCKADDR_IN Ip4Address; 00048 SOCKADDR_IN6 Ip6Address; 00049 }; 00050 ULONG AddressLength; 00051 DWORD Sub; 00052 ULONG Flag; 00053 } DNS_ADDRESS, *PDNS_ADDRESS; 00054 00055 typedef struct _DNS_ARRAY 00056 { 00057 ULONG AllocatedAddresses; 00058 ULONG UsedAddresses; 00059 ULONG Unknown[0x6]; 00060 DNS_ADDRESS Addresses[1]; 00061 } DNS_ARRAY, *PDNS_ARRAY; 00062 00063 typedef struct _DNS_BLOB 00064 { 00065 LPWSTR Name; 00066 PDNS_ARRAY DnsAddrArray; 00067 PHOSTENT Hostent; 00068 ULONG AliasCount; 00069 ULONG Unknown; 00070 LPWSTR Aliases[8]; 00071 } DNS_BLOB, *PDNS_BLOB; 00072 00073 typedef struct _DNS_FAMILY_INFO 00074 { 00075 WORD AddrType; 00076 WORD DnsType; 00077 DWORD AddressSize; 00078 DWORD SockaddrSize; 00079 DWORD AddressOffset; 00080 } DNS_FAMILY_INFO, *PDNS_FAMILY_INFO; 00081 00082 typedef struct _FLATBUFF 00083 { 00084 PVOID Buffer; 00085 PVOID BufferEnd; 00086 ULONG_PTR BufferPos; 00087 SIZE_T BufferSize; 00088 SIZE_T BufferFreeSize; 00089 } FLATBUFF, *PFLATBUFF; 00090 00091 /* 00092 * memory.c 00093 */ 00094 VOID 00095 WINAPI 00096 Dns_Free(IN PVOID Address); 00097 00098 PVOID 00099 WINAPI 00100 Dns_AllocZero(IN SIZE_T Size); 00101 00102 /* 00103 * addr.c 00104 */ 00105 PDNS_FAMILY_INFO 00106 WINAPI 00107 FamilyInfo_GetForFamily(IN WORD AddressFamily); 00108 00109 /* 00110 * dnsaddr.c 00111 */ 00112 VOID 00113 WINAPI 00114 DnsAddr_BuildFromIp4( 00115 IN PDNS_ADDRESS DnsAddress, 00116 IN IN_ADDR Address, 00117 IN WORD Unknown 00118 ); 00119 00120 VOID 00121 WINAPI 00122 DnsAddr_BuildFromIp6( 00123 IN PDNS_ADDRESS DnsAddress, 00124 IN PIN6_ADDR Address, 00125 IN ULONG ScopeId, 00126 IN WORD Port 00127 ); 00128 00129 PDNS_ARRAY 00130 WINAPI 00131 DnsAddrArray_Create(ULONG Count); 00132 00133 BOOL 00134 WINAPI 00135 DnsAddrArray_AddAddr( 00136 IN PDNS_ARRAY DnsAddrArray, 00137 IN PDNS_ADDRESS DnsAddress, 00138 IN WORD AddressFamily OPTIONAL, 00139 IN DWORD AddressType OPTIONAL 00140 ); 00141 00142 VOID 00143 WINAPI 00144 DnsAddrArray_Free(IN PDNS_ARRAY DnsAddrArray); 00145 00146 BOOL 00147 WINAPI 00148 DnsAddrArray_AddIp4( 00149 IN PDNS_ARRAY DnsAddrArray, 00150 IN IN_ADDR Address, 00151 IN DWORD AddressType 00152 ); 00153 00154 BOOL 00155 WINAPI 00156 DnsAddrArray_ContainsAddr( 00157 IN PDNS_ARRAY DnsAddrArray, 00158 IN PDNS_ADDRESS DnsAddress, 00159 IN DWORD AddressType 00160 ); 00161 00162 BOOLEAN 00163 WINAPI 00164 DnsAddr_BuildFromDnsRecord( 00165 IN PDNS_RECORD DnsRecord, 00166 OUT PDNS_ADDRESS DnsAddr 00167 ); 00168 00169 /* 00170 * hostent.c 00171 */ 00172 PHOSTENT 00173 WINAPI 00174 Hostent_Init( 00175 IN PVOID *Buffer, 00176 IN WORD AddressFamily, 00177 IN ULONG AddressSize, 00178 IN ULONG AddressCount, 00179 IN ULONG AliasCount 00180 ); 00181 00182 VOID 00183 WINAPI 00184 Hostent_ConvertToOffsets(IN PHOSTENT Hostent); 00185 00186 /* 00187 * flatbuf.c 00188 */ 00189 VOID 00190 WINAPI 00191 FlatBuf_Init( 00192 IN PFLATBUFF FlatBuffer, 00193 IN PVOID Buffer, 00194 IN SIZE_T Size 00195 ); 00196 00197 PVOID 00198 WINAPI 00199 FlatBuf_Arg_CopyMemory( 00200 IN OUT PULONG_PTR Position, 00201 IN OUT PSIZE_T FreeSize, 00202 IN PVOID Buffer, 00203 IN SIZE_T Size, 00204 IN ULONG Align 00205 ); 00206 00207 PVOID 00208 WINAPI 00209 FlatBuf_Arg_Reserve( 00210 IN OUT PULONG_PTR Position, 00211 IN OUT PSIZE_T FreeSize, 00212 IN SIZE_T Size, 00213 IN ULONG Align 00214 ); 00215 00216 PVOID 00217 WINAPI 00218 FlatBuf_Arg_WriteString( 00219 IN OUT PULONG_PTR Position, 00220 IN OUT PSIZE_T FreeSize, 00221 IN PVOID String, 00222 IN BOOLEAN IsUnicode 00223 ); 00224 00225 /* 00226 * sablob.c 00227 */ 00228 PDNS_BLOB 00229 WINAPI 00230 SaBlob_Create( 00231 IN ULONG Count 00232 ); 00233 00234 PDNS_BLOB 00235 WINAPI 00236 SaBlob_CreateFromIp4( 00237 IN LPWSTR Name, 00238 IN ULONG Count, 00239 IN PIN_ADDR AddressArray 00240 ); 00241 00242 VOID 00243 WINAPI 00244 SaBlob_Free(IN PDNS_BLOB Blob); 00245 00246 PHOSTENT 00247 WINAPI 00248 SaBlob_CreateHostent( 00249 IN OUT PULONG_PTR BufferPosition, 00250 IN OUT PSIZE_T RemainingBufferSpace, 00251 IN OUT PSIZE_T HostEntrySize, 00252 IN PDNS_BLOB Blob, 00253 IN DWORD StringType, 00254 IN BOOLEAN Relative, 00255 IN BOOLEAN BufferAllocated 00256 ); 00257 00258 INT 00259 WINAPI 00260 SaBlob_WriteNameOrAlias( 00261 IN PDNS_BLOB Blob, 00262 IN LPWSTR String, 00263 IN BOOLEAN IsAlias 00264 ); 00265 00266 PDNS_BLOB 00267 WINAPI 00268 SaBlob_Query( 00269 IN LPWSTR Name, 00270 IN WORD DnsType, 00271 IN ULONG Flags, 00272 IN PVOID *Reserved, 00273 IN DWORD AddressFamily 00274 ); 00275 00276 /* 00277 * string.c 00278 */ 00279 ULONG 00280 WINAPI 00281 Dns_StringCopy( 00282 OUT PVOID Destination, 00283 IN OUT PULONG DestinationSize, 00284 IN PVOID String, 00285 IN ULONG StringSize OPTIONAL, 00286 IN DWORD InputType, 00287 IN DWORD OutputType 00288 ); 00289 00290 LPWSTR 00291 WINAPI 00292 Dns_CreateStringCopy_W(IN LPWSTR Name); 00293 00294 ULONG 00295 WINAPI 00296 Dns_GetBufferLengthForStringCopy( 00297 IN PVOID String, 00298 IN ULONG Size OPTIONAL, 00299 IN DWORD InputType, 00300 IN DWORD OutputType 00301 ); 00302 00303 /* 00304 * straddr.c 00305 */ 00306 BOOLEAN 00307 WINAPI 00308 Dns_StringToAddressW( 00309 OUT PVOID Address, 00310 IN OUT PULONG AddressSize, 00311 IN LPWSTR AddressName, 00312 IN OUT PDWORD AddressFamily 00313 ); 00314 00315 LPWSTR 00316 WINAPI 00317 Dns_Ip4AddressToReverseName_W( 00318 OUT LPWSTR Name, 00319 IN IN_ADDR Address 00320 ); 00321 00322 LPWSTR 00323 WINAPI 00324 Dns_Ip6AddressToReverseName_W( 00325 OUT LPWSTR Name, 00326 IN IN6_ADDR Address 00327 ); 00328 00329 BOOLEAN 00330 WINAPI 00331 Dns_ReverseNameToDnsAddr_W( 00332 OUT PDNS_ADDRESS DnsAddr, 00333 IN LPWSTR Name 00334 ); 00335 00336 BOOLEAN 00337 WINAPI 00338 Dns_Ip4ReverseNameToAddress_W( 00339 OUT PIN_ADDR Address, 00340 IN LPWSTR Name 00341 ); Generated on Mon May 28 2012 04:35:45 for ReactOS by
1.7.6.1
|