764342352153f3d3834eefdf05337ba744211a6d |
|
07-Jul-2016 |
Hugo Benichi <hugobenichi@google.com> |
IpConn metrics: add times to DHCP bound state This patch adds DhcpClientEvent logging for: - time from init state to bound state - time from bound state to bound state when renewing Example: ConnectivityMetricsEvent(12:04:33.353, 0, 0): DhcpClientEvent(wlan0, WaitBeforeStartState, 94ms) ConnectivityMetricsEvent(12:04:35.772, 0, 0): DhcpClientEvent(wlan0, DhcpInitState, 2417ms) ConnectivityMetricsEvent(12:04:35.787, 0, 0): DhcpClientEvent(wlan0, DhcpRequestingState, 15ms) ConnectivityMetricsEvent(12:04:35.793, 0, 0): DhcpClientEvent(wlan0, ConfiguringInterfaceState, 6ms) ConnectivityMetricsEvent(12:04:35.811, 0, 0): DhcpClientEvent(wlan0, InitialBoundState, 2457ms) ConnectivityMetricsEvent(12:05:35.791, 0, 0): DhcpClientEvent(wlan0, DhcpBoundState, 59998ms) ConnectivityMetricsEvent(12:05:35.988, 0, 0): DhcpClientEvent(wlan0, WaitBeforeRenewalState, 196ms) ConnectivityMetricsEvent(12:05:36.003, 0, 0): DhcpClientEvent(wlan0, DhcpRenewingState, 15ms) ConnectivityMetricsEvent(12:05:36.010, 0, 0): DhcpClientEvent(wlan0, RenewingBoundState, 219ms) Change-Id: I2540dd102a6509dff55936e38015265659b20760
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
176ed01a1fdcca5734dcc1e11fc37a2f7363f5f8 |
|
01-Jul-2016 |
Hugo Benichi <hugobenichi@google.com> |
IpConn metrics: add dhcp transition times This patch adds lifetime durations of DhcpClient states to DhcpClientEvents. To record the duration of a state, the event is now recorded when the DhcpClient state machine exits that state. In addition this patch removes event logging of StoppedState, DhcpState and DhcpHaveLeaseState. Change-Id: Ibd37b5e3070f35113b6b45942b1e1ff19c27a90b
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
cfddd6879283860bb4d2cf2972ea086f585a37ec |
|
31-May-2016 |
Hugo Benichi <hugobenichi@google.com> |
Refactor IP connectivity event logging This patch removes static methods for logging IP connectivity events defined in android.net.metrics and replaces them with a single log() instance method defined on IpConnectivityLog. Event constructors are now public also. Every classes logging such events now create an instance of IpConnectivityLog for logging event objects directly instantiated with new. Removing static dependencies allow straightforward testing of logging. This patch also removes the base IpConnectivityEvent class which is not needed any more. Bug: 29035129 Change-Id: I3de700f93f46deaa48a759f938f7d00e1d8bff98
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
e67ec4eb01eb37fa886776dcd77eb066e1241004 |
|
27-May-2016 |
Lorenzo Colitti <lorenzo@google.com> |
Restore DHCP client logging. Bug: 28955598 Change-Id: I2e2684a787061612471830e4d840ce422091bafb
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
d8e1592e641f71cb3bfbc267442cfb9c4cc48625 |
|
26-Apr-2016 |
Erik Kline <ek@google.com> |
Support DHCPv4 rebinding state Bug: 24837343 Change-Id: Id49e1c12ec3b11fedba42bb28348a00cb0b11169
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
acda32c35fc6a30ce11abfddb26ec5052de063f4 |
|
13-May-2016 |
Erik Kline <ek@google.com> |
DHCPv4: lease expiration is fatal, renew failures are not Bug: 24837343 Change-Id: Ib330864f8376b0907390d581b48cff5446b3392b
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
adacedb1a8b10e0e29c7c223251069c8e6ef564e |
|
28-Apr-2016 |
Lorenzo Colitti <lorenzo@google.com> |
Notify success before configuring the IP address. This ensures that IpManager has a complete copy of DHCP state before configuring the IPv4 address. That way, when the netlink notification of the IPv4 address arrives, we are guaranteed to have all DHCP information (including DNS servers and routes) available and we will never send the IPv4 address before the DNS servers. Bug: 27605330 Change-Id: I732424dfe2408be9e40028563e99d610b541e12d
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
9c51583dafdbfeb7e005e12dd646e4395cf7a537 |
|
27-Apr-2016 |
Erik Kline <ek@google.com> |
Merge "IpManager: add a provisioning timeout option" into nyc-dev
|
741b15dc759e8ffc1f9e1f9f120c72c25ce021e5 |
|
26-Apr-2016 |
Erik Kline <ek@google.com> |
IpManager: add a provisioning timeout option Relatedly: remove the provisioning timeout from DhcpClient. Bug: 17733693 Bug: 24837343 Change-Id: I6d5b835b4ca70ba6fd06df359fc2128a0df46252
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
24b6e2bcc88ed6e142eae8ebd11cb90a70da588f |
|
27-Apr-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge changes I8de95add,Ia6f4ccfd into nyc-dev * changes: Remove unused event tags of IpConnectivityEvent Better ConnectivityMetricsEvent printing
|
5df9d729f6c78215f287701d7e136dfc922e2bd3 |
|
25-Apr-2016 |
Hugo Benichi <hugobenichi@google.com> |
Better ConnectivityMetricsEvent printing This patch adds more information printing for IpConnectivity event classes in android.net.metrics. example: ConnectivityMetricsEvent(14:36:35.799, 0, 1026): DhcpClientEvent(wlan0, DhcpRequestingState) ConnectivityMetricsEvent(14:36:35.805, 0, 1026): DhcpClientEvent(wlan0, DhcpHaveAddressState) ConnectivityMetricsEvent(14:36:35.809, 0, 4096): IpManagerEvent(wlan0, PROVISIONING_OK, 155ms) ConnectivityMetricsEvent(14:36:35.810, 0, 1026): DhcpClientEvent(wlan0, DhcpBoundState) ConnectivityMetricsEvent(14:36:35.871, 0, 2048): NetworkEvent(101, NETWORK_CONNECTED, 0ms) ConnectivityMetricsEvent(14:36:35.874, 0, 2051): ValidationProbeEvent(101, PROBE_HTTP:599, 3ms) ConnectivityMetricsEvent(14:36:35.874, 0, 2048): NetworkEvent(101, NETWORK_VALIDATION_FAILED, 0ms) ConnectivityMetricsEvent(14:36:35.928, 0, 3072): DefaultNetworkEvent(0 -> 101, [WIFI], IPv4: false, IPv6: false) ConnectivityMetricsEvent(14:36:37.008, 0, 2051): ValidationProbeEvent(101, PROBE_HTTP:204, 134ms) ConnectivityMetricsEvent(14:36:37.008, 0, 2050): NetworkEvent(101, NETWORK_VALIDATED, 1137ms) Also fixes a couple of event logging issues: - do no record spurious receive DhcpErrorEvent when a network goes down. - add an eventType field to IpManagerEvent instead of using the loggger component tag. Bug: 28204408 Change-Id: Ia6f4ccfd7a0c63a5ccec18825f226c0b5781217b
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
5b76623a0e3fdaa792967375bb4e1e143de1ff03 |
|
06-Apr-2016 |
Erik Kline <ek@google.com> |
Move IPv4 address setting to IpManager Bug: 24837343 Bug: 27605330 Change-Id: I19ac80e45b3e9200f81d1166ac6094fd19aee963
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
c2827857aa99504903d65e9a750fb61f756101de |
|
17-Apr-2016 |
Erik Kline <ek@google.com> |
IpManager,DhcpClient: catch some errors and better logging Bug: 28196843 Change-Id: Ia91e926da569bf9c503ea00e1e0f767d196547da
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
2677b1957b444e2dae5737feee989109b811547c |
|
18-Apr-2016 |
Hugo Benichi <hugobenichi@google.com> |
Fix spurious DHCP parse error logging. This patch moves the event logging of DHCP response packet parse errors to DHCPClient in a single place. It also logs receive IO errors as DHCPErrors instead of DHCPClientEvents. BUG=28197345 Change-Id: I7ad666cff4d8b97915880477347fbb3f588fdb2a
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
67530d6585b9e0d6c63d09cc23e8061b234fef98 |
|
13-Apr-2016 |
Hugo Benichi <hugobenichi@google.com> |
Add volatile qualifier to boolean variable DHCP receive thread was spinning on a boolean variable to know when to stop. That variable had no volatile qualifier, potentially preventing the thread from stopping at all. Without a volatile qualifier, the reads and writes in halt() could be reordered in such a way that the running thread is interrupted before mStopped is set t true. Also, the optimizer could decide to hoist mStopped in a register inside the running thread, preventing the loop from exiting. Change-Id: I5b30c1247808114f0e5b46e230978ee7ea18ab8e
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
a5265e47d8c56042d53abd95c4044babbd36e693 |
|
25-Mar-2016 |
Erik Kline <ek@google.com> |
Merge "Request vendor info option (43) to get metered hint" into nyc-dev
|
55618be44c5d2a7db3cf23881cace15108f07557 |
|
19-Feb-2016 |
Pierre Imai <imaipi@google.com> |
Add initial connectivity metrics handling. Adds initial support for IP connectivity metrics collection (DHCP client, IP reachability monitor, network monitor, connectivity service). Change-Id: If9a0455f2a34aa9abea90f9c1b38e4d895dc1a72
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
1d511ab13d7cf01b84f68bd8b858919320d78ad3 |
|
24-Mar-2016 |
Erik Kline <ek@google.com> |
Request vendor info option (43) to get metered hint Bug: 26241591 Change-Id: I688029826a79f9cbf0116fb197f82026980788af
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
f188d41fa2876a4c77586656bce06cac10d08942 |
|
02-Feb-2016 |
Joe Onorato <joeo@google.com> |
Turn down the logging a little bit and don't do a log wrapper function. Change-Id: I109f04c2c2299f26e21b076df3a935ce2d356bdf
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
a2a9ab947f248f35bafb9dd74b46016c3aa31820 |
|
19-Feb-2016 |
Lorenzo Colitti <lorenzo@google.com> |
Add a MessageUtils class to convert int constants to strings. am: d2457a3ee3 * commit 'd2457a3ee39ea55ed8e302bd93feede793cb5055': Add a MessageUtils class to convert int constants to strings.
|
d2457a3ee39ea55ed8e302bd93feede793cb5055 |
|
17-Feb-2016 |
Lorenzo Colitti <lorenzo@google.com> |
Add a MessageUtils class to convert int constants to strings. This class uses reflection to find accessible static integer members in a specified list of classes and returns a SparseArray mapping the integers to their names. This will allow us to replace various 400-line switch statements with a simple array access. Change-Id: I3607e6389a423cde0bd83270c00b3c863ae1bb29
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
7651b21fe94dc081276a7bbff72f8c37a70f1b94 |
|
18-Feb-2016 |
Erik Kline <ek@google.com> |
{,Base}DhcpStateMachine is no more am: efa4209fe0 * commit 'efa4209fe022d007f48edc3c4feaef00a9865cb5': {,Base}DhcpStateMachine is no more
|
efa4209fe022d007f48edc3c4feaef00a9865cb5 |
|
17-Feb-2016 |
Erik Kline <ek@google.com> |
{,Base}DhcpStateMachine is no more Bug: 26991160 Change-Id: I21f8c30627bf2a7fbcd5b4d5f1f1ad1a2dda759b
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
907b255ebfb8dd9cfb6c1960a7f3b20598f26d34 |
|
17-Feb-2016 |
Erik Kline <ek@google.com> |
Remove references to BaseDhcpStateMachine and DhcpStateMachine am: 29a215268d * commit '29a215268dfa18f5023dc3c06b33db68e91ae316': Remove references to BaseDhcpStateMachine and DhcpStateMachine
|
29a215268dfa18f5023dc3c06b33db68e91ae316 |
|
17-Feb-2016 |
Erik Kline <ek@google.com> |
Remove references to BaseDhcpStateMachine and DhcpStateMachine Bug: 26991160 Change-Id: I3742780a4e5121c163d9d1380951e25edaba19f3
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
09bf13574e8bb2a5737553d316dba7ca879a35cf |
|
11-Feb-2016 |
Erik Kline <ek@google.com> |
Duplicate DhcpStateMachine public constants into DhcpClient This is so we can ultimately delete DhcpStateMachine altogether. Bug: 24837343 Bug: 26991160 Change-Id: If116639e5f72c97cfc67f748dc5f6433dccd9cf0
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
3b74289fdfb0ca2d3078a52b9385127dec93fdf9 |
|
11-Feb-2016 |
Erik Kline <ek@google.com> |
Duplicate DhcpStateMachine public constants into DhcpClient This is so we can ultimately delete DhcpStateMachine altogether. Bug: 24837343 Bug: 26991160 Change-Id: If116639e5f72c97cfc67f748dc5f6433dccd9cf0
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
bda01cc5e37c7199d16825f3ac0b534e87a27aa0 |
|
09-Dec-2015 |
Lorenzo Colitti <lorenzo@google.com> |
Fix canceling renew alarms. 1. Entering DhcpBoundState cancels the renew alarm, but at that point the renew alarm is guaranteed not to have been scheduled. This is harmless, but results in an "unknown listener" message in the AlarmManager logs. 2. We don't cancel the renew alarm when exiting DhcpBoundState. This is also harmless, because that alarm does nothing except in DhcpBoundState, and we cancel it whenever we enter DhcpBoundState. But canceling it on exit is more correct. Change-Id: I60dfcf00f243253b81b8906540e0a6218a7a489c
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
9d3aadb24778cc36a350a04b088d2ed7ee3790e1 |
|
02-Dec-2015 |
Lorenzo Colitti <lorenzo@google.com> |
Add a new WakeupMessage class and use it in two places. This is useful when using the new AlarmManager direct callback interface to wake up the system and request that an object whose API consists of messages (such as a StateMachine) perform some action. In this situation, using AlarmManager.onAlarmListener by itself will wake up the system to send the message, but does not guarantee that the system will be awake until the target object has processed it. This is because as soon as the onAlarmListener sends the message and returns, the system is free to go to sleep again. Bug: 20157436 Bug: 25823676 Change-Id: Idff20029d287f26347441a2523b7fb20eda6a8b0
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
831204c651b43631d6dc1d7168863eb7cfa71683 |
|
22-Nov-2015 |
Lorenzo Colitti <lorenzo@google.com> |
Switch the DHCP client to the new AlarmManager callback interface Bug: 24224067 Bug: 25823676 Change-Id: I456984a2f6243f92edb63b8599d861627e2de1cf
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
e5f11cd6cc11efed1f33e47252e737b459ea33ce |
|
22-Nov-2015 |
Lorenzo Colitti <lorenzo@google.com> |
Refactor alarm setting code in preparation for switch to callback Bug: 25823676 Change-Id: Id4d1031b5bd3a7f041c32ad4ac9384e045b385e8
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
7611f1cdb4ef3bedc1cf1ce59ad3671f4c454549 |
|
29-Oct-2015 |
Lorenzo Colitti <lorenzo@google.com> |
Don't crash if a DHCP server doesn't send the server ID option. This violates a MUST in RFC2131, but apparently some implementations don't know or care. Bug: 25343517 Change-Id: I80459b58ffe231e7ed64e77bafa157a96b745149
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
4e4d59eeef86fa8560d35c00168869b0a066f962 |
|
10-Sep-2015 |
Lorenzo Colitti <lorenzo@google.com> |
Connect the DHCP UDP socket to the server. This makes it so that the socket cannot receive datagrams from anybody except the DHCP server. This does not improve security, because we never read from the UDP socket anyway, but it does make ListeningPortsTest pass. Bug: 23906864 Bug: 23933386 Change-Id: Ib090273a417f7eb2ac1ee3309260249b72fb8345
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
496906ee7008b72619f230c65f103533d4d2d68a |
|
16-Sep-2015 |
Erik Kline <ek@google.com> |
Improve logging of DHCP parse errors using exceptions. Bug: 23975855 Change-Id: I62464b92f0bb568e57bf5e1a63bc75f22c75aac1
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
9795a1d8b9094bd571f653b8de0c531d4466fe46 |
|
24-Sep-2015 |
Lorenzo Colitti <lorenzo@google.com> |
Give the DhcpClient alarm broadcasts foreground priority. Bug: 24265658 Bug: 24224067 Change-Id: I375097e7957643efb4bc0bb81318b13d9b9c82c1
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
31e19f34f56a01a7b4133cd1dccf13b18b469ac7 |
|
11-Aug-2015 |
Lorenzo Colitti <lorenzo@google.com> |
Don't attempt to stop the receive thread if we never started it. If socket initialization fails, DhcpState#exit will call mReceiveThread#stop and crash the system with an NPE. Make sure we don't do that if mReceiveThread is null, and properly null it out when exiting. Bug: 23088314 Change-Id: I4378d8280f9d8588f5eaa8bd7ade61beab1c3ce2
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
5bc64b847ac7490a93caf6b032b849aa75298db4 |
|
04-Jun-2015 |
Lorenzo Colitti <lorenzo@google.com> |
Correctly time out CMD_START_DHCP. WifiStateMachine expects CMD_START_DHCP to time out after 30-40 seconds. Currently, DhcpClient imposes timeouts on DhcpInitState and on DhcpRequestState, but not on the time it takes to get to from CMD_START_DHCP to DhcpBoundState. So in theory the client could oscillate between DhcpInitState and DhcpRequestState and never time out. Fix this by introducing a new oneshot timer that is set when DHCP starts and is cancelled when it succeeds. CMD_RENEW_DHCP does not need this because it's implemented using only one state, so the oneshot timeout can be implemented using the state timeout. Bug: 19704592 Change-Id: I6a5847a3dee23a2692237b8f3b3b0f8049da5140
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
be843e8394cd4dee631d4558524241870f577fce |
|
04-Jun-2015 |
Lorenzo Colitti <lorenzo@google.com> |
Actually close sockets when stopping the receive thread. Contrary to the expectations of the code, IoUtils.closeQuietly() does not unblock system calls. So mReceiveThread.halt() was not actually stopping the receive thread. This wasn't actually a problem, because after "stopping" the receive thread, either the interface would go down (interrupting the previous receive thread with ENETDOWN), or a packet would arrive to both the old and new receive threads, stopping the old one. But the lack of a "stopping receive thread" message at the expected time was confusing. While I'm at it, also add the string for CMD_TIMEOUT. Bug: 19704592 Change-Id: I74732429118af780453028898148519b294fa9d3
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
3a40b0deabe95b74d7eb3d4afbef09c34012a660 |
|
03-Jun-2015 |
Lorenzo Colitti <lorenzo@google.com> |
Make RenewingState time out as well. Bug: 19704592 Change-Id: I0759a98911a8c0059936916db8db459b7d66bc00
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
48f9c731ff7d44e5c13e2a5574d56207694d8946 |
|
02-Jun-2015 |
Lorenzo Colitti <lorenzo@google.com> |
Remove the IPv4 address from the interface when DHCP fails. Bug: 19704592 Change-Id: I9b96cdcfc7c9442b3f8d6797aca63559ed4bdb9b
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
8f602cdd38f7345eb0a8ec34ae4e51a333edce6c |
|
02-Jun-2015 |
Lorenzo Colitti <lorenzo@google.com> |
Merge "Fix DHCP lease time parsing." into mnc-dev
|
d59aa84fdaea9647f7de82c3b85afc92a3fdfee1 |
|
02-Jun-2015 |
Erik Kline <ek@google.com> |
pass a defensive copy of DhcpResults Also: correct state transition handling in DhcpBoundState#enter(). Bug: 20451261 Change-Id: I3be50f6b1b3fae179d6fff7ca8ae1d687caa3221
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
d973537ee1bd013b4233d3369d66821e124a2e65 |
|
02-Jun-2015 |
Lorenzo Colitti <lorenzo@google.com> |
Fix DHCP lease time parsing. Currently we treat a lease time larger than 2**31-1 as a negative value, which causes DhcpClient to attempt to renew its IP address constantly. Fix this by properly handling large and infinite lifetimes, and while we're at it, impose a minimum lease time of 60 seconds. Bug: 21352084 Change-Id: If62c9efeffad6222e2fe0c110f77d0e4c70de96d
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
82babcd83a568f9e938bf8b6b3b86b65e8b30e1f |
|
26-May-2015 |
Lorenzo Colitti <lorenzo@google.com> |
Specify more information in DhcpClient PendingIntents. - Specify the package name. This provides a bit of security, but not much since the package is "android". - Specify the interface name so we can run more than one client at a time. Bug: 21395858 Bug: 19704592 Change-Id: I91c9ea15285b36628b6aef0b975c16a0b08d061e
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
644f41368f9eddd475fa9c5dddc7ceac5722a3a8 |
|
24-Apr-2015 |
Etan Cohen <etancohen@google.com> |
Merge commit '4cb5d80' into merge2
|
a94929ba9dc31d5e8dd797c9b48cb830b9276485 |
|
22-Apr-2015 |
Lorenzo Colitti <lorenzo@google.com> |
Log DHCP replies that we can't parse. Bug: 19704592 Bug: 20335221 Change-Id: I73def02a08345bd96f45cb970f9f251e6d5df2db
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
3e979321a5d96b9e2688f67ef0f936602c0f7e5a |
|
21-Apr-2015 |
Lorenzo Colitti <lorenzo@google.com> |
Set the secs field in the BOOTP header. We mostly follow RFC 2131, which says that secs is the number of seconds "since client began address acquisition or renewal process", and thus set secs to zero on renew. This is different from our current behaviour, which keeps on counting without resetting secs to zero on renew. Bug: 19704592 Change-Id: Ifbb7644094c579be626ffb698eee87047425dbf0
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
f5c17221d4ffc0d93063913aba37eaa1ee6f37a6 |
|
31-Mar-2015 |
Lorenzo Colitti <lorenzo@google.com> |
Don't log errors if the receive thread is stopped. Change-Id: I75ddc9b68f0a61a9a7a78026ed97a8a7c5109cc3
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|
a071edce46fa3d8d539c0d807b77147e184e5a51 |
|
09-Mar-2015 |
Lorenzo Colitti <lorenzo@google.com> |
DHCP: Add a Java DHCP client. The behaviour of the client is intended to mirror the behaviour of the current DhcpStateMachine + dhcpcd combination, except it does not store leases across network changes. Bug: 19704592 Change-Id: I110b58003da2d8293059d48a0181e16f7f7f145c
/frameworks/base/services/net/java/android/net/dhcp/DhcpClient.java
|