mirror of
https://github.com/SoftEtherVPN/SoftEtherVPN.git
synced 2025-07-12 10:44:58 +03:00
Cedar: DHCP server now assigns static IPv4 address, if present in user note
This works for all VPN protocols. In SessionMain(): for DHCPDISCOVER and DHCPREQUEST frames, write the static IP address (which is retrieved from the user notes) in the SIADDR field of DHCPHEADER. In VirtualDhcpServer(): for DHCPDISCOVER and DHCPREQUEST frames, read the static IP address from the SIADDR field of DHCPHEADER and assign it to the client.
This commit is contained in:
@ -514,9 +514,11 @@ DHCP_LEASE *SearchDhcpPendingLeaseByMac(VH *v, UCHAR *mac);
|
||||
DHCP_LEASE *SearchDhcpLeaseByIp(VH *v, UINT ip);
|
||||
DHCP_LEASE *SearchDhcpPendingLeaseByIp(VH *v, UINT ip);
|
||||
UINT ServeDhcpDiscover(VH *v, UCHAR *mac, UINT request_ip);
|
||||
UINT ServeDhcpDiscoverEx(VH *v, UCHAR *mac, UINT request_ip, bool is_static_ip);
|
||||
UINT GetFreeDhcpIpAddress(VH *v);
|
||||
UINT GetFreeDhcpIpAddressByRandom(VH *v, UCHAR *mac);
|
||||
UINT ServeDhcpRequest(VH *v, UCHAR *mac, UINT request_ip);
|
||||
UINT ServeDhcpRequestEx(VH *v, UCHAR *mac, UINT request_ip, bool is_static_ip);
|
||||
void VirtualDhcpSend(VH *v, UINT tran_id, UINT dest_ip, UINT dest_port,
|
||||
UINT new_ip, UCHAR *client_mac, BUF *b, UINT hw_type, UINT hw_addr_size);
|
||||
void VLog(VH *v, char *str);
|
||||
@ -587,7 +589,4 @@ void NnDeleteOldestNatSessionIfNecessary(NATIVE_NAT *t, UINT ip, UINT protocol);
|
||||
|
||||
void NnSetSecureNatTargetHostname(char *name);
|
||||
|
||||
|
||||
#endif // VIRTUAL_H
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user