Commit Graph

1129 Commits

Author SHA1 Message Date
Patrick Rohr
7a042d869f NetworkCapabilities: initialize ALL_VALID_CAPABILITIES without loop
This change also removes the MIN_NET_CAPABILITY constant that is not
actually used and can always be re-added in the future (though, I would
imagine that NetworkCapabilities will not be deprecated / removed in
numerical order).

Test: TH
Change-Id: I97ccbc9e915eb74a0ef52c576e16fc8ce8d5b646
2023-07-19 14:24:00 -07:00
Treehugger Robot
4b19802eee Merge "Deduplicate the isIpv6ULA implementation." into main 2023-07-19 02:25:20 +00:00
Xiao Ma
a74b0066e0 Deduplicate the isIpv6ULA implementation.
Leverage the ConnectivityUtils#isIPv6ULA implementation which is also
accessible for modules, to deduplicate the implementation.

Bug: 183601771
Test: TH
Change-Id: I0943cd76f95e2f54d619015231f68b326194c8b9
2023-07-18 20:04:43 +09:00
Patrick Rohr
200bd72898 NetworkCapabilities: convert ALL_VALID_CAPABILITIES to long
ALL_VALID_CAPABILITIES should be a long, since there are now 35 NetworkCapabilities that are stored in a bitfield.

This caused NetworkCapabilities to be lost during parceling.

Bug: 291160389
Test: TH
Change-Id: Ia021ba5fd2094fdaec87446c73de2037c920c4f1
2023-07-18 02:35:32 +00:00
Stefano Duo
2cf46934c5 Revert^2 "Connectivity: Depend on new httpclient targets"
6333cc4899

Change-Id: I683818ac77e688b4a62b594000bb235a23cbe6df
2023-07-17 14:52:16 +00:00
Stefano Duo
6333cc4899 Revert "Connectivity: Depend on new httpclient targets"
Revert submission 2647150-httpclient-wrapper

Reason for revert: ndk build break (b/291449552)

Reverted changes: /q/submissionid:2647150-httpclient-wrapper

Change-Id: Ic90a625d105e8ad310eb93758a776ff5b764f67a
2023-07-17 08:44:56 +00:00
Stefano Duo
0fb7f7b787 Connectivity: Depend on new httpclient targets
Bug: 288886953
Change-Id: I23d883cb7d20696651c4bcf309f06cd3dfad397d
2023-07-07 14:39:56 +01:00
Treehugger Robot
1aa662bd58 Merge "Correct typo variable" am: cc3f9888e3 am: bb12305beb am: 70e33e0d4c
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2626269

Change-Id: I6635d2c666a0ec2e4b864a8bb66cefd5be70368c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-15 06:30:09 +00:00
chiachangwang
980e767188 Correct typo variable
Bug: 196453719
Test: atest FrameworksNetTests
Change-Id: I97604d077433f4c5505912f9cbebab77a43fb548
2023-06-15 01:43:07 +00:00
Maciej Żenczykowski
991fc7b881 Merge "Add helper method to generate a v6 NAT-T keepalive packet" am: 977fa60f5d am: 08dd67bf4c am: 67cca8a92f
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2616796

Change-Id: Ibeaf34f9f72c1f6759393e6d0b542d9f241f8d9d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-14 04:51:44 +00:00
chiachangwang
c18f0bbbb3 Add helper method to generate a v6 NAT-T keepalive packet
This is a part of preliminary work for sending a v6 NAT-T
keepalive packet in a v6 only network. This commit
release the constraint on constructing a v6 NAT-T keepalive
packet.

Bug: 196453719
Test: Manually connect to v6 only network and check if the
      keepalive packets are sent with subsequent commit
Test: atest FrameworksNetTests with the updated test
Change-Id: I9dc96e840265c5dee6b9e3ef2b3901a0aeb4ff9e
2023-06-13 11:50:13 +00:00
chiachangwang
958b1093ab Set DF flag on NAT-T keepalive packet am: c6a2f6faf5 am: 0427777fe0 am: e8420f465b
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2616795

Change-Id: I6864c52c1f5bc641cc6b022679634e1d981d9776
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-07 04:40:37 +00:00
chiachangwang
8eeb62b6d3 Make a v4 nattKeepalivePacket helper method am: df347448a1 am: 8802197935 am: 0c0b80c79f
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2616794

Change-Id: I2a77b0d1177220ffef55e16a6afff02dea075eb0
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-07 04:38:22 +00:00
chiachangwang
c6a2f6faf5 Set DF flag on NAT-T keepalive packet
This commit
- Set the DF flag on the NAT-T keepalive packet
- Add comment for TTL value
- Do some cleanups

Bug: 196453719
Test: m
Change-Id: I401ae52d8f16e43120210cdea223fd251d53ea3b
2023-06-07 02:05:27 +00:00
chiachangwang
df347448a1 Make a v4 nattKeepalivePacket helper method
This is a preparation change for the subsequent changes to
separate the logic for constructing a v4 NAT-T keepalive
packets to a dedicated method.

Bug: 196453719
Test: atest FrameworksNetTests
Change-Id: If72b4875e65a547bbf90367eacce7b145358006a
2023-06-07 02:05:10 +00:00
Jean Chalard
78efbdcad1 Merge "Fix a bug where the PAC proxy port is not set correctly." am: f2b38772ac am: 19fec43662 am: 9a0b1f2653
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1729153

Change-Id: I1612e3a0360961267264c80ecff16ec49e75f33e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-06-06 14:23:47 +00:00
Aaron Huang
9fe47bee09 Fix a bug where the PAC proxy port is not set correctly.
Test: new test for this behavior in the preliminary change
Test: FrameworksNetTests NetworkStackTests
Fixes: 138810051
Fixes: 140610528
Change-Id: I95a979d232fb60ece2e33e972bf5d66d20357a1f
2023-06-05 20:24:59 +09:00
Chiachang Wang
bfe3e5f09f Merge "DO not throw exception for ERROR_NO_SUCH_SLOT error" am: 95336cf4fc am: d57116437b am: 603226c26c
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2593906

Change-Id: I1c7eda50caca646220770b41a4e3118f6fb7521b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-23 09:07:08 +00:00
Chiachang Wang
95336cf4fc Merge "DO not throw exception for ERROR_NO_SUCH_SLOT error" 2023-05-23 07:13:52 +00:00
Treehugger Robot
23b5cfc7b9 Merge "Improve doc for CSM#setGlobalProxy" am: b92d8ccd39 am: 4602fea1d7 am: a93c6bc35b
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2535862

Change-Id: I4b47ed572869e29d9bde626736dd72d36d11cd98
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-23 06:18:46 +00:00
chiachangwang
75673ba502 DO not throw exception for ERROR_NO_SUCH_SLOT error
There are multiple independent reasons a keepalive can stop. Some
are software (e.g. the app stops the keepalive) and some are hardware
(e.g. the SIM card gets removed). Therefore, there is a very low
probability that both of these happen at the same time, which would
result in the first stop attempt returning SUCCESS and the second
stop attempt returning NO_SUCH_SLOT. Such a race condition can be
ignored with a log, not to crash the system. Change to wtf log so
that the issue could still be visible since this implies possible
bugs in the system.

Also update the javadoc for SocketKeepalive.ERROR_NO_SUCH_SLOT.

Bug: 281484381
Test: atest FrameworksNetTests
Change-Id: I316a2193fc7302b04e074ff0b03dc43946fe5ce6
2023-05-23 05:08:45 +00:00
Treehugger Robot
b92d8ccd39 Merge "Improve doc for CSM#setGlobalProxy" 2023-05-23 04:04:45 +00:00
Treehugger Robot
73382087f7 Merge "LinkProperties: use ordered comparison for P-CSCFs - only on U+" am: 78e158f2bb am: 9135b92758 am: 2d613cdfae
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2596485

Change-Id: I05115f338e749f7aecab2e2feea6fa9a611c9165
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-22 07:27:11 +00:00
Maciej Żenczykowski
f7939fa8d1 LinkProperties: use ordered comparison for P-CSCFs - only on U+
to make sure a mainline update doesn't break devices in the field

Test: TreeHugger
Bug: 268479036
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: Iadcd861509d31b3ed6352d452a159cd89af479dd
2023-05-18 05:57:51 +00:00
Motomu Utsumi
dfa632c82a Merge "Fix agents disconnecting in SUSPENDED state." am: ec4511c8aa am: e3b728f350 am: 2f427efa76
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2583410

Change-Id: I19069133f3fc54c652cc41cc2a3a9b5ffdf0afc3
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-17 03:52:31 +00:00
Motomu Utsumi
ec4511c8aa Merge "Fix agents disconnecting in SUSPENDED state." 2023-05-17 01:59:18 +00:00
wangshengrjxtjcb
fd5d3d90e1 Fix agents disconnecting in SUSPENDED state.
Network state is not changed to disconnected when a networkagent
is disconnected and network state is SUSPENDED.

So the function requiresClat return true. Clat is not stoped.

Bug: 277682237
Test: atest FrameworksNetTests

Change-Id: I5edfcf64aca5d2d34325d722dd29fab41bcf2600
2023-05-16 16:35:03 +09:00
Maciej Żenczykowski
ca93b277a8 Merge "LinkProperties: use ordered comparison for P-CSCFs." am: 7428de995b am: 9a53283d62 am: 1216106e15
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2580731

Change-Id: I20056e70c719ffb8533b750237a32a93b348e3bf
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-15 19:42:42 +00:00
Maciej Żenczykowski
7428de995b Merge "LinkProperties: use ordered comparison for P-CSCFs." 2023-05-15 17:32:01 +00:00
Patrick Rohr
3b5a398a96 Merge changes from topic "delete-cronet-disabled-support" am: f128ba3461 am: 8edcdc1e82 am: a5b0af14a2
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2585017

Change-Id: If7c086fec1c55b2e9d831bafe6808bd92c545a25
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-15 06:28:44 +00:00
Patrick Rohr
740b1d4ac3 cronet: Move cronet defaults to framework/Android.bp
Since cronet has moved out of the tethering jar.

Test: TH
Change-Id: Ibf476c0afd72863b26188dae6838825e6762976a
2023-05-12 10:15:01 -07:00
Maciej Żenczykowski
b0fc6627a6 LinkProperties: use ordered comparison for P-CSCFs.
P-CSCF list is ordered list. Two lists with same servers but
in different order are not equal. Use proper comparison.

The P-CSCF address is a kind of entry point (proxy) of Server
for IMS transaction between device and IMS Server.  It can have
multiple addresses as a list. Even if the same addresses have
different orders, it is assumed that the server order has changed.

Bug: 268479036
Test: TreeHugger
Change-Id: Ia1884f37739a20d871dd0024cc72cb18c083dc8e
2023-05-07 13:14:15 +00:00
Treehugger Robot
f8002754fe Merge "Expose internal representation of transport types." am: c745e52e04 am: 246958a796 am: cedcc69717
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2567453

Change-Id: I40c6e5ecae90ff2e969f2506660108a410e334f7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-05-02 14:25:04 +00:00
Treehugger Robot
c745e52e04 Merge "Expose internal representation of transport types." 2023-05-02 06:43:07 +00:00
Motomu Utsumi
ddc0e449f0 Merge "Move ConnectivityResources to service-connectivity" am: a746ab1d68 am: a11a47b70f am: d8e8c72984
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2446025

Change-Id: Ie6185306ab1b3f30ad69fd952513e9899be18d5e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-28 22:59:06 +00:00
Remi NGUYEN VAN
bee2ee14f3 Move ConnectivityResources to service-connectivity
The ConnectivityResources class is only usable with QUERY_ALL_PACKAGES
permission, so it is not generally usable in framework-connectivity. It
is also backed by the ServiceConnectivityResources APK, which is
intended as resources for service-connectivity.

Move the class to service-connectivity and update callers. CTS needs a
way to determine the supported keepalive count as it used the
resources from KeepaliveUtils as @hide API, so provide a
ConnectivityManager @hide API for testing.

Bug: 279108992
Test: atest
Change-Id: I3c9a77c580b5ab87c922c32778bce15dc33b4d1d
2023-04-28 19:18:39 +09:00
Hansen Kurli
13189e957d Expose internal representation of transport types.
Add getTransportTypesInternal as a hidden api for internal callers. This
will be used for any metrics that need to store the transport types of a
network.

Bug: 273451360
Test: atest FrameworksNetTests
Change-Id: I527638e5408e7971a450135345e7e51b6125d665
2023-04-26 13:09:35 +00:00
Treehugger Robot
7f7ce481f9 Merge changes I33bc80cc,Ie84e2cd4 am: fd402476f1 am: 0d3d27ecc1
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2384592

Change-Id: I42ea6b11578823dd3adf7768edee98c992127e52
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-20 19:54:54 +00:00
Treehugger Robot
0d3d27ecc1 Merge changes I33bc80cc,Ie84e2cd4 am: fd402476f1
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2384592

Change-Id: Id8d9a686e729b920826f0b6e205f770768585925
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-20 18:32:02 +00:00
Treehugger Robot
fd402476f1 Merge changes I33bc80cc,Ie84e2cd4
* changes:
  EthernetManagerTest: update tests that bring up tap without carrier
  TestNetworkService: use IFF_NO_CARRIER to bring up iface without carrier
2023-04-20 18:01:28 +00:00
Maciej Żenczykowski
da7b9a60b0 Merge "switch to classic bpf macros" am: ea07e4dff2 am: ef5a6afcd8
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2480336

Change-Id: Id81641723a3b2109cb63702d06ce3b41e1846e81
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-19 20:34:37 +00:00
Maciej Żenczykowski
ef5a6afcd8 Merge "switch to classic bpf macros" am: ea07e4dff2
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2480336

Change-Id: Ic1f267f32710e2dc31249b0b2b1222577cb8b43c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-19 19:48:49 +00:00
Maciej Żenczykowski
ea07e4dff2 Merge "switch to classic bpf macros" 2023-04-19 19:37:02 +00:00
Motomu Utsumi
43007b14df Merge "Move cronet to framework-connectivity" am: 8b02a2682a am: ceb9f59803
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2535863

Change-Id: I42bfc86f2f004faddf8ce71ace0ce7c3feb1c895
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-19 07:32:33 +00:00
Motomu Utsumi
ceb9f59803 Merge "Move cronet to framework-connectivity" am: 8b02a2682a
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2535863

Change-Id: I0d22e595a4df67e3cf7c4300714b8e6bf736703d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-19 06:47:45 +00:00
Motomu Utsumi
73e2e87d56 Move cronet to framework-connectivity
aosp/2384137 added cronet to framework-tethering.
But framework-connectivity is a better place to put cronet since
cronet does not work on R devices (b/270049141) and
framework-tethering is R+, framework-connectivity is S+.

Followup CLs will move some modules (e.g. CronetJavaPrejarjarDefaults)
that use the branch dependent soong variables to framework/Android.bp

Test: TH
Bug: 278070640
Change-Id: I6bc10116759fb9e083c02147908e53022dab740a
2023-04-19 11:32:12 +09:00
Maciej Żenczykowski
32b46a4d36 switch to classic bpf macros
Note: this switches
  com_android_networkstack_tethering_util_setupIcmpFilter
over to relative cbpf which in turn is called from:
  com_android_networkstack_tethering_util_setupNaSocket
  com_android_networkstack_tethering_util_setupNsSocket
and tested by p/m/C's:
  TetheringUtilsTest.java - testIcmpSocketFilters()

Test: TreeHugger, atest TetheringUtilsTest
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I22a5ea8f8e3b879a37fe4acd84f61020661eaa71
2023-04-19 00:06:15 +00:00
Chiachang Wang
cfdedd1d02 Merge "Separate events usage for starting socket keepalives" am: 2cf6b2c4fd am: 56a01b57e4
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2535341

Change-Id: Ifbcefecfb70076edeffd115a4d465821e3a58e41
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-17 02:54:47 +00:00
Chiachang Wang
56a01b57e4 Merge "Separate events usage for starting socket keepalives" am: 2cf6b2c4fd
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2535341

Change-Id: Ifa574e6fa845967d1c389fc9a825418d0993e9a2
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-04-17 02:41:27 +00:00
Chiachang Wang
2cf6b2c4fd Merge "Separate events usage for starting socket keepalives" 2023-04-17 02:32:00 +00:00