summaryrefslogtreecommitdiff
path: root/src/android/net/dhcp/DhcpServer.java
diff options
context:
space:
mode:
authorTreehugger Robot <treehugger-gerrit@google.com>2020-03-30 04:23:55 +0000
committerMark Chien <markchien@google.com>2020-04-10 10:05:01 +0000
commitfd1649fc1801a201af30ef03f7bf33c43085ee8b (patch)
tree3adc8be7c44b54bc1af74a4969d17eb75fa2d024 /src/android/net/dhcp/DhcpServer.java
parent6fb2a069f996e86c31998e0e0088cba5d311c7db (diff)
Support specific client address configuration
If specific config "clientAddr" is set, the DHCP server will only offer "clientAddr". This is for peer-to-peer use case. If there are multiple clients for which "clientAddr" is already in use, dhcp server will not offer other addresses to clients. Bug: 141256482 Test: manual atest NetworkStackNextTests Merged-In: I96bc24a9c30bfc48dff38c3c4456085694fd381c Change-Id: I96bc24a9c30bfc48dff38c3c4456085694fd381c
Diffstat (limited to 'src/android/net/dhcp/DhcpServer.java')
-rw-r--r--src/android/net/dhcp/DhcpServer.java7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/android/net/dhcp/DhcpServer.java b/src/android/net/dhcp/DhcpServer.java
index 064aa5d..429b10c 100644
--- a/src/android/net/dhcp/DhcpServer.java
+++ b/src/android/net/dhcp/DhcpServer.java
@@ -205,8 +205,8 @@ public class DhcpServer extends IDhcpServer.Stub {
@NonNull SharedLog log, @NonNull Clock clock) {
return new DhcpLeaseRepository(
DhcpServingParams.makeIpPrefix(servingParams.serverAddr),
- servingParams.excludedAddrs,
- servingParams.dhcpLeaseTimeSecs * 1000, log.forSubComponent(REPO_TAG), clock);
+ servingParams.excludedAddrs, servingParams.dhcpLeaseTimeSecs * 1000,
+ servingParams.clientAddr, log.forSubComponent(REPO_TAG), clock);
}
@Override
@@ -351,7 +351,8 @@ public class DhcpServer extends IDhcpServer.Stub {
mLeaseRepo.updateParams(
DhcpServingParams.makeIpPrefix(mServingParams.serverAddr),
params.excludedAddrs,
- params.dhcpLeaseTimeSecs);
+ params.dhcpLeaseTimeSecs,
+ params.clientAddr);
cb = pair.second;
break;