Commit Graph

5862 Commits

Author SHA1 Message Date
Chenbo Feng
2ccd29bb0e Merge "Fix the INTERNET related permissions"
am: 931d909f3b

Change-Id: Id97b1ea945409e938158f30efd564b10c9e81380
2019-03-26 19:52:57 -07:00
Treehugger Robot
931d909f3b Merge "Fix the INTERNET related permissions" 2019-03-27 02:35:35 +00:00
Lucas Lin
8fc2439929 Merge "Fix flaky test for ConnectivityServiceTest#testPartialConnectivity"
am: 15b9eb4e43

Change-Id: I0639d4ccd7c3211595ede82bce3daa87ae759e10
2019-03-26 18:41:00 -07:00
Lucas Lin
15b9eb4e43 Merge "Fix flaky test for ConnectivityServiceTest#testPartialConnectivity" 2019-03-27 01:29:51 +00:00
Chenbo Feng
efc545bd42 Fix the INTERNET related permissions
Change the INTERNET permission implementation so it only block socket
creation when non of the packages under the same uid have internet
permission. Fix the UPDATE_DEVICE_STATS permission so only the uid that
own the permission can change it.

Bug: 111560570
Test: CtsNetTestCasesUpdateStatsPermission
      CtsNetTestCasesInternetPermission
Change-Id: I42385526c191d4429f486cde01293b27fcc1374b
2019-03-26 15:16:26 -07:00
lucaslin
563b751b21 Fix flaky test for ConnectivityServiceTest#testPartialConnectivity
There are 2 problems will make testPartialConnectivity flaky:
1. If we call setNetworkValid() before expectCapabilitiesWith(),
there may be a timing issue that network will become VALID before
NetworkMonitor send PARTIAL_CONNECTIVITY to ConnectivityService.
Solution:
We should set network to valid after ConnectivityService received
NETWORK_TEST_RESULT_PARTIAL_CONNECTIVITY to ensure NetworkMonitor
will send PARTIAL_CONNECTIVITY to ConnectivityService first then
send VALID.

2. When test case call explicitlySelected(true) first then call
connect(true), NetworkMonitor will report the network validation
test result twice because ConnectivityServiceTest() will trigger
notifyNetworkTested() when setAcceptPartialConnectivity() is
called, it may cause a timing that before the second test result
send to ConnectivityService, connect() already called
setNetworkInvalid. So, NET_CAPABILITY_VALIDATED will be removed
and ConnectivityService will trigger onCapabilitiesChanged()
unexpectedly.
Solution:
Don't trigger notifyNetworkTested() when
setAcceptPartialConnectivity() is called. If there is needed,
use mCm.reportNetworkConnectivity() to report the test result
instead.

Bug: 128426024
Test: 1. atest FrameworksNetTests: \
      ConnectivityServiceTest#testPartialConnectivity \
      --generate-new-metrics 1000

Change-Id: I7200528378201a3c7c09a78ff827b41f2741dfa1
2019-03-26 17:49:49 +08:00
Junyu Lai
ca9b494b83 Merge "Reveal the call trace of failed test cases which run in executors"
am: 43dc93b180

Change-Id: Ia0de9ac66ad2137c6d1147e2ad5c899ab7b33ece
2019-03-25 23:54:01 -07:00
Junyu Lai
43dc93b180 Merge "Reveal the call trace of failed test cases which run in executors" 2019-03-26 06:38:39 +00:00
Remi NGUYEN VAN
a475897492 Merge "Add nullability annotations"
am: 9049f8617b

Change-Id: I47ec92d406b16eaff049ad4a5af1b1b407418e4d
2019-03-25 06:33:40 -07:00
Mark Chien
493e5319f6 Merge "[TCPKeepalive] Fill correct TOS and TTL value"
am: bd1567cbae

Change-Id: I8c5993aadd1bfa79290821215f6dae2bba057c5f
2019-03-25 06:25:42 -07:00
Treehugger Robot
9049f8617b Merge "Add nullability annotations" 2019-03-25 13:19:19 +00:00
Mark Chien
bd1567cbae Merge "[TCPKeepalive] Fill correct TOS and TTL value" 2019-03-25 13:10:17 +00:00
junyulai
b454b0fc0e Reveal the call trace of failed test cases which run in executors
Currently, the fails in testTcpSocketKeepalives are triggered by
fail() inside the executor, which is hiding the actual call trace
but only message remains. And it made the fail case hard to
debug.

So this commit is to bubble up the Exception by using a custom
functional interface.

Bug: 123987272
Test: 1. atest FrameworksNetTests
      2. manually fail the test case and see the call trace

Change-Id: I125e673938a5e9d1de86f83c1a732227a4bd3207
2019-03-25 12:56:47 +00:00
Junyu Lai
b7ed180e64 Merge "Fix SocketKeepalive APIs which do not meet API review requirement"
am: 5fdd1748fa

Change-Id: Id82be12a54e676c4ad18900ae910e6d08079e62c
2019-03-25 03:57:32 -07:00
Junyu Lai
5fdd1748fa Merge "Fix SocketKeepalive APIs which do not meet API review requirement" 2019-03-25 10:42:37 +00:00
junyulai
6114378ad2 Fix SocketKeepalive APIs which do not meet API review requirement
Per API review, change the use of FileDescriptor to
ParcelFileDescriptor.
This change also fix nullability according to API review
feedbacks.

Fix: 126698610
Fix: 126699425
Fix: 126699232
Fix: 126700278

Test: 1. m -j
      2. atest FrameworksNetTests --generate-new-metrics 50
      3. m -j doc-comment-check-docs
Change-Id: I19476c50dd1ca290bf3f41973829da2bd229796a
2019-03-25 15:56:35 +08:00
Remi NGUYEN VAN
e04dfba3cf Add nullability annotations
Add nullability annotations on the following methods:
 - StaticIpConfiguration#getRoutes
 - ValidationProbeEvent#getProbeName

Test: m
Bug: 128935825
Change-Id: I1c17d200f3125e684c4e4d67b2f7f079eda310b6
2019-03-25 16:46:34 +09:00
markchien
d2c678b32f [TCPKeepalive] Fill correct TOS and TTL value
Fill correct TOS/TTL value by fetching them from kernel with
getsockopt.

bug: 123967966
Test: -build, flash, boot
      -atest FrameworksNetTests

Change-Id: I75b1be51040b4a381163958b4cddd27dbb22bac1
2019-03-25 11:14:57 +08:00
Remi NGUYEN VAN
a988825101 Merge "Separate NetworkMonitor/framework portal URL"
am: 391c40841f

Change-Id: I1926527f7875e459b4d3c84bfcd8b3aac9562cae
2019-03-24 20:02:39 -07:00
Remi NGUYEN VAN
391c40841f Merge "Separate NetworkMonitor/framework portal URL" 2019-03-25 02:50:37 +00:00
Remi NGUYEN VAN
e380d9ce11 Merge "Fix API in CaptivePortal and ConnectivityManager"
am: 998e6ea285

Change-Id: I4cc3c61232c74bafe4eb549c1aba5de20a8bb3ff
2019-03-24 19:46:32 -07:00
Treehugger Robot
998e6ea285 Merge "Fix API in CaptivePortal and ConnectivityManager" 2019-03-25 02:37:28 +00:00
Remi NGUYEN VAN
338eb2a1ec Fix API in CaptivePortal and ConnectivityManager
- Remove CaptivePortal constructor from SystemApi. This constructor was
   added in Q timeframe and ends up being unnecessary since
   CaptivePortal creation was refactored to ConnectivityService because
   of visibility issues on ICaptivePortal.
 - Rename getAvoidBadWifi to shouldAvoidBadWifi
 - Add permission annotation for shouldAvoidBadWifi

(already merged in internal as:
I09545c00af3519dbf141dd5951b28f49e37b3e80)

Test: flashed, WiFi and captive portal works
Bug: 128935314
Bug: 128935673
Merged-In: I09545c00af3519dbf141dd5951b28f49e37b3e80
Change-Id: I7395d4a4db6a64398a827692aee1956c011873e5
2019-03-25 01:43:48 +00:00
Remi NGUYEN VAN
69a57cb6d0 Separate NetworkMonitor/framework portal URL
The framework cannot return URLs used by the updatable NetworkStack,
which may use configurable URLs, changing URLs, or mechanisms not
involving URLs to detect captive portals. NetworkMonitor has already
been using random fallback URLs for a while that do not match the value
returned by ConnectivityManager#getCaptivePortalServerUrl.

With this change, the default value returned by the framework is
configured in framework resources as
config_networkDefaultCaptivePortalServerUrl. NetworkMonitor behavior may
change as it is an updatable component, but the current URL is
configured in NetworkMonitor resources as
config_captive_portal_http_url.

Test: flashed, booted, WiFi and captive portal working
Test: ConnectivityManager#getCaptivePortalServerUrl returns correct
      value.
Bug: 127908503
Change-Id: I371dedc5b22efa909d7fd58e1ebe9b8aaced9780
2019-03-22 15:11:14 +09:00
Lucas Lin
7b6be6f338 Merge "Enable PARTIAL_CONNECTIVITY dialog"
am: dd7df788e8

Change-Id: I88ca44ef0c0a7cf48538421022d0fed10d15fc26
2019-03-21 21:30:48 -07:00
Lucas Lin
dd7df788e8 Merge "Enable PARTIAL_CONNECTIVITY dialog" 2019-03-22 04:17:43 +00:00
Luke Huang
b899f2b3bc Merge "Support query cancellation for async DNS API"
am: fb47755153

Change-Id: I400d98e13cf36ca16c3743eddee96bfae4b47b5c
2019-03-21 20:50:18 -07:00
Luke Huang
fb47755153 Merge "Support query cancellation for async DNS API" 2019-03-22 03:26:21 +00:00
lucaslin
32ecfc4c59 Enable PARTIAL_CONNECTIVITY dialog
Enable PARTIAL_CONNECTIVITY dialog to complete the function.

Bug: 113450764
Test: 1. Build pass
      2. atest FrameworksNetTests
      3. atest NetworkStackTests
      4. Change captive_portal_https_url to https://invalid.com
      to simulate partial connectivity.

Change-Id: I5c9fe7a898d30d2f7f75142c85e73fefc257a147
2019-03-22 09:10:08 +08:00
Paul Hu
fa662c4b91 Merge "Fix Automated API Review issues."
am: e9109ceb23

Change-Id: I9c007c129269a80d9aede31c8980dbd42e9f1f84
2019-03-21 10:46:03 -07:00
Paul Hu
e9109ceb23 Merge "Fix Automated API Review issues." 2019-03-21 17:19:26 +00:00
lucaslin
ead65ee6f8 Merge "Temporarily disable flaky test."
am: d2ff961201

Change-Id: I3f2f81a6884ba1ffc212c4da393846a597af831b
2019-03-21 08:19:47 -07:00
Treehugger Robot
d2ff961201 Merge "Temporarily disable flaky test." 2019-03-21 15:04:15 +00:00
Paul Hu
0565167d6b Merge "Fix Automated API Review issues."
am: 8c128c9413

Change-Id: I9cbe7dc166ec066b8785553f31dc32ea0572be8e
2019-03-21 07:24:16 -07:00
Paul Hu
8c128c9413 Merge "Fix Automated API Review issues." 2019-03-21 14:11:36 +00:00
Mark Chien
192c20eed5 Merge "Replace TcpSocketInfo with similar structure"
am: 19a71f90e4

Change-Id: I6e3f89a910fc3ab7524da1c5c5b525a72191a4ed
2019-03-21 05:14:45 -07:00
Mark Chien
19a71f90e4 Merge "Replace TcpSocketInfo with similar structure" 2019-03-21 12:02:54 +00:00
lucaslin
0f755c31a5 Temporarily disable flaky test.
Test: None
Bug: 128426024
Change-Id: I6fa12e50decbafe9d934030865c5a8f20d42b86f
2019-03-21 19:14:32 +08:00
Mark Chien
3f413f5fca Merge "Restrict scope of switch Repair Mode"
am: c8cd597aed

Change-Id: Ie655ad82d0441aa6ad6fc45a6e63dc2a53338148
2019-03-21 00:18:11 -07:00
paulhu
2a0fccf6ae Fix Automated API Review issues.
These API's argument/return value must be marked either @NonNull
or @Nullable.

Bug: 126701148
Bug: 126699090
Bug: 126701058
Bug: 126700772
Bug: 126699941
Bug: 126701299
Bug: 126700007
Bug: 126700900
Test: atest FrameworksNetTests
Change-Id: Id030a9f1116178b96aa3d4614b10969a537b2fc4
2019-03-21 15:16:58 +08:00
Mark Chien
c8cd597aed Merge "Restrict scope of switch Repair Mode" 2019-03-21 07:02:14 +00:00
Luke Huang
f3b2546131 Merge "Cleanup NetworkManagementService for Netd commnads binder migrartion"
am: cfd6cdf447

Change-Id: I86ca4cab29099b26f797ef6fce94dbb6f5183b90
2019-03-20 23:18:25 -07:00
Luke Huang
cfd6cdf447 Merge "Cleanup NetworkManagementService for Netd commnads binder migrartion" 2019-03-21 06:01:25 +00:00
paulhu
9bb0480c2a Fix Automated API Review issues.
1. Some API's argument/return value must be marked either
@NonNull or @Nullable.
2. Change some system APIs to public APIs.
3. Modify the method name

Bug: 126700123
Bug: 126702339
Bug: 126699682
Bug: 118296575
Bug: 126699216
Bug: 126699675
Bug: 126699429
Bug: 126699193
Bug: 123586045
Test: atest FrameworksNetTests
Change-Id: Iaa2832cdcf83758ed0fec81b954a0c63bc5a7bf6
2019-03-21 13:55:37 +08:00
Lucas Lin
8f78c70595 Merge "Improve partial connectivity"
am: ce8235772b

Change-Id: I19c41c88d32643f82531c7afc3d4248ef9b44b53
2019-03-20 20:45:42 -07:00
Lucas Lin
ce8235772b Merge "Improve partial connectivity" 2019-03-21 03:34:30 +00:00
markchien
0fcb07885b Replace TcpSocketInfo with similar structure
Replace TcpSocketInfo with TcpKeepalivePacketDataParcelable
because their structures are very similar.

bug: 128882321
Test: -build, flash, boot
      -FrameworksNetTests

Change-Id: Iafb4031a64ba4775a495c156e2c997d890c6b261
2019-03-20 22:29:48 +08:00
markchien
f175d40379 Restrict scope of switch Repair Mode
Bug: 123969339
Test: -boot, flash
      -atest FrameworksNetTests

Change-Id: Ie0fb685be5f7a2d06544065d67c605d87a19ff2f
2019-03-20 22:20:56 +08:00
Luke Huang
c5fdf01476 Cleanup NetworkManagementService for Netd commnads binder migrartion
remove dead code used for netd UNIX sokcet

Bug: 65862741
Test: atest NetworkManagementServiceTest FrameworksNetTests
Change-Id: I5db61cb86325b71ac8a8fce7b15dbf569abc5935
2019-03-20 20:02:24 +08:00
lucaslin
2afb4bcbcb Improve partial connectivity
Improve the design and fix some nits.

Bug: 113450764
Test: 1. Build pass
      2. atest FrameworksNetTests
      3. atest NetworkStackTests
      4. Change captive_portal_https_url to https://invalid.com
      to simulate partial connectivity.
Change-Id: Ia56645841d00d2ed8406cfeacb86a4a27fd58650
2019-03-20 18:21:59 +08:00