86 *OutNameServer = NameServer;
96 PVOID ServerCallbackContext,
166 PVOID InterfaceCallbackContext)
184 Status =
RegQueryInfoKeyW(
hKey,
NULL,
NULL,
NULL, &NumInterfaces, &InterfaceNameLen,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL);
209 Length = InterfaceNameLen;
286 Data->pCurrent =
Data->pCurrent->Next;
294 Data->pCurrent->IpAddress.String[0] =
'\0';
_In_ ULONG _In_ ULONG _In_ ULONG Length
_IRQL_requires_same_ typedef _In_ ULONG _In_ UCHAR _In_ ULONGLONG _In_ ULONGLONG _In_opt_ PEVENT_FILTER_DESCRIPTOR _Inout_opt_ PVOID CallbackContext
struct _NAME_SERVER_LIST_PRIVATE NAME_SERVER_LIST_PRIVATE
#define WideCharToMultiByte
LSTATUS MakeNameServerList(PNAME_SERVER_LIST_PRIVATE PrivateData)
VOID(* ENUM_INTERFACE_CALLBACK)(HKEY ChildKeyHandle, LPWSTR ChildKeyName, PVOID CallbackContext)
VOID CountServerCallbackTrampoline(HKEY ChildKeyHandle, LPWSTR ChildKeyName, PVOID CallbackContext)
BOOLEAN NTAPI RtlFreeHeap(IN PVOID HeapHandle, IN ULONG Flags, IN PVOID HeapBase)
struct _NAME_SERVER_LIST_PRIVATE * PNAME_SERVER_LIST_PRIVATE
VOID CreateNameServerListCallbackTrampoline(HKEY ChildKeyHandle, LPWSTR ChildKeyName, PVOID CallbackContext)
struct _IPHLP_RES_INFO * PIPHLP_RES_INFO
static void Server(int port)
#define RtlMoveMemory(Destination, Source, Length)
_Must_inspect_result_ _In_ PFLT_GET_OPERATION_STATUS_CALLBACK CallbackRoutine
PIPHLP_RES_INFO getResInfo()
LSTATUS CountNameServers(IN PNAME_SERVER_LIST_PRIVATE PrivateData)
VOID CreateNameServerListCallback(IN LPWSTR InterfaceName, IN LPWSTR Server, IN PVOID CallbackContext)
PVOID WINAPI HeapAlloc(HANDLE, DWORD, SIZE_T)
_CONST_RETURN wchar_t *__cdecl wcschr(_In_z_ const wchar_t *_Str, wchar_t _Ch)
LONG WINAPI RegQueryValueExW(_In_ HKEY hkeyorg, _In_ LPCWSTR name, _In_ LPDWORD reserved, _In_ LPDWORD type, _In_ LPBYTE data, _In_ LPDWORD count)
static DWORD DWORD * dwLength
_In_ WDFCOLLECTION _In_ ULONG Index
VOID disposeResInfo(PIPHLP_RES_INFO InfoPtr)
WINE_DEFAULT_DEBUG_CHANNEL(iphlpapi)
static LSTATUS(WINAPI *pRegDeleteTreeW)(HKEY
LONG WINAPI RegQueryInfoKeyW(HKEY hKey, LPWSTR lpClass, LPDWORD lpcClass, LPDWORD lpReserved, LPDWORD lpcSubKeys, LPDWORD lpcMaxSubKeyLen, LPDWORD lpcMaxClassLen, LPDWORD lpcValues, LPDWORD lpcMaxValueNameLen, LPDWORD lpcMaxValueLen, LPDWORD lpcbSecurityDescriptor, PFILETIME lpftLastWriteTime)
struct _IPHLP_RES_INFO IPHLP_RES_INFO
IP_ADDR_STRING * pCurrent
LONG WINAPI RegOpenKeyExW(HKEY hKey, LPCWSTR lpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult)
LONG WINAPI RegEnumKeyExW(_In_ HKEY hKey, _In_ DWORD dwIndex, _Out_ LPWSTR lpName, _Inout_ LPDWORD lpcbName, _Reserved_ LPDWORD lpReserved, _Out_opt_ LPWSTR lpClass, _Inout_opt_ LPDWORD lpcbClass, _Out_opt_ PFILETIME lpftLastWriteTime)
LSTATUS EnumNameServers(IN HKEY hInterface, IN LPWSTR InterfaceName, PVOID ServerCallbackContext, EnumNameServersFunc CallbackRoutine)
LSTATUS EnumInterfaces(ENUM_INTERFACE_CALLBACK CallbackRoutine, PVOID InterfaceCallbackContext)
VOID CountNameServerCallback(IN LPWSTR InterfaceName, IN LPWSTR Server, IN PVOID CallbackContext)
LSTATUS QueryNameServer(IN HKEY hInterface, IN LPCWSTR NameServerKey, OUT LPWSTR *OutNameServer)
VOID(* EnumNameServersFunc)(PWCHAR Interface, PWCHAR NameServer, PVOID Data)
#define HeapFree(x, y, z)
#define RegCloseKey(hKey)
#define HKEY_LOCAL_MACHINE