You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
143 lines
2.5 KiB
143 lines
2.5 KiB
/*
|
|
|
|
Copyright (c) 1998, Microsoft Corporation, all rights reserved
|
|
|
|
Description:
|
|
|
|
History:
|
|
|
|
*/
|
|
|
|
#ifndef _TCPREG_H_
|
|
#define _TCPREG_H_
|
|
|
|
#include "rasiphlp.h"
|
|
|
|
// Maximum characters in an IP address string of the form a.b.c.d
|
|
#define MAXIPSTRLEN 20
|
|
|
|
typedef struct _TCPIP_INFO
|
|
{
|
|
BOOL fChanged;
|
|
BOOL fDisableNetBIOSoverTcpip;
|
|
|
|
WCHAR* wszAdapterName;
|
|
|
|
WCHAR wszIPAddress[MAXIPSTRLEN + 1];
|
|
WCHAR wszSubnetMask[MAXIPSTRLEN + 1];
|
|
|
|
WCHAR* wszDNSNameServers; // space separated SZ
|
|
WCHAR* mwszNetBIOSNameServers; // MULTI_SZ
|
|
WCHAR* wszDNSDomainName;
|
|
|
|
} TCPIP_INFO;
|
|
|
|
// *ppTcpipInfo must ultimately be freed by calling FreeTcpipInfo()
|
|
|
|
DWORD
|
|
LoadTcpipInfo(
|
|
IN TCPIP_INFO** ppTcpipInfo,
|
|
IN WCHAR* wszAdapterName,
|
|
IN BOOL fAdapterOnly
|
|
);
|
|
|
|
DWORD
|
|
SaveTcpipInfo(
|
|
IN TCPIP_INFO* pTcpipInfo
|
|
);
|
|
|
|
DWORD
|
|
FreeTcpipInfo(
|
|
IN TCPIP_INFO** ppTcpipInfo
|
|
);
|
|
|
|
VOID
|
|
ClearTcpipInfo(
|
|
VOID
|
|
);
|
|
|
|
DWORD
|
|
GetAdapterInfo(
|
|
IN DWORD dwIndex,
|
|
OUT IPADDR* pnboIpAddress,
|
|
OUT IPADDR* pnboDNS1,
|
|
OUT IPADDR* pnboDNS2,
|
|
OUT IPADDR* pnboWINS1,
|
|
OUT IPADDR* pnboWINS2,
|
|
OUT IPADDR* pnboGateway,
|
|
OUT BYTE* pbAddress
|
|
);
|
|
|
|
DWORD
|
|
GetPreferredAdapterInfo(
|
|
OUT IPADDR* pnboIpAddress,
|
|
OUT IPADDR* pnboDNS1,
|
|
OUT IPADDR* pnboDNS2,
|
|
OUT IPADDR* pnboWINS1,
|
|
OUT IPADDR* pnboWINS2,
|
|
OUT BYTE* pbAddress
|
|
);
|
|
|
|
DWORD
|
|
MwszLength(
|
|
IN WCHAR* mwsz
|
|
);
|
|
|
|
DWORD
|
|
RegQueryValueWithAllocA(
|
|
IN HKEY hKey,
|
|
IN CHAR* szValueName,
|
|
IN DWORD dwTypeRequired,
|
|
IN BYTE** ppbData
|
|
);
|
|
|
|
DWORD
|
|
RegQueryValueWithAllocW(
|
|
IN HKEY hKey,
|
|
IN WCHAR* wszValueName,
|
|
IN DWORD dwTypeRequired,
|
|
IN BYTE** ppbData
|
|
);
|
|
|
|
IPADDR
|
|
IpAddressFromAbcdWsz(
|
|
IN WCHAR* wszIpAddress
|
|
);
|
|
|
|
VOID
|
|
AbcdSzFromIpAddress(
|
|
IN IPADDR nboIpAddr,
|
|
OUT CHAR* szIpAddress
|
|
);
|
|
|
|
VOID
|
|
AbcdWszFromIpAddress(
|
|
IN IPADDR nboIpAddr,
|
|
OUT WCHAR* wszIpAddress
|
|
);
|
|
|
|
DWORD
|
|
PrependWszIpAddress(
|
|
IN WCHAR** pwsz,
|
|
IN WCHAR* wszIpAddress
|
|
);
|
|
|
|
DWORD
|
|
PrependWszIpAddressToMwsz(
|
|
IN WCHAR** pmwsz,
|
|
IN WCHAR* wszIpAddress
|
|
);
|
|
|
|
DWORD
|
|
PrependDwIpAddress(
|
|
IN WCHAR** pwsz,
|
|
IN IPADDR nboIpAddr
|
|
);
|
|
|
|
DWORD
|
|
PrependDwIpAddressToMwsz(
|
|
IN WCHAR** pmwsz,
|
|
IN IPADDR nboIpAddr
|
|
);
|
|
|
|
#endif // #ifndef _TCPREG_H_
|