Commit graph android_packages_modules_Co.../tests/net/java/com/android/server
Message SHA1
Merge "Support DNS-over-TLS probes in NetworkDiagnostics" am: 64ffa1762f am: d7b0b95a3a am: cd9f6754d6 am: 929e39a37d am: c7888155ce
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1011670

Change-Id: Ica4a8e861c60ba00d7ff80f4a6564ac411a12f8b

Mike Yu   authored and   Automerger Merge Worker   commited 2020-06-22 07:33:11 +00:00
c187501eec
Merge "Support DNS-over-TLS probes in NetworkDiagnostics" am: 64ffa1762f am: d7b0b95a3a
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1011670

Change-Id: I25a06623d87e6971a9dac73bdea82a78fd6124d6

Mike Yu   authored and   Automerger Merge Worker   commited 2020-06-22 06:56:39 +00:00
cd9f6754d6
Support DNS-over-TLS probes in NetworkDiagnostics
Probe DNS servers to see they support DNS-over-TLS. Use system
CAs to verify whether the certificates sent by DNS servers are
trusted or not. An error is thrown to cause the probe failed if
DNS servers send untrusted certificates.

Unlike the DnsResolver which doesn't verify the certificates
in opportunistic mode, all of the DoT probes from NetworkDiagnostics
check certificates.

DoT probes apply to the DNS servers gotten from LinkProperties
and the DoT servers gotten from PrivateDnsConfig whatever private
DNS mode is.

A common example in DNS strict mode:
.  DNS TLS dst{8.8.8.8} hostname{dns.google} src{192.168.43.2:48436} qtype{1} qname{815149-android-ds.metric.gstatic.com}: SUCCEEDED: 1/1 NOERROR (432ms)
F  DNS TLS dst{192.168.43.144} hostname{}: FAILED: java.net.ConnectException: failed to connect to /192.168.43.144 (port 853) from /192.168.43.2 (port 41770) after 2500ms: isConnected failed: ECONNREFUSED (Connection refused) (172ms)
.  DNS TLS dst{8.8.4.4} hostname{dns.google} src{192.168.43.2:37598} qtype{1} qname{759312-android-ds.metric.gstatic.com}: SUCCEEDED: 1/1 NOERROR (427ms)

An example when the CA is not trusted:
F  DNS TLS dst{8.8.8.8} hostname{dns.google}: FAILED: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. (16ms)

An example when TCP/TLS handshake timeout:
F  DNS TLS dst{8.8.8.8} hostname{dns.google}: FAILED: java.net.SocketTimeoutException: failed to connect to /8.8.8.8 (port 853) from /192.168.2.108 (port 45680) after 2500ms (2514ms)

Bug: 132925257
Bug: 118369977
Test: atest FrameworksNetTests
Change-Id: I1b54abed0e931ca4b8a97149459cde54da1c3d6f

Mike Yu   commited 2020-06-20 16:22:35 +08:00
d0e4221f64
Merge "Address comments from aosp/1298476" am: 6dc9a28b88 am: e2a6e9a49a am: 2ca334851b am: 7da3b91275 am: 365dc8a9aa
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1340040

Change-Id: I29d735d0edb861fc154568aaf0e63a4ae2f9b441

Aaron Huang   authored and   Automerger Merge Worker   commited 2020-06-18 11:25:23 +00:00
8e04633f0b
Merge "Address comments from aosp/1298476" am: 6dc9a28b88 am: e2a6e9a49a
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1340040

Change-Id: I7b119758ac7cd65defdec77692957287af17566d

Aaron Huang   authored and   Automerger Merge Worker   commited 2020-06-18 10:47:47 +00:00
2ca334851b
Address comments from aosp/1298476
This patch addresses the followings,
- Pass Looper to NetworkStatsSubscriptionsMonitor constructor
- Replace Looper with TestLooper in unit test
- Assert fail if result of condition check is not expected.

Bug: 154080205
Test: atest FrameworksNetTests:com.android.server.net.NetworkStatsServiceTest
      atest FrameworksNetTests:com.android.server.net.NetworkStatsSubscriptionsMonitorTest
Change-Id: Ibcaba2b38af80cc0ec9a4e428a3b3a1538bc4325

Aaron Huang   commited 2020-06-18 15:05:19 +08:00
50f06aca36
Merge "Dynamically enable/disable watch for RAT type changes" am: 2ad5b1419e am: 5410692469 am: 44324327a6 am: ac7a360b27 am: 8c24bb2562
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1315574

Change-Id: I0e19a6f752579b82682f5d8cfa3589657e23fd1f

Aaron Huang   authored and   Automerger Merge Worker   commited 2020-06-18 04:51:54 +00:00
34d00fa803
Merge "Dynamically enable/disable watch for RAT type changes" am: 2ad5b1419e am: 5410692469
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1315574

Change-Id: I5a96774ad2104a6b03c9abab2b105b97195edea8

Aaron Huang   authored and   Automerger Merge Worker   commited 2020-06-18 04:22:21 +00:00
44324327a6
Merge "Dynamically enable/disable watch for RAT type changes"
Aaron Huang   authored and   Gerrit Code Review   commited 2020-06-18 03:51:51 +00:00
2ad5b1419e
Merge "Add unit test for NetworkStatsSubscriptionsMonitor"
Aaron Huang   authored and   Gerrit Code Review   commited 2020-06-17 08:52:20 +00:00
4a4540dee6
Dynamically enable/disable watch for RAT type changes
Add ContentObserver to observe the status of
NETSTATS_COMBINE_SUBTYPE_ENABLED to determine that
NetworkStatsSubscriptionsMonitor start or stop
monitoring data usage per RAT type changes.

Bug: 154080515
Test: atest NetworkStatsServiceTest#testDynamicWatchForNetworkRatTypeChanges
Change-Id: I272d589633c9186b45753228b05aa0b40b7c7b89

Aaron Huang   authored and   Chalard Jean   commited 2020-06-17 17:09:10 +09:00
b412cf8212
Merge "Test extra info sent to NetworkMonitor" am: cd192301a2 am: 8825abb697 am: bd4096a4b6 am: 6189d49c67 am: 9a096560bb
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1331060

Change-Id: Idef226312b728fb041d9f58e664d8a9a2cad7f9f

Chiachang Wang   authored and   Automerger Merge Worker   commited 2020-06-16 01:44:23 +00:00
1565b969ce
Merge "Test extra info sent to NetworkMonitor" am: cd192301a2 am: 8825abb697
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1331060

Change-Id: Ice048df853589411ee1f1c935b929994af1c525b

Chiachang Wang   authored and   Automerger Merge Worker   commited 2020-06-16 01:02:52 +00:00
bd4096a4b6
Add unit test for NetworkStatsSubscriptionsMonitor
Bug: 154080205
Test: atest FrameworksNetTests:com.android.server.net.NetworkStatsSubscriptionsMonitorTest
(copy from ag/11788484 but getActiveAndHiddenSubscriptionIdList() since it's renamed
in internal)
Change-Id: Ia162f36efe96d90b2f6f70190d9fa855bba34484
Merged-In: I4ef3f1ab2e5ea1322133edd80db3ccd0022e9c91

Aaron Huang   commited 2020-06-15 07:05:19 +00:00
791dfcb0f5
Test extra info sent to NetworkMonitor
Test extra info sent to NetworkMonitor correctly if network
agent is created through new NetworkAgent constructor without
legacy network info taken as parameter.

Bug: 156173829
Test: atest FrameworkNetTests
Change-Id: I4f827664c528bea30cc957a0a617dd37693f4460

Chiachang Wang   commited 2020-06-12 18:13:00 +08:00
0f6aeff137
Merge "Add unit test for NetworkStatsSubscriptionsMonitor" into rvc-dev am: 4ca7d588b4 am: a0e48b1df5 am: 2acbd72f5e am: 5e48bf1a25
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11788484

Change-Id: I8a039b0c164e51ed9054d229f52ece259b894b63

Aaron Huang   authored and   Automerger Merge Worker   commited 2020-06-12 02:35:26 +00:00
2b4aa6a273
Merge "Add unit test for NetworkStatsSubscriptionsMonitor" into rvc-dev am: 4ca7d588b4 am: a0e48b1df5 am: 2acbd72f5e
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11788484

Change-Id: I643f27dda377ee5d2fa885cac8b814445363a20d

Aaron Huang   authored and   Automerger Merge Worker   commited 2020-06-12 02:31:29 +00:00
5e48bf1a25
Merge "Add unit test for NetworkStatsSubscriptionsMonitor" into rvc-dev am: 4ca7d588b4
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11788484

Change-Id: Iac633487b359d751206e06b2352a2a9cb475811e

Aaron Huang   authored and   Automerger Merge Worker   commited 2020-06-12 02:11:29 +00:00
7150252ba4
Add unit test for NetworkStatsSubscriptionsMonitor
Bug: 154080205
Test: atest FrameworksNetTests:com.android.server.net.NetworkStatsSubscriptionsMonitorTest
Change-Id: I4ef3f1ab2e5ea1322133edd80db3ccd0022e9c91

Aaron Huang   commited 2020-06-09 00:40:36 +08:00
f0ada3725f
Merge "Add RequiresFeature annotations for IKEv2 VPN profiles" into rvc-dev am: 2a0b964e76 am: 0bdb3d9c51 am: 9e34b7f288 am: cc8c22564b
Change-Id: I3f95200a5bdcec9b6e0f6b6e0dddfa218240cd48

Benedict Wong   authored and   Automerger Merge Worker   commited 2020-05-29 18:23:15 +00:00
0c28670222
Merge "Add RequiresFeature annotations for IKEv2 VPN profiles" into rvc-dev am: 2a0b964e76 am: 0bdb3d9c51
Change-Id: Id03dc7e3e2912f308b4ed42f2cc8cae80d9cd95d

Benedict Wong   authored and   Automerger Merge Worker   commited 2020-05-29 17:45:55 +00:00
9e34b7f288
Merge "Add RequiresFeature annotations for IKEv2 VPN profiles" into rvc-dev am: 2a0b964e76
Change-Id: Ibc0f236234cd87d50a393c3dfaca7898b04e7432

Benedict Wong   authored and   Automerger Merge Worker   commited 2020-05-29 17:32:42 +00:00
7b05b0f5e6
Add RequiresFeature annotations for IKEv2 VPN profiles
This change adds the @RequiresFeature annotation to Ikev2VpnProfile
Builder methods, and checks before provisioning VPN profiles.

Bug: 156681625
Test: New tests added, passing.
Change-Id: I125d8fbe5d67fb877ad7d0636c007cb3e1a9f59b
Merged-In: I125d8fbe5d67fb877ad7d0636c007cb3e1a9f59b
(cherry picked from commit e84a17dd1706f4c8373047b2023a1ec4b7cf4bf3)

Benedict Wong   commited 2020-05-28 19:07:29 -07:00
7c40fcb2a4
Merge "Add RequiresFeature annotations for IKEv2 VPN profiles"
Benedict Wong   authored and   Gerrit Code Review   commited 2020-05-29 01:55:08 +00:00
618912a51c
Merge changes Ie73ba058,I4393afcb,Ifebd946e,Ib12ee882,Ia171b779 am: 3ee5c80eef am: 6be9b5f9ee am: dd932e6ddf am: b5fd9d5c43 am: 60bb02b17f
Change-Id: I067445d4b712184da693a9cb15c0309fd9f2ff0d

Maciej Å»enczykowski   authored and   Automerger Merge Worker   commited 2020-05-28 10:30:55 +00:00
7fddc27585
fix com.android.server.net.NetworkStatsFactoryTest#testDoubleClatAccounting100MBDownload
No clat app uid 0 rx stats on base iface due to ip6tables raw prerouting drop

(so just copy over the rx stats from the before file)

Test: atest NetworkStatsTest NetworkStatsFactoryTest
Bug: 150738490
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Ie73ba0586dafde67bc2726db26e07f7268c18be3
Merged-In: Ie73ba0586dafde67bc2726db26e07f7268c18be3

Maciej Å»enczykowski   commited 2020-05-28 02:44:02 -07:00
b6e56b637c
fix com.android.server.net.NetworkStatsFactoryTest#testDoubleClatAccounting
No clat app uid 0 rx stats on base iface due to ip6tables raw prerouting drop

Test: atest NetworkStatsFactoryTest
Bug: 150738490
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I4393afcbe8e1bb886ecf4f5c1573f6ac8a0e29f5
Merged-In: I4393afcbe8e1bb886ecf4f5c1573f6ac8a0e29f5

Maciej Å»enczykowski   commited 2020-05-28 02:43:53 -07:00
798804037d
Merge changes Ie73ba058,I4393afcb,Ifebd946e,Ib12ee882,Ia171b779 am: 3ee5c80eef am: 6be9b5f9ee
Change-Id: If8abb4247759462532cbac6b43bfb8d3202c6e34

Maciej Å»enczykowski   authored and   Automerger Merge Worker   commited 2020-05-28 09:36:05 +00:00
dd932e6ddf
fix com.android.server.net.NetworkStatsFactoryTest#testDoubleClatAccounting100MBDownload
No clat app uid 0 rx stats on base iface due to ip6tables raw prerouting drop

(so just copy over the rx stats from the before file)

Test: atest NetworkStatsTest NetworkStatsFactoryTest
Bug: 150738490
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Ie73ba0586dafde67bc2726db26e07f7268c18be3

Maciej Å»enczykowski   commited 2020-05-28 00:26:18 -07:00
aff83882db
fix com.android.server.net.NetworkStatsFactoryTest#testDoubleClatAccounting
No clat app uid 0 rx stats on base iface due to ip6tables raw prerouting drop

Test: atest NetworkStatsFactoryTest
Bug: 150738490
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I4393afcbe8e1bb886ecf4f5c1573f6ac8a0e29f5

Maciej Å»enczykowski   commited 2020-05-28 00:26:18 -07:00
e07d7a3536
Add RequiresFeature annotations for IKEv2 VPN profiles
This change adds the @RequiresFeature annotation to Ikev2VpnProfile
Builder methods, and checks before provisioning VPN profiles.

Bug: 156681625
Test: New tests added, passing.
Change-Id: I125d8fbe5d67fb877ad7d0636c007cb3e1a9f59b

Benedict Wong   commited 2020-05-27 02:05:49 -07:00
ba73f47ef2
Inform the DNS resolver when it needs to do DNS64 synthesis.
This is only necessary when learning the NAT64 prefix from the
RA, because if the NAT64 prefix is learned from DNS, the DNS
resolver already knows the prefix and automatically enables
DNS64 synthesis.

The DNS resolver needs to be informed of the prefix any time
clat is running on a prefix learned from an RA. This is simple to
implement: just set the prefix when starting clat if prefix
discovery is not running, and clear the prefix when stopping clat
if prefix discovery was not running. This ensures that the prefix
is cleared iff it was set.

Bug: 156914456
Test: new unit test coverage
Original-Change: https://android-review.googlesource.com/1315578
Merged-In: If8ad2d30712a6df3e207c8d3e8a129705242191e
Change-Id: If8ad2d30712a6df3e207c8d3e8a129705242191e

Lorenzo Colitti   commited 2020-05-26 11:52:35 +00:00
119ecc6867
Test that if an RA sets the same prefix as DNS, nothing happens.
This is not particularly likely to happen unless the pref64 RA is
sent by a different router than the main RA. But more tests are
always good, and this additional coverage will be more useful
in an upcoming change.

Bug: 150648313
Test: test-only change
Original-Change: https://android-review.googlesource.com/1316094
Merged-In: I3316d49d42100800740afadc4edf0a13a4d8377c
Change-Id: I3316d49d42100800740afadc4edf0a13a4d8377c

Lorenzo Colitti   commited 2020-05-26 11:35:33 +00:00
3e54957fac
Merge "Inform the DNS resolver when it needs to do DNS64 synthesis." am: eed51faa49 am: f5a5cd3bd7 am: d0cf1afac5 am: cff8146b4d am: 29d3636dd4
Change-Id: I6bb6f038af9988502f15894349039fec51dc8a86

Lorenzo Colitti   authored and   Automerger Merge Worker   commited 2020-05-26 10:59:30 +00:00
662ab7bf25
Merge "Inform the DNS resolver when it needs to do DNS64 synthesis." am: eed51faa49 am: f5a5cd3bd7
Change-Id: I06278ddff31d8c0dbb4ce6cfded01a38369d8a3c

Lorenzo Colitti   authored and   Automerger Merge Worker   commited 2020-05-26 10:13:17 +00:00
d0cf1afac5
Merge "Inform the DNS resolver when it needs to do DNS64 synthesis."
Lorenzo Colitti   authored and   Gerrit Code Review   commited 2020-05-26 09:26:46 +00:00
eed51faa49
Merge "Test that if an RA sets the same prefix as DNS, nothing happens." am: 82db920da4 am: 6d866bcd5f am: 352e8c2aa5 am: 7a35f41cf7 am: ccc05a0bc8
Change-Id: I58fbdf5bf51a1048acf61bd25107e2f2caa86617

Lorenzo Colitti   authored and   Automerger Merge Worker   commited 2020-05-24 12:14:57 +00:00
25045a554a
Merge "Test that if an RA sets the same prefix as DNS, nothing happens." am: 82db920da4 am: 6d866bcd5f
Change-Id: Ib2eb07e3794630cc636759ce6a6529b7b56a3cfe

Lorenzo Colitti   authored and   Automerger Merge Worker   commited 2020-05-24 11:30:55 +00:00
352e8c2aa5
Merge "Test that if an RA sets the same prefix as DNS, nothing happens."
Lorenzo Colitti   authored and   Gerrit Code Review   commited 2020-05-24 10:59:40 +00:00
82db920da4
Inform the DNS resolver when it needs to do DNS64 synthesis.
This is only necessary when learning the NAT64 prefix from the
RA, because if the NAT64 prefix is learned from DNS, the DNS
resolver already knows the prefix and automatically enables
DNS64 synthesis.

The DNS resolver needs to be informed of the prefix any time
clat is running on a prefix learned from an RA. This is simple to
implement: just set the prefix when starting clat if prefix
discovery is not running, and clear the prefix when stopping clat
if prefix discovery was not running. This ensures that the prefix
is cleared iff it was set.

Bug: 156914456
Test: new unit test coverage
Change-Id: If8ad2d30712a6df3e207c8d3e8a129705242191e

Lorenzo Colitti   commited 2020-05-21 23:32:57 +09:00
f28b6b705c
Merge "Suppress deprecation warnings in LegacyTypeTrackerTest." am: 585dc0665e am: 212e497cbc am: 4ca97a469c am: c1a0fffef6 am: 978aa17285
Change-Id: Ia7a29777227d1780e620c6c6b0ad84925512be12

Treehugger Robot   authored and   Automerger Merge Worker   commited 2020-05-21 09:17:22 +00:00
582c1a8e05
Merge "Suppress deprecation warnings in LegacyTypeTrackerTest." am: 585dc0665e am: 212e497cbc
Change-Id: I77fdf03484bd0da36ebffd025a33ab4859a0a5a2

Treehugger Robot   authored and   Automerger Merge Worker   commited 2020-05-21 08:31:13 +00:00
4ca97a469c
Test that if an RA sets the same prefix as DNS, nothing happens.
This is not particularly likely to happen unless the pref64 RA is
sent by a different router than the main RA. But more tests are
always good, and this additional coverage will be more useful
in an upcoming change.

Bug: 150648313
Test: test-only change
Change-Id: I3316d49d42100800740afadc4edf0a13a4d8377c

Lorenzo Colitti   commited 2020-05-21 17:26:00 +09:00
2a0ef00bb9
Merge "Suppress deprecation warnings in LegacyTypeTrackerTest."
Treehugger Robot   authored and   Gerrit Code Review   commited 2020-05-21 07:47:45 +00:00
585dc0665e
Merge "Address nit from aosp/1301317" into rvc-dev
Chalard Jean   authored and   Android (Google) Code Review   commited 2020-05-21 06:44:30 +00:00
75fddad9b4
Merge "Fix a bug where VPNs start out suspended on cellular" into rvc-dev
Chalard Jean   authored and   Android (Google) Code Review   commited 2020-05-21 06:43:56 +00:00
8c06a845ac
Address nit from aosp/1301317
Test: atest ConnectivityServiceTest#testVpnSetUnderlyingNetworks
Bug: 150570873
Original-Change: https://android-review.googlesource.com/1307374
Merged-In: If5e5439b22f05e08a293fd83da4d54f6a4363ca5
Change-Id: If5e5439b22f05e08a293fd83da4d54f6a4363ca5

Treehugger Robot   authored and   Chalard Jean   commited 2020-05-21 05:12:41 +00:00
436608cf39
Fix a bug where VPNs start out suspended on cellular
As NetworkAgent is in a transition where all agents need
to include the NOT_SUSPENDED capability as part of their
migration to the system API, ConnectivityService adds it
forcefully to all agents that don't have the CELLULAR
transport. This doesn't include VPNs when VPNs have some
cellular network as their underlying network.

The best way to solve this is to make sure the VPN
capabilities reflect those of the underlying networks as
far as the NOT_SUSPENDED capability is concerned. This
is how they work for other similar capabilities.

This also happens to contain a drive-by fix for an issue
with a spurious capabilities callback is triggered when
a VPN connects and it has any underlying network (which
means almost always, because it will take the default
network if it doesn't declare any). Fixing this was
necessary to have a cogent test of this issue, but it
could be moved to another patch or it could stay unfixed
with some minor ajustment to the tests if judged too
dangerous to include in R at this point.

Test: New tests in this patch. Also manually tested with
      tcpdump as described in b/150570873.
Bug: 150570873
Original-Change: https://android-review.googlesource.com/1301317
Merged-In: I3e4ff990c0d4825b21c7679be29a482a2d1324ec
Change-Id: I3e4ff990c0d4825b21c7679be29a482a2d1324ec

Chalard Jean   commited 2020-05-21 05:10:37 +00:00
fc7054d0e9
Fix a bug where a spurious capabilities callback is sent.
When a VPN connects and it has any underlying network (which
means almost always, because it will take the default network
if it doesn't declare any), it has default capabilities and
will only take the capabilities of its underlying network
as part of an update happening after making the network
available but before the rematch can take place. This in turn
causes the capabilities callback sent as part of the rematch
to be spuriously sent.

Test: FrameworksNetTests. Also tested together with a
      followup that adds tests with drive-by coverage for this.
Bug: 150570873
Original-Change: https://android-review.googlesource.com/1305393
Merged-In: Id7d8bba486bada1a7ba5b0f152d2aa02e407f249
Change-Id: Id7d8bba486bada1a7ba5b0f152d2aa02e407f249

Chalard Jean   commited 2020-05-21 05:09:15 +00:00
1112dd3d83
Suppress deprecation warnings in LegacyTypeTrackerTest.
This saves dozens of warnings every time FrameworkNetTests is
compiled. There is nothing we can do about those warnings because
LegacyTypeTracker's reason for existence is to power deprecated
APIs.

Test: m FrameworksNetTests
Change-Id: I4d65b0aade493e12b56a94247efbf9d1ad7bb4b9

Lorenzo Colitti   commited 2020-05-20 20:53:16 +09:00
2f0583946a