зеркало из https://github.com/mozilla/pjs.git
b=354984, patches to build with vista RC1 SDK, r=darin
This commit is contained in:
Родитель
a0a478019a
Коммит
ba3c1f2953
|
@ -52,167 +52,7 @@
|
||||||
#include "nsNotifyAddrListener.h"
|
#include "nsNotifyAddrListener.h"
|
||||||
#include "nsString.h"
|
#include "nsString.h"
|
||||||
|
|
||||||
// Unfortunately, this header file is not available in older SDKs.
|
#include <IPTypes.h>
|
||||||
// #include <IPTypes.h>
|
|
||||||
|
|
||||||
#define MAX_ADAPTER_DESCRIPTION_LENGTH 128 // arb.
|
|
||||||
#define MAX_ADAPTER_NAME_LENGTH 256 // arb.
|
|
||||||
#define MAX_ADAPTER_ADDRESS_LENGTH 8 // arb.
|
|
||||||
|
|
||||||
#define GAA_FLAG_SKIP_ANYCAST 0x0002
|
|
||||||
#define GAA_FLAG_SKIP_MULTICAST 0x0004
|
|
||||||
#define GAA_FLAG_SKIP_DNS_SERVER 0x0008
|
|
||||||
#define GAA_FLAG_SKIP_FRIENDLY_NAME 0x0020
|
|
||||||
|
|
||||||
#define IF_TYPE_SOFTWARE_LOOPBACK 24
|
|
||||||
|
|
||||||
typedef enum {
|
|
||||||
IpPrefixOriginOther = 0,
|
|
||||||
IpPrefixOriginManual,
|
|
||||||
IpPrefixOriginWellKnown,
|
|
||||||
IpPrefixOriginDhcp,
|
|
||||||
IpPrefixOriginRouterAdvertisement
|
|
||||||
} IP_PREFIX_ORIGIN;
|
|
||||||
|
|
||||||
typedef enum {
|
|
||||||
IpSuffixOriginOther = 0,
|
|
||||||
IpSuffixOriginManual,
|
|
||||||
IpSuffixOriginWellKnown,
|
|
||||||
IpSuffixOriginDhcp,
|
|
||||||
IpSuffixOriginLinkLayerAddress,
|
|
||||||
IpSuffixOriginRandom
|
|
||||||
} IP_SUFFIX_ORIGIN;
|
|
||||||
|
|
||||||
typedef enum {
|
|
||||||
IpDadStateInvalid = 0,
|
|
||||||
IpDadStateTentative,
|
|
||||||
IpDadStateDuplicate,
|
|
||||||
IpDadStateDeprecated,
|
|
||||||
IpDadStatePreferred
|
|
||||||
} IP_DAD_STATE;
|
|
||||||
|
|
||||||
typedef struct _IP_ADAPTER_UNICAST_ADDRESS {
|
|
||||||
union {
|
|
||||||
ULONGLONG Alignment;
|
|
||||||
struct {
|
|
||||||
ULONG Length;
|
|
||||||
DWORD Flags;
|
|
||||||
} s;
|
|
||||||
} u;
|
|
||||||
struct _IP_ADAPTER_UNICAST_ADDRESS *Next;
|
|
||||||
SOCKET_ADDRESS Address;
|
|
||||||
|
|
||||||
IP_PREFIX_ORIGIN PrefixOrigin;
|
|
||||||
IP_SUFFIX_ORIGIN SuffixOrigin;
|
|
||||||
IP_DAD_STATE DadState;
|
|
||||||
|
|
||||||
ULONG ValidLifetime;
|
|
||||||
ULONG PreferredLifetime;
|
|
||||||
ULONG LeaseLifetime;
|
|
||||||
} IP_ADAPTER_UNICAST_ADDRESS, *PIP_ADAPTER_UNICAST_ADDRESS;
|
|
||||||
|
|
||||||
typedef struct _IP_ADAPTER_ANYCAST_ADDRESS {
|
|
||||||
union {
|
|
||||||
ULONGLONG Alignment;
|
|
||||||
struct {
|
|
||||||
ULONG Length;
|
|
||||||
DWORD Flags;
|
|
||||||
} s;
|
|
||||||
} u;
|
|
||||||
struct _IP_ADAPTER_ANYCAST_ADDRESS *Next;
|
|
||||||
SOCKET_ADDRESS Address;
|
|
||||||
} IP_ADAPTER_ANYCAST_ADDRESS, *PIP_ADAPTER_ANYCAST_ADDRESS;
|
|
||||||
|
|
||||||
typedef struct _IP_ADAPTER_MULTICAST_ADDRESS {
|
|
||||||
union {
|
|
||||||
ULONGLONG Alignment;
|
|
||||||
struct {
|
|
||||||
ULONG Length;
|
|
||||||
DWORD Flags;
|
|
||||||
} s;
|
|
||||||
} u;
|
|
||||||
struct _IP_ADAPTER_MULTICAST_ADDRESS *Next;
|
|
||||||
SOCKET_ADDRESS Address;
|
|
||||||
} IP_ADAPTER_MULTICAST_ADDRESS, *PIP_ADAPTER_MULTICAST_ADDRESS;
|
|
||||||
|
|
||||||
typedef struct _IP_ADAPTER_DNS_SERVER_ADDRESS {
|
|
||||||
union {
|
|
||||||
ULONGLONG Alignment;
|
|
||||||
struct {
|
|
||||||
ULONG Length;
|
|
||||||
DWORD Reserved;
|
|
||||||
} s;
|
|
||||||
} u;
|
|
||||||
struct _IP_ADAPTER_DNS_SERVER_ADDRESS *Next;
|
|
||||||
SOCKET_ADDRESS Address;
|
|
||||||
} IP_ADAPTER_DNS_SERVER_ADDRESS, *PIP_ADAPTER_DNS_SERVER_ADDRESS;
|
|
||||||
|
|
||||||
typedef enum {
|
|
||||||
IfOperStatusUp = 1,
|
|
||||||
IfOperStatusDown,
|
|
||||||
IfOperStatusTesting,
|
|
||||||
IfOperStatusUnknown,
|
|
||||||
IfOperStatusDormant,
|
|
||||||
IfOperStatusNotPresent,
|
|
||||||
IfOperStatusLowerLayerDown
|
|
||||||
} IF_OPER_STATUS;
|
|
||||||
|
|
||||||
typedef struct _IP_ADAPTER_ADDRESSES {
|
|
||||||
union {
|
|
||||||
ULONGLONG Alignment;
|
|
||||||
struct {
|
|
||||||
ULONG Length;
|
|
||||||
DWORD IfIndex;
|
|
||||||
} s;
|
|
||||||
} u;
|
|
||||||
struct _IP_ADAPTER_ADDRESSES *Next;
|
|
||||||
PCHAR AdapterName;
|
|
||||||
PIP_ADAPTER_UNICAST_ADDRESS FirstUnicastAddress;
|
|
||||||
PIP_ADAPTER_ANYCAST_ADDRESS FirstAnycastAddress;
|
|
||||||
PIP_ADAPTER_MULTICAST_ADDRESS FirstMulticastAddress;
|
|
||||||
PIP_ADAPTER_DNS_SERVER_ADDRESS FirstDnsServerAddress;
|
|
||||||
PWCHAR DnsSuffix;
|
|
||||||
PWCHAR Description;
|
|
||||||
PWCHAR FriendlyName;
|
|
||||||
BYTE PhysicalAddress[MAX_ADAPTER_ADDRESS_LENGTH];
|
|
||||||
DWORD PhysicalAddressLength;
|
|
||||||
DWORD Flags;
|
|
||||||
DWORD Mtu;
|
|
||||||
DWORD IfType;
|
|
||||||
IF_OPER_STATUS OperStatus;
|
|
||||||
} IP_ADAPTER_ADDRESSES, *PIP_ADAPTER_ADDRESSES;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
char String[4 * 4];
|
|
||||||
} IP_ADDRESS_STRING, *PIP_ADDRESS_STRING, IP_MASK_STRING, *PIP_MASK_STRING;
|
|
||||||
|
|
||||||
typedef struct _IP_ADDR_STRING {
|
|
||||||
struct _IP_ADDR_STRING* Next;
|
|
||||||
IP_ADDRESS_STRING IpAddress;
|
|
||||||
IP_MASK_STRING IpMask;
|
|
||||||
DWORD Context;
|
|
||||||
} IP_ADDR_STRING, *PIP_ADDR_STRING;
|
|
||||||
|
|
||||||
typedef struct _IP_ADAPTER_INFO {
|
|
||||||
struct _IP_ADAPTER_INFO* Next;
|
|
||||||
DWORD ComboIndex;
|
|
||||||
char AdapterName[MAX_ADAPTER_NAME_LENGTH + 4];
|
|
||||||
char Description[MAX_ADAPTER_DESCRIPTION_LENGTH + 4];
|
|
||||||
UINT AddressLength;
|
|
||||||
BYTE Address[MAX_ADAPTER_ADDRESS_LENGTH];
|
|
||||||
DWORD Index;
|
|
||||||
UINT Type;
|
|
||||||
UINT DhcpEnabled;
|
|
||||||
PIP_ADDR_STRING CurrentIpAddress;
|
|
||||||
IP_ADDR_STRING IpAddressList;
|
|
||||||
IP_ADDR_STRING GatewayList;
|
|
||||||
IP_ADDR_STRING DhcpServer;
|
|
||||||
BOOL HaveWins;
|
|
||||||
IP_ADDR_STRING PrimaryWinsServer;
|
|
||||||
IP_ADDR_STRING SecondaryWinsServer;
|
|
||||||
time_t LeaseObtained;
|
|
||||||
time_t LeaseExpires;
|
|
||||||
} IP_ADAPTER_INFO, *PIP_ADAPTER_INFO;
|
|
||||||
|
|
||||||
typedef DWORD (WINAPI *GetAdaptersAddressesFunc)(ULONG, DWORD, PVOID,
|
typedef DWORD (WINAPI *GetAdaptersAddressesFunc)(ULONG, DWORD, PVOID,
|
||||||
PIP_ADAPTER_ADDRESSES,
|
PIP_ADAPTER_ADDRESSES,
|
||||||
|
|
|
@ -327,7 +327,7 @@ BOOL SymGetModuleInfoEspecial(HANDLE aProcess, DWORD aAddr, PIMAGEHLP_MODULE aMo
|
||||||
* Not loaded, here's the magic.
|
* Not loaded, here's the magic.
|
||||||
* Go through all the modules.
|
* Go through all the modules.
|
||||||
*/
|
*/
|
||||||
enumRes = _EnumerateLoadedModules(aProcess, callbackEspecial, (PVOID)&aAddr);
|
enumRes = _EnumerateLoadedModules(aProcess, (PENUMLOADED_MODULES_CALLBACK)callbackEspecial, (PVOID)&aAddr);
|
||||||
if (FALSE != enumRes)
|
if (FALSE != enumRes)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
|
@ -377,7 +377,7 @@ BOOL SymGetModuleInfoEspecial64(HANDLE aProcess, DWORD64 aAddr, PIMAGEHLP_MODULE
|
||||||
* Not loaded, here's the magic.
|
* Not loaded, here's the magic.
|
||||||
* Go through all the modules.
|
* Go through all the modules.
|
||||||
*/
|
*/
|
||||||
enumRes = _EnumerateLoadedModules64(aProcess, callbackEspecial64, (PVOID)&aAddr);
|
enumRes = _EnumerateLoadedModules64(aProcess, (PENUMLOADED_MODULES_CALLBACK64)callbackEspecial64, (PVOID)&aAddr);
|
||||||
if (FALSE != enumRes)
|
if (FALSE != enumRes)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
|
|
Загрузка…
Ссылка в новой задаче