Commit Graph

567 Commits

Author SHA1 Message Date
TreeHugger Robot
abc015499a Merge "DO NOT MERGE - qt-qpr1-dev-plus-aosp-without-vendor@5915889 into stage-aosp-master" into stage-aosp-master 2019-10-31 18:38:40 +00:00
Mark Chien
259fdbb0b3 Merge "[Tether05] Migrate UpstreamNetworkMonitor into module" 2019-10-31 13:05:32 +00:00
Xin Li
6f48900f50 DO NOT MERGE - qt-qpr1-dev-plus-aosp-without-vendor@5915889 into stage-aosp-master
Bug: 142003500
Change-Id: If5056a73ede668b0048ca107b686413695e5b3b6
2019-10-30 14:33:01 -07:00
markchien
d020e55723 [Tether05] Migrate UpstreamNetworkMonitor into module
Bug: 136040414
Test: -build, flash, boot
      -atest TetheringTests
      -atest FrameworksNetTests

Change-Id: Ic1d9deecb66aaba0a4264a57f2e6579ea491ac9b
2019-10-30 12:42:42 +00:00
Mark Chien
634c6a512f Merge "[Tether03] Migrate IpServer into module" 2019-10-25 06:41:49 +00:00
Chiachang Wang
0825500b27 Merge "Extend netlink class to fit the data structure" 2019-10-24 07:31:53 +00:00
markchien
08cc03051a [Tether03] Migrate IpServer into module
Add IpServer which is used to serve ip configuration, dhcp, dns proxy
and nat for downstream interface.

Bug: 136040414
Test: -build, flash, boot
      -atest TetheringTests
      -atest FrameworksNetTests

Change-Id: I23652ae0b9509abe7d38da96d523eb22ab00a343
2019-10-24 14:20:52 +08:00
Chiachang Wang
5d62167efc Extend netlink class to fit the data structure
In order to get the tcp_info via netlink socket from kernel,
NetworkStack needs to use netlink class to pack and parse the
InetDiagReq. Current design hardcodes ididag_ext field in
InetDiagReqV2. The structure is also not allowed to take null
id to not to specify certain socket. Update the constructor and
backward support exising constructor.

Bug: 136162280
Test: atest FrameworksNetTests NetworkStackTests
Change-Id: Id66da1797da183ae3d99073f80bad1df929946dc
2019-10-23 21:52:36 +09:00
Jimmy Chen
8a9a9adaeb Merge "p2p: mirgrate p2p into tethering modes" 2019-10-18 05:42:31 +00:00
Jimmy Chen
bcd86d0c9b p2p: mirgrate p2p into tethering modes
Bug: 137602441
Bug: 139783330
Test: atest FrameworksNetTests
Test: atest FrameworksWifiTests
Test: CtsVerifier - Wi-Fi Direct
Test: Enable hotspot when P2P GO is running
      * P2P GO is terminated
      * hotspot is running
Test: Enable P2P GO when hotspot is running
      * hotspot is intact
      * P2P GO could not be launched
Test: Verify P2P functions with legacy WifiP2pService

Change-Id: Icb2e2b106ae52b19af29b7a1ebc55d3cdf80db9c
2019-10-08 14:37:19 +08:00
Jeffrey Vander Stoep
48547ce1d0 Merge "Fix FD leak in ConnectivityManager.getConnectionOwnerUid" am: 20bdc26698
am: 0b6d974713

Change-Id: I5d3b329018a1f640f086887ec222c5cf7e2975b4
2019-09-30 12:49:49 -07:00
Jeff Vander Stoep
59940afb16 Fix FD leak in ConnectivityManager.getConnectionOwnerUid
Add unit tests to verify that bug has been fixed.

Re-enable testGetConnectionOwnerUid() unit tests in presubmit. These
were disabled due to test flakiness caused by expected failures passing
as a result of other sockets on the system. This is fixed by checking
that failures do not have the UID of the calling process instead of
INVALID_UID since previously some Qualcomm telephony sockets were
causing lookup successes.

Test: atest InetDiagSocketTest#testGetConnectionOwnerUid
Test: ls -1 /proc/<pid of system_server>/fd | wca
Test: atest --generate-new-metrics 200 InetDiagSocketTest#testGetConnectionOwnerUid
   To verify flakes have been cleaned up.
Bug: 141603906
Bug: 141459241
Change-Id: Ib76674f10e4bd24952c557bac7b9c65fba42fdb2
2019-09-30 12:46:03 +02:00
Remi NGUYEN VAN
94b247370a Merge "Move NetworkStack AIDLs to NetworkStack folder" am: 1c3acc8f8a
am: 7569988e6f

Change-Id: Icbddddc52bfe2913b3c980d42f47cd885b5b3587
2019-09-24 19:25:21 -07:00
Remi NGUYEN VAN
ee27a94773 Move NetworkStack AIDLs to NetworkStack folder
The AIDLs and ipmemorystore-client were already statically linked
libraries, so their location in the source tree does not change anything
(they were already built into the NetworkStack module and the
framework). It makes more sense to have them in the NetworkStack module
folder however, as changes to these files will be released with the same
cadence as the module, not the framework.

Bug: 139106271
Test: built, flashed, WiFi working
Change-Id: I886acae850a5e8a9a7bc3ca8aac8690d681ca2cd
2019-09-05 17:55:48 +09:00
Remi NGUYEN VAN
de500155f1 Merge "Refactor Module connectors for testing" am: 288c75d055
am: c8cc5781e0

Change-Id: I3ad283828d42e88354f5a25eb47cbb6b66ae6236
2019-09-01 21:12:26 -07:00
Remi NGUYEN VAN
91e39d9a45 Refactor Module connectors for testing
Move getModuleServiceIntent to a dependencies object to allow clients to
create test versions of the class that return test intents and avoid the
permissions checks.

Refactor dependencies in NetworkStackClient in a dependencies object for
the same test purposes.

Test: manual: built, booted, WiFi working
Change-Id: I9b115f4cd26f36eee5c669226ea6296b8d7d2d06
2019-08-30 15:15:34 +09:00
Remi NGUYEN VAN
341c0f026a Fix spacing in NetworkStackClient
This makes the file match other branches, which should eliminate merge
conflicts.

Test: m
Merged-In: I673581b0067b9a3f72dd68a3ab622c18183ebd2e
Change-Id: Ida685159cb4afd6eceac6941e7126886518c8570
2019-08-28 10:59:34 +09:00
Roshan Pius
15b5a03ef6 NetworkStackClient: Refactor network stack process interaction
Refactor NetworkStackClient class to move the module service binding &
network stack process death monitoring to a separate class. This class
will only instantiated in the SystemServer process.
The new class |SystemServerToNetworkStackConnector| will be used from
the client classes corresponding to each module running on the network
stack process (NetworkStackClient, WifiStackClient, etc)

This has 2 main advantages:
a) Reduces code duplication (Otherwise the various Client classes need
to replicate the service bindding & process death monitoring).
b) Central crash recovery for the network stack process (Otherwise the
various Client classes will trigger multiple recovery for a single
network stack process crash).

Bug: 135679762
Test: Device boots up & connects to wifi networks.
(cherry-picked from 7e6f5f5e08 & applied
aosp/977048)

Change-Id: I673581b0067b9a3f72dd68a3ab622c18183ebd2e
Merged-In: I673581b0067b9a3f72dd68a3ab622c18183ebd2e
2019-08-23 10:40:07 -07:00
Roshan Pius
b51c428f41 NetworkStackClient: Refactor network stack process interaction
Refactor NetworkStackClient class to move the module service binding &
network stack process death monitoring to a separate class. This class
will only instantiated in the SystemServer process.
The new class |SystemServerToNetworkStackConnector| will be used from
the client classes corresponding to each module running on the network
stack process (NetworkStackClient, WifiStackClient, etc)

This has 2 main advantages:
a) Reduces code duplication (Otherwise the various Client classes need
to replicate the service bindding & process death monitoring).
b) Central crash recovery for the network stack process (Otherwise the
various Client classes will trigger multiple recovery for a single
network stack process crash).

Bug: 135679762
Test: Device boots up & connects to wifi networks.
Change-Id: I673581b0067b9a3f72dd68a3ab622c18183ebd2e
Merged-In: I673581b0067b9a3f72dd68a3ab622c18183ebd2e
(cherry picked from commit 7e6f5f5e08)
2019-08-23 12:18:52 +09:00
Remi NGUYEN VAN
5833474d58 Merge "Fix interfaceVersion in DhcpServerCallbacks"
am: e921001f2d

Change-Id: I5e917252cc3632a823d3912094066f96597da3ae
2019-08-08 06:02:06 -07:00
Remi NGUYEN VAN
5488c56b98 Fix interfaceVersion in DhcpServerCallbacks
The getInterfaceVersion method was missed when freezing the AIDL
interface version.
This causes Q devices to return 0 instead of 3 on this interface.

Bug: 139110717
Test: toggle tethering, dumpsys network_stack version
Change-Id: If587cc9ead4191b9c2ad2ae65473bd89e7c37b5c
2019-08-08 17:45:24 +09:00
Remi NGUYEN VAN
fe1ad3d0b8 Merge "Fix leak of DhcpServer on tethering stop error" am: 7e5a5a6983
am: 7afb36786c

Change-Id: Ie73481e8d91ce43e4939f8c31a9ce431e382c6d9
2019-06-25 01:33:52 -07:00
Remi NGUYEN VAN
6dcffa0c77 Fix leak of DhcpServer on tethering stop error
Tactical, minimal fix to make sure the DhcpServer is stopped when
disabling tethering. The current code may throw if the interface is gone
when calling mNMService.setInterfaceConfig() on teardown. Make sure DHCP
is stopped regardless of what happens.

A longer term fix will be to figure out the right flow to teardown the
interface and avoid errors on setInterfaceConfig().

Bug: 124520692
Test: Manual: no more socket leaked when stopping USB tethering
Change-Id: Ib87d89a2e5fdb64b8f3dfae48d82c970f3ae6161
2019-06-24 23:28:06 +09:00
Roshan Pius
beec6d629a Merge "NetworkStackClient: Allow modules with network_stack uid" am: 891422900d
am: e4b2d05705

Change-Id: I63c6ff6e0aa8255d45165fb1d607aa21f9934fcc
2019-06-18 21:31:08 -07:00
Roshan Pius
4c854cfb8e NetworkStackClient: Allow modules with network_stack uid
The wifi service will start running with network_stack uid, so allow
modules with the same uid to use the network stack interfaces.

Note: Only modules signed with the same certificate (same as network_stack
APK) can share the uid, so this is restricted to Google signed modules.

Bug: 113174748
Test: Local wifi stack testing
Change-Id: I83263770e5c17dd28e4423e46d82ac8067e98f3a
(Cherry-picked from 51e9edae314f5ef758fff0bf42e12325f8a55362)
2019-06-18 09:57:22 -07:00
Remi NGUYEN VAN
870c267b6c Merge changes I399d3e37,Ia3fdd80c,Iad90c7a4
* changes:
  Remove DeviceConfig usage from NetworkStackClient
  Simplify crash conditions in NetworkStackClient
  Proper handling of NetworkStack crash
2019-06-10 01:19:24 +00:00
Xiao Ma
590bf9a468 Merge "Fix the potential NullPointerException." am: 4b5c8e1076
am: e15f92e37f

Change-Id: Ie6b5c293b4ca17622674d5f735a9d62e04410088
2019-06-08 04:42:36 -07:00
Xiao Ma
a66de9c21e Fix the potential NullPointerException.
The networkAttributesParcelable retrieved from IpMemoryStore might be
null, it might cause crash with NullPointerException when attepmting
to read from the field on a null object reference.

Bug: 122710829
Test: atest FrameworksNetTests NetworkStackTests
Change-Id: Id7527199424e55f1e14836e81a5d1965d13013a2
2019-06-07 20:30:16 +09:00
Remi NGUYEN VAN
f75f9d7925 Remove DeviceConfig usage from NetworkStackClient
DeviceConfig API is not yet submitted. Use Settings.Global instead, to
still allow writing tests against AOSP code (a test would try to use
adb shell device_config, and fallback to adb shell settings).

This is not merged anywhere else, the merged-in is here to ensure this
does not end up in branches that use DeviceConfig. This change should be
lost when AOSP is updated.

Test: flashed, force-crashed NetworkStack with different setting values:
      observe rate-limited crash
Bug: 133725814
Merged-In: I423ca6ebb328f49b170baae0da9b8409a6429fcb
Change-Id: I399d3e37f1faaecb8a30428c1989fac8821379d8
2019-06-07 14:38:43 +09:00
junyulai
931ec8efa0 Fix cannot create Nat-T keepalive on mobile data
Currently phone process fail to unparcel NattKeepalivePacketData
since it is not in framework. Moves NattKeepalivePacketData to
framework to make it can be utilized by telephony.

This change also removes the error feedback triggered by calling
add keepalive packet filter to an unsupported network agent. This
is misinterpreted by KeepaliveTracker that start keepalive is
failing.

Bug: 134048171
Test: 1. atest android.net.cts.ConnectivityManagerTest#testSocketKeepaliveLimitTelephony
      2. atest android.net.cts.ConnectivityManagerTest
      3. atest FrameworksNetTests
      4. atest FrameworksTelephonyTests

Merged-In: If630d5b339aa722717258c721daa8ead8c431e2d
Change-Id: Ic0f168be6f5a6263a5e0565b6381dcb5c645660f
(cherry picked from commit 9ede677bb2)
2019-06-04 20:44:29 +08:00
junyulai
02abbfde57 Fix cannot create Nat-T keepalive on mobile data
Currently phone process fail to unparcel NattKeepalivePacketData
since it is not in framework. Moves NattKeepalivePacketData to
framework to make it can be utilized by telephony.

This change also removes the error feedback triggered by calling
add keepalive packet filter to an unsupported network agent. This
is misinterpreted by KeepaliveTracker that start keepalive is
failing.

Bug: 134048171
Test: 1. atest android.net.cts.ConnectivityManagerTest#testSocketKeepaliveLimitTelephony
      2. atest android.net.cts.ConnectivityManagerTest
      3. atest FrameworksNetTests
      4. atest FrameworksTelephonyTests
Change-Id: If630d5b339aa722717258c721daa8ead8c431e2d
2019-06-04 18:22:15 +08:00
Remi NGUYEN VAN
cfde948e4f Simplify crash conditions in NetworkStackClient
The previous model could have impact on boot time to read/write from/to
disk, and could potentially fail in some scenarios where the device does
full reboots instead of framework restarts.

The current design most simply avoids crashing in the first 30mins after
a full reboot, and optimistically checks the wall clock to rate-limit
the crashes to every 6h.

Test: manual as below, without IS_DEBUGGABLE condition
Test: Install new NetworkStack, force crash, observe rollback
Test: Set min_uptime_before_crash to 100, force crash, observe crash
Test: min_uptime_before_crash still 100, install new NetworkStack, force
      crash: observe rollback (there was already a recent crash)
Test: Set min_crash_interval to 10, force crash: observe crash
Bug: 133725814
(Clean CP from I3fd5ba7047d7ac991cb62a7cab16a40f4ee731a3)

Merged-In: Ic6b2bb13b488f46cd4b8d87caa78342f622181c3
Change-Id: Ia3fdd80c85cde45452c8e9b877836dfa4204e83d
2019-06-04 16:29:50 +09:00
Remi NGUYEN VAN
c8b197598f Proper handling of NetworkStack crash
Instead of always crashing on userdebug builds, do the following on all
builds:
 - If the device did not observe a NetworkStack crash in the last 6h
   crash the system server. This is to handle spurious crashes of the
   NetworkStack, so that the system can recover instead of staying
   without connectivity.
 - Otherwise, the device has had a recent crash. Notify the listeners
   (watchdog listener to be added) that something is seriously wrong,
   but do not crash to avoid bootlooping the device. This allows the
   watchdog to do its job, and avoids bricking the device in
   situations where the user could need to make emergency calls.

Bug: 133725814
Test: Killed the network stack, observe reboot of framework.
Test: Kill network stack again, observe nothing.
Test: Wipe data, install new network stack, kill it twice: rollback.
      (with patch on top applied)
(Clean CP from If1fa00bed769eb60ca4832609006bdf15ceddb80)

Merged-In: Ic6b2bb13b488f46cd4b8d87caa78342f622181c3
Change-Id: Iad90c7a4e416257dfe63d215274866bb25cf3d85
2019-06-04 16:26:46 +09:00
Lorenzo Colitti
f4a435aca0 Merge changes Ib9a15fec,I9f3f2588 into qt-dev
* changes:
  Don't crash ConnectivityService if the network stack crashes.
  Add a wrapper for INetworkMonitor.
2019-05-31 15:45:49 +00:00
Remi NGUYEN VAN
e7e0294294 Merge "Simplify crash conditions in NetworkStackClient" into qt-dev 2019-05-31 14:42:08 +00:00
Lorenzo Colitti
1cf53ba8e6 Add a wrapper for INetworkMonitor.
Generated using:
./wrap_aidl.sh frameworks/base/services/net/aidl/networkstack/3/android/net/INetworkMonitor.aidl > frameworks/base/services/net/java/android/net/NetworkMonitorManager.java

Bug: 133725814
Test: builds, boots
Test: atest FrameworksNetTests
Change-Id: I9f3f2588d498a05e2405129cf58bfcdd30f45e3b
Merged-In: I9f3f2588d498a05e2405129cf58bfcdd30f45e3b
(cherry picked from commit 64877b6509)
2019-05-31 13:58:59 +00:00
Remi NGUYEN VAN
0edda9f555 Simplify crash conditions in NetworkStackClient
The previous model could have impact on boot time to read/write from/to
disk, and could potentially fail in some scenarios where the device does
full reboots instead of framework restarts.

The current design most simply avoids crashing in the first 30mins after
a full reboot, and optimistically checks the wall clock to rate-limit
the crashes to every 6h.

Test: manual as below, without IS_DEBUGGABLE condition
Test: Install new NetworkStack, force crash, observe rollback
Test: Set min_uptime_before_crash to 100, force crash, observe crash
Test: min_uptime_before_crash still 100, install new NetworkStack, force
      crash: observe rollback (there was already a recent crash)
Test: Set min_crash_interval to 10, force crash: observe crash
Bug: 133725814
Change-Id: I3fd5ba7047d7ac991cb62a7cab16a40f4ee731a3
2019-05-31 20:06:11 +09:00
Lorenzo Colitti
836f6a4a05 Add a wrapper for INetworkMonitor.
Generated using:
./wrap_aidl.sh frameworks/base/services/net/aidl/networkstack/3/android/net/INetworkMonitor.aidl > frameworks/base/services/net/java/android/net/NetworkMonitorManager.java

Bug: 133725814
Test: builds, boots
Test: atest FrameworksNetTests
Change-Id: I9f3f2588d498a05e2405129cf58bfcdd30f45e3b
2019-05-31 19:22:32 +09:00
Remi NGUYEN VAN
6b2681521e Merge changes I2cb4200b,If1fa00be into qt-dev
* changes:
  PackageWatchdog listens for NetworkStack failures
  Proper handling of NetworkStack crash
2019-05-30 15:11:11 +00:00
Remi NGUYEN VAN
5855ce28cf Proper handling of NetworkStack crash
Instead of always crashing on userdebug builds, do the following on all
builds:
 - If the device did not observe a NetworkStack crash in the last 6h
   crash the system server. This is to handle spurious crashes of the
   NetworkStack, so that the system can recover instead of staying
   without connectivity.
 - Otherwise, the device has had a recent crash. Notify the listeners
   (watchdog listener to be added) that something is seriously wrong,
   but do not crash to avoid bootlooping the device. This allows the
   watchdog to do its job, and avoids bricking the device in
   situations where the user could need to make emergency calls.

Bug: 133725814
Test: Killed the network stack, observe reboot of framework.
Test: Kill network stack again, observe nothing.
Test: Wipe data, install new network stack, kill it twice: rollback.
      (with patch on top applied)
Change-Id: If1fa00bed769eb60ca4832609006bdf15ceddb80
2019-05-30 21:52:40 +09:00
Xiao Ma
d6e2bbb4ea Wipe the data in IpMemoryStore database upon network factory reset.
Bug:128499160
Test: manual
Test: atest FrameworksNetTests NetworkStackTests
Merged-In: I13ad04454e638905b74dd42a1c83266c7c37652f
Merged-In: Ia13ff10a57c2043f6676976f23ecfb2d2a9a6ef0
(cherry picked from commit ef6ef68c48)

Change-Id: I42507451d55a620c0e2d271c895ad158f348c1a5
2019-05-28 08:46:44 +00:00
Xiao Ma
d91ec0907e Wipe the data in IpMemoryStore database upon network factory reset.
Bug:128499160
Test: manual
Test: atest FrameworksNetTests NetworkStackTests
Change-Id: Ib563463a861a5d27b1e9b5fbb92342249b573802
2019-05-27 15:05:09 +09:00
Lorenzo Colitti
42ea026ae7 Add a factoryReset method to IIpMemoryStore, and freeze api.
Currently unimplemented. Implementation will be in a future CL.

Test: m
Bug: 128499160
Change-Id: Ia11ecd33f528d01667b1baeb8671b7213a31eef5
Merged-In: Ia11ecd33f528d01667b1baeb8671b7213a31eef5
(cherry picked from commit 10ddc681cf)
2019-05-20 12:54:22 +00:00
Lorenzo Colitti
91dd063172 Add a factoryReset method to IIpMemoryStore, and freeze api.
Currently unimplemented. Implementation will be in a future CL.

Test: m
Bug: 128499160
Change-Id: Ia11ecd33f528d01667b1baeb8671b7213a31eef5
2019-05-20 16:43:23 +09:00
Chalard Jean
f98611062c Support strict mode private DNS on VPNs that provide Internet.
Currently, strict mode private DNS does not work on VPNs because
NetworkMonitor does not validate VPNs. When a VPN connects, it
immediately transitions to ValidatedState, skipping private DNS
hostname resolution.

This change makes NetworkMonitor perform private DNS hostname
resolution and evaluation even on VPNs.

In order to ensure that the system always immediately switches to
the VPN as soon as it connects, remove the unvalidated penalty
for VPN networks. This ensures that the VPN score is always 101
and the VPN always outscores other networks as soon as it
connects. Previously, it would only outscore other networks
when no-op validation completed.

Bug: 122652057
Test: atest FrameworksNetTests NetworkStackTests
Test: manually ran a VPN with private DNS in strict mode
atest android.net.cts.ConnectivityManagerTest com.android.cts.net.HostsideVpnTests
Change-Id: Iaa78a7edcf23755c89d7b354edbc28d37d74d891
Merged-In: Iaa78a7edcf23755c89d7b354edbc28d37d74d891
(cherry picked from commit 414b8c8b1c)
2019-05-10 13:09:00 +00:00
Lorenzo Colitti
80986d9a53 Support strict mode private DNS on VPNs that provide Internet.
Currently, strict mode private DNS does not work on VPNs because
NetworkMonitor does not validate VPNs. When a VPN connects, it
immediately transitions to ValidatedState, skipping private DNS
hostname resolution.

This change makes NetworkMonitor perform private DNS hostname
resolution and evaluation even on VPNs.

In order to ensure that the system always immediately switches to
the VPN as soon as it connects, remove the unvalidated penalty
for VPN networks. This ensures that the VPN score is always 101
and the VPN always outscores other networks as soon as it
connects. Previously, it would only outscore other networks
when no-op validation completed.

Bug: 122652057
Test: atest FrameworksNetTests NetworkStackTests
Test: manually ran a VPN with private DNS in strict mode
atest android.net.cts.ConnectivityManagerTest com.android.cts.net.HostsideVpnTests
Change-Id: Iaa78a7edcf23755c89d7b354edbc28d37d74d891
2019-05-10 14:30:54 +09:00
Xiao Ma
3ce093b527 adopt non-blocking method to obtain the IpMemoryStore service.
Bug: 131133347
Test: atest FrameworksNetTests
Merged-In: I7de4f23370bdf9c9df5e74ed074c794080d93d95
Merged-In: If0d43f21710ca31149610d3e6a5f0d7e4acc11a2

Change-Id: If0d43f21710ca31149610d3e6a5f0d7e4acc11a2
(cherry picked from commit c4e4fd7bee)
2019-05-10 00:55:14 +00:00
Lorenzo Colitti
64c39a1890 Add a simple wrapper for IpClient.
This takes care of boilerplate tasks such as clearing calling
identity, catching RemoteExceptions, and converting to stable
parcelable objects.

Bug: 131206163
Test: builds, boots, wifi works
Test: atest FrameworksNetTests
Change-Id: I7cbe5fc105503d0983cba2bf77fb0097bd20d9ba
Merged-In: I7cbe5fc105503d0983cba2bf77fb0097bd20d9ba
(cherry picked from commit 67a6f782e2)
2019-05-09 12:07:48 +00:00
Xiao Ma
b340a6988b Merge "adopt non-blocking method to obtain the IpMemoryStore service." 2019-05-09 11:30:56 +00:00
Lorenzo Colitti
e9da42203f Add a simple wrapper for IpClient.
This takes care of boilerplate tasks such as clearing calling
identity, catching RemoteExceptions, and converting to stable
parcelable objects.

Bug: 131206163
Test: builds, boots, wifi works
Test: atest FrameworksNetTests
Change-Id: I7cbe5fc105503d0983cba2bf77fb0097bd20d9ba
2019-05-09 17:58:48 +09:00