OSDN Git Service

Fail if the interface is not available when starting
authorErik Kline <ek@google.com>
Fri, 2 Mar 2018 07:51:13 +0000 (16:51 +0900)
committerErik Kline <ek@google.com>
Mon, 5 Mar 2018 10:29:26 +0000 (19:29 +0900)
commitb152cd0aa4f333b721615bb17773b35a989245fb
treec23e80496ccff661c66649af3ff29c2908ffcce0
parent1451124f86c70b70eeb6908dd9a8248f9e8e2ea6
Fail if the interface is not available when starting

Addresses a long-standing TODO.  Now, when calling IpClient's
startProvisioning(), the interface has to be available (i.e.
InterfaceParams#getByName() must return non-null).

Also:
    - add a test
    - refactor for testability
    - delete some constructors no longer used
    - properly handle passed-in null IpClient.Callback
    - some more IpManager -> IpClient renaming
    - permit recording metrics before starting a provisioning
      attempt (logging immediate errors) without Log.wtf().

Test: as follows
    - built
    - flashed
    - booted
    - runtest frameworks/opt/net/wifi/tests/wifitests/runtests.sh passes
    - runtest frameworks-net passes
    - basic WiFi IpClient connections works fine
Bug: 62476366
Bug: 73487570
Change-Id: Ic83ad2a65637277dcb273feb27b2d1bb7a11eb2b
core/java/android/net/metrics/IpManagerEvent.java
services/net/java/android/net/ip/IpClient.java
services/net/java/android/net/ip/IpManager.java
tests/net/java/android/net/ip/IpClientTest.java [moved from tests/net/java/android/net/ip/IpManagerTest.java with 80% similarity]