diff options
author | Xiao Ma <xiaom@google.com> | 2019-07-24 16:27:50 +0900 |
---|---|---|
committer | Xiao Ma <xiaom@google.com> | 2019-12-11 11:26:49 +0900 |
commit | 859ceabd04daece392d42d37dbc2092cb88996f1 (patch) | |
tree | 2a2adec6473fee85f7aff6971238eb58beaff56e /src/android/net/dhcp/DhcpPacket.java | |
parent | 762f239387423bf2250139f49972d2afa14c7428 (diff) |
Add Rapid Commit option support in DHCP Server side.
Bug:136216415
Test: atest FrameworksNetTests NetworkStackTests
Test: atest NetworkStackIntegrationTests
Test: manual tethering
Change-Id: I0f9483c72374bab271eb18549a1a41812f32f2dd
Diffstat (limited to 'src/android/net/dhcp/DhcpPacket.java')
-rw-r--r-- | src/android/net/dhcp/DhcpPacket.java | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/android/net/dhcp/DhcpPacket.java b/src/android/net/dhcp/DhcpPacket.java index 5ab769b..c5700b3 100644 --- a/src/android/net/dhcp/DhcpPacket.java +++ b/src/android/net/dhcp/DhcpPacket.java @@ -1179,7 +1179,7 @@ public abstract class DhcpPacket { "No DHCP message type option"); case DHCP_MESSAGE_TYPE_DISCOVER: newPacket = new DhcpDiscoverPacket(transactionId, secs, relayIp, clientMac, - broadcast, ipSrc); + broadcast, ipSrc, rapidCommit); break; case DHCP_MESSAGE_TYPE_OFFER: newPacket = new DhcpOfferPacket( @@ -1196,7 +1196,8 @@ public abstract class DhcpPacket { break; case DHCP_MESSAGE_TYPE_ACK: newPacket = new DhcpAckPacket( - transactionId, secs, broadcast, ipSrc, relayIp, clientIp, yourIp, clientMac); + transactionId, secs, broadcast, ipSrc, relayIp, clientIp, yourIp, clientMac, + rapidCommit); break; case DHCP_MESSAGE_TYPE_NAK: newPacket = new DhcpNakPacket( @@ -1238,7 +1239,6 @@ public abstract class DhcpPacket { newPacket.mT2 = T2; newPacket.mVendorId = vendorId; newPacket.mVendorInfo = vendorInfo; - newPacket.mRapidCommit = rapidCommit; if ((optionOverload & OPTION_OVERLOAD_SNAME) == 0) { newPacket.mServerHostName = serverHostName; } else { @@ -1330,9 +1330,8 @@ public abstract class DhcpPacket { short secs, byte[] clientMac, boolean broadcast, byte[] expectedParams, boolean rapidCommit) { DhcpPacket pkt = new DhcpDiscoverPacket(transactionId, secs, INADDR_ANY /* relayIp */, - clientMac, broadcast, INADDR_ANY /* srcIp */); + clientMac, broadcast, INADDR_ANY /* srcIp */, rapidCommit); pkt.mRequestedParams = expectedParams; - pkt.mRapidCommit = rapidCommit; return pkt.buildPacket(encap, DHCP_SERVER, DHCP_CLIENT); } @@ -1372,10 +1371,10 @@ public abstract class DhcpPacket { Inet4Address requestClientIp, byte[] mac, Integer timeout, Inet4Address netMask, Inet4Address bcAddr, List<Inet4Address> gateways, List<Inet4Address> dnsServers, Inet4Address dhcpServerIdentifier, String domainName, String hostname, boolean metered, - short mtu) { + short mtu, boolean rapidCommit) { DhcpPacket pkt = new DhcpAckPacket( transactionId, (short) 0, broadcast, serverIpAddr, relayIp, requestClientIp, yourIp, - mac); + mac, rapidCommit); pkt.mGateways = gateways; pkt.mDnsServers = dnsServers; pkt.mLeaseTime = timeout; |