[NETCFGX]

- Always flush default gateways because pOldConfig->Gw may be NULL if the adapter was DHCP configured

svn path=/branches/wlan-bringup/; revision=54947
This commit is contained in:
Cameron Gutman 2012-01-13 23:39:44 +00:00
parent 390f44b3f9
commit 36be6f512a

View file

@ -3230,28 +3230,25 @@ INetCfgComponentControl_fnApplyRegistryChanges(
}
}
if (pOldConfig->Gw)
dwSize = 0;
if (GetIpForwardTable(NULL, &dwSize, FALSE) == ERROR_INSUFFICIENT_BUFFER)
{
dwSize = 0;
if (GetIpForwardTable(NULL, &dwSize, FALSE) == ERROR_INSUFFICIENT_BUFFER)
DWORD Index;
PMIB_IPFORWARDTABLE pIpForwardTable = (PMIB_IPFORWARDTABLE)CoTaskMemAlloc(dwSize);
if (pIpForwardTable)
{
DWORD Index;
PMIB_IPFORWARDTABLE pIpForwardTable = (PMIB_IPFORWARDTABLE)CoTaskMemAlloc(dwSize);
if (pIpForwardTable)
if (GetIpForwardTable(pIpForwardTable, &dwSize, FALSE) == NO_ERROR)
{
if (GetIpForwardTable(pIpForwardTable, &dwSize, FALSE) == NO_ERROR)
for (Index = 0; Index < pIpForwardTable->dwNumEntries; Index++)
{
for (Index = 0; Index < pIpForwardTable->dwNumEntries; Index++)
if (pIpForwardTable->table[Index].dwForwardIfIndex == pOldConfig->Index &&
pIpForwardTable->table[Index].dwForwardDest == 0)
{
if (pIpForwardTable->table[Index].dwForwardIfIndex == pOldConfig->Index &&
pIpForwardTable->table[Index].dwForwardDest == 0)
{
DeleteIpForwardEntry(&pIpForwardTable->table[Index]);
}
DeleteIpForwardEntry(&pIpForwardTable->table[Index]);
}
}
CoTaskMemFree(pIpForwardTable);
}
CoTaskMemFree(pIpForwardTable);
}
}