mirror of
https://github.com/reactos/reactos.git
synced 2026-06-01 17:00:51 +08:00
[DHCPCSVC] Set the AddressType value for network interfaces
AddressType 0: Static address, DHCP provided address or static address from alternate configuration AddressType 1: Automatic Private IP Address (APIPA)
This commit is contained in:
@@ -605,6 +605,8 @@ void setup_adapter( PDHCP_ADAPTER Adapter, struct client_lease *new_lease ) {
|
||||
RegSetValueExA(hkey, "LeaseTerminatesTime", 0, REG_DWORD, (LPBYTE)&new_lease->expiry, sizeof(DWORD));
|
||||
RegSetValueExA(hkey, "T1", 0, REG_DWORD, (LPBYTE)&new_lease->renewal, sizeof(DWORD));
|
||||
RegSetValueExA(hkey, "T2", 0, REG_DWORD, (LPBYTE)&new_lease->rebind, sizeof(DWORD));
|
||||
DWORD dwAddressType = 0;
|
||||
RegSetValueExA(hkey, "AddressType", 0, REG_DWORD, (LPBYTE)&dwAddressType, sizeof(DWORD));
|
||||
}
|
||||
|
||||
if( !NT_SUCCESS(Status) )
|
||||
@@ -684,6 +686,8 @@ reset_adapter( PDHCP_ADAPTER Adapter) {
|
||||
RegSetValueExA(hkey, "T1", 0, REG_DWORD, (LPBYTE)&new_time, sizeof(DWORD));
|
||||
new_time = cur_time + lease - (lease / 8);
|
||||
RegSetValueExA(hkey, "T2", 0, REG_DWORD, (LPBYTE)&new_time, sizeof(DWORD));
|
||||
DWORD dwAddressType = 0;
|
||||
RegSetValueExA(hkey, "AddressType", 0, REG_DWORD, (LPBYTE)&dwAddressType, sizeof(DWORD));
|
||||
}
|
||||
|
||||
if( Adapter->RouterMib.dwForwardNextHop ) {
|
||||
@@ -1230,6 +1234,7 @@ state_panic(void *ipp)
|
||||
DWORD lease = 0;
|
||||
time_t cur_time, never_time = 0x7FFFFFFF;
|
||||
struct in_addr addr;
|
||||
DWORD dwAddressType = 0;
|
||||
|
||||
note("No DHCPOFFERS received.");
|
||||
|
||||
@@ -1327,6 +1332,7 @@ state_panic(void *ipp)
|
||||
RegSetValueExA(hKey, "LeaseTerminatesTime", 0, REG_DWORD, (LPBYTE)&never_time, sizeof(DWORD));
|
||||
RegSetValueExA(hKey, "T1", 0, REG_DWORD, (LPBYTE)&cur_time, sizeof(DWORD));
|
||||
RegSetValueExA(hKey, "T2", 0, REG_DWORD, (LPBYTE)&cur_time, sizeof(DWORD));
|
||||
RegSetValueExA(hKey, "AddressType", 0, REG_DWORD, (LPBYTE)&dwAddressType, sizeof(DWORD));
|
||||
}
|
||||
}
|
||||
else
|
||||
@@ -1383,6 +1389,8 @@ state_panic(void *ipp)
|
||||
RegSetValueExA(hKey, "LeaseTerminatesTime", 0, REG_DWORD, (LPBYTE)&never_time, sizeof(DWORD));
|
||||
RegSetValueExA(hKey, "T1", 0, REG_DWORD, (LPBYTE)&cur_time, sizeof(DWORD));
|
||||
RegSetValueExA(hKey, "T2", 0, REG_DWORD, (LPBYTE)&cur_time, sizeof(DWORD));
|
||||
dwAddressType = 1;
|
||||
RegSetValueExA(hKey, "AddressType", 0, REG_DWORD, (LPBYTE)&dwAddressType, sizeof(DWORD));
|
||||
}
|
||||
|
||||
goto done;
|
||||
|
||||
Reference in New Issue
Block a user