Commit graph android_packages_modules_Co.../core
Message SHA1
MacAddress: Use SecureRandom and add a 46 bit randomized MAC generator
Use SecureRandom instead of Random since Random is time based and can
increase the chance of generating same MAC address across multiple
devices.

createRandomUnicastAddress should randomize all bits of the address,
except for locally assigned bit and unicast bit. The previous method
that only randomizes NIC and use Google Base OUI is renamed to
createRandomUnicastAddressWithGoogleBase.

Bug: 72450936
Test: runtest frameworks-net
Change-Id: Icda650638c2c1c9fd90d509a87e86347c0e05f2d

Jong Wook Kim   commited 2018-02-07 01:28:46 +00:00
93dd5e6964
Rework KeepalivePacketData for Compatibility with Cell
KeepalivePacketData currently mixes multiple concepts: the
list of parameters that are used to generate a keepalive
packet, the keepalive packet itself, and the parameters that
are needed to send a keepalive packet over an ethernet link.

The KeepalivePacketData is now a parcelable that can be used
generically by any NetworkAgent, regardless of how that Agent
fulfills its duty to initiate and maintain a keepalive session.

Bug: 69063212
Test: verified with SL4A, additional tests pending
Merged-In: I23dc4827ae729583356a8ff0f02e39a2ad2b81f5
Change-Id: I23dc4827ae729583356a8ff0f02e39a2ad2b81f5
(cherry picked from commit 5be3f5a2b1)

Nathan Harold   commited 2018-01-29 11:20:20 -08:00
7f8d0be10d
Relocate KeepalivePacketData to frameworks/base
Due to an issue resolving the boot classpath, the
KeepalivePacketData structure cannot be referenced
by frameworks/opt/telephony while it is in services.

-Move KeepalivePacketData to android.net
-Also, relocate IpUtils without changing the package
 name.

Bug: 38350389
Test: compilation
Merged-In: If5fc63e9ad8b9b2d4c2fee47ff4bab2ab190a05a
Change-Id: If5fc63e9ad8b9b2d4c2fee47ff4bab2ab190a05a
(cherry picked from commit f8a2bc3eee)

Nathan Harold   commited 2018-01-29 11:19:43 -08:00
583c95be3b
Fix a bug where a NetworkAgent gets repeatedly torn down
mUids is not marshalled correctly when null so if the
NetworkAgent runs in another process and is not a VPN then
the system will see its allowed Uids as being the empty
list (= nobody can use this network) instead of a null
list (= everybody can use this network). This breaks
emulator networking.

Bug: 72436966
Test: runtests frameworks-net
Test: also manual testing, this does fix emulator networking
      and seems not to break phone networking
Change-Id: Id2bbf3808e80b19cd055c832c11cf72372710942

Chalard Jean   commited 2018-01-25 04:51:44 +00:00
715d078639
Let network requests see VPNs.
Test: runtest frameworks-net
Test: also tested with VPN app
Test: also cts passing
Change-Id: I3b16caad7787c3c1f2921ca1583815c89efbadc5

Chalard Jean   commited 2018-01-23 21:38:00 +09:00
fd3a4ae0fe
Make sure listen requests from VPN apps see their own networks
Test: runtest frameworks-net
Test: CTS pass, including with the next patch which is what this
      actually matters for

Change-Id: I09a94042acbefa24ab884f95326e30d6ab280b82

Chalard Jean   commited 2018-01-23 21:38:00 +09:00
b399bf16d1
Remove UID_RANGES_ADDED and REMOVED.
Test: runtest frameworks-net
Test: also tested with VPN app
Test: also cts passing
Change-Id: I3530030996daeba05a8f2fffc5c6e21ed62e3f40

Chalard Jean   commited 2018-01-23 21:38:00 +09:00
b2a4991781
Move VPN allowed UIDs into NetworkCapabilities.
Test: runtest frameworks-net
Test: also new specific tests for this new code
Test: also tested with VPN app
Test: also cts passing
Change-Id: If0311bae2bf99dedac959febadecf4f92f3064b8

Chalard Jean   commited 2018-01-23 21:38:00 +09:00
753d9734d2
Pre-import to remove a conflict.
Test: compiles and passes checkstyle
Change-Id: I1ffdd88e6268fee0cf88992420ab21eb42928957

Chalard Jean   commited 2018-01-23 21:38:00 +09:00
cbe99b35a0
Merge "Add "not congested" network capability."
Jeff Sharkey   authored and   Gerrit Code Review   commited 2018-01-18 03:28:34 +00:00
8a06cca651
Merge "Add public API methods for private DNS."
Lorenzo Colitti   authored and   Gerrit Code Review   commited 2018-01-18 01:17:17 +00:00
6cba185910
Add public API methods for private DNS.
Test: Small modifications to LinkProperties test.
Bug: 71828272
Change-Id: Id2f5acb5469132ec4a917837739f42085c71498e

dalyk   commited 2018-01-17 15:46:21 -05:00
7643abcbe3
Add "not congested" network capability.
Can be used by a network to indicate when it's congested, meaning that
apps should defer network traffic that could be done at a later time.

Test: bit FrameworksNetTests:android.net.,com.android.server.net.,com.android.server.connectivity.VpnTest,com.android.server.ConnectivityServiceTest
Bug: 64133169
Change-Id: I8a60b6f02dd0f42268b59690556c16335d34e220

Jeff Sharkey   commited 2018-01-17 02:27:04 -07:00
b04d5111ec
Merge "MacAddress: add @NonNull annotations"
Hugo Benichi   authored and   Gerrit Code Review   commited 2018-01-16 07:10:50 +00:00
bc3edde9c6
MacAddress: add @NonNull annotations
This patch adds to the MacAddress class:
  - getAddressType() method which replaces addressType(), for naming
  consistency
  - @NonNull annotations on all input and output reference values for
  all public methods (@hide and public).

TYPE_UNKNOWN, which currently cannot be observed with a non @hide
method, is also removed from the public api.

Bug: 71866627
Test: $ runtest frameworks-net
Change-Id: I2af70408d46f431b7b32183e6b48ddae9a261a2c

Hugo Benichi   commited 2018-01-16 13:32:59 +09:00
8f21758d4a
Change the netId to nethandle mapping.
Being able to update this handle is necessary to ensure that
system-only OTAs do not break vendor code that relies on
nethandles.

Bug: 63052780
Test: walleye builds, boots, networking works
Test: MultinetworkApiTest CTS tests passes
Change-Id: I049a4ad2610ca68b8f56377b63be7e5e8ce76039

Lorenzo Colitti   commited 2018-01-16 02:08:09 +09:00
5183e57449
Merge "Move more core networking tests to framework/base/tests/net."
Lorenzo Colitti   authored and   Gerrit Code Review   commited 2018-01-11 03:09:40 +00:00
d207b1faa3
Move more core networking tests to framework/base/tests/net.
Test: "runtest frameworks-net" passes except for already-failing IpConnectivityMetricsTest
Change-Id: I2a20d546089699ac67bc819f10a8fcd50c637ac4

Lorenzo Colitti   commited 2018-01-10 23:35:16 +09:00
a4fdc1204e
Add isMobileDataEnabled in TelephonyManager.
Added a new hidden API isMobileDataEnabled in TelephonyManager.
Rename related APIs to isUserMobileDataEnabled,
isUserMobileDataEnabled and setUserMobileDataEnabled to better
clarify their functionality.

Bug: 69814555
Test: build
Change-Id: I2f186f1e7550cafbe4ee3a5af293c39274cbfeaa
Merged-In: I2f186f1e7550cafbe4ee3a5af293c39274cbfeaa

Malcolm Chen   commited 2018-01-08 18:08:22 -08:00
acf59b8403
MacAddress: address api review comments
1) toSafeString() is renamed to toOuiString()
2) toOuiString() returns a String that only contains the first 3 bytes
   of the mac address.

Bug: 70336442
Test: runtest frameworks-net
Change-Id: I798d8fec32dbff5687a682028e5d90eb941f81c1

Hugo Benichi   commited 2017-12-18 09:22:47 +09:00
3f83b8ad4e
Expose the MacAddress class in the api
Test: built,  flashed, $ runtest frameworks-net
Bug: 69390696
Change-Id: Ica5efdf5ffe8ad2500a87f574508a2bcd074b33d
Merged-In: Ica5efdf5ffe8ad2500a87f574508a2bcd074b33d

(cherry picked from commit d411cf61ed5b948aaf6f6234217d6c6999c35159)

Hugo Benichi   commited 2017-12-18 09:21:26 +09:00
3f33d23522
Merge "Fix bug in MacAddress.fromString()"
am: cdb84d2fc7

Change-Id: If4c85f0a5ea259f53f9cffa6eacb58fcde1fd1df

Hugo Benichi   authored and   android-build-merger   commited 2017-12-05 09:47:50 +00:00
a31109c229
Fix bug in MacAddress.fromString()
Test: runtest frameworks-net
Bug: 69390696
Change-Id: I83f01e4915092e08ed201d9b6738bb02498d3bba

Hugo Benichi   commited 2017-12-05 13:14:08 +09:00
21c7a52042
Merge "MacAddress: light refactors and improve documentation"
am: d871cab32d

Change-Id: I51bb8786ecd7f53e3342625c7a2625007eedfc0f

Hugo Benichi   authored and   android-build-merger   commited 2017-12-04 23:38:27 +00:00
56eeb80dc5
MacAddress: light refactors and improve documentation
This patch does some light refactoring in MacAddress to prepare for
exposing MacAddress in the public api:
 - documention is improved
 - some method names are renamed
 - a toSafeString method is added
 - a padding bug in the conversion methods outputting strings for
   mac addresses is fixed

Bug: 69390696
Test: runtest frameworks-net
Change-Id: I399a97dabc2dfa8df9c5518c8b12484e43ca05c9

Hugo Benichi   commited 2017-12-04 22:34:43 +09:00
5bc3546cf6
Merge "Clarify docs, sanity check roaming state."
am: c80a1f23f3

Change-Id: Ic30d5aaadf2c59978162c53d7e7781847244ce52

Jeff Sharkey   authored and   android-build-merger   commited 2017-11-27 21:30:57 +00:00
8c089f392e
Clarify docs, sanity check roaming state.
Update public docs to hide the fact that NetworkCapabilities is only
used inside NetworkRequest as an implementation detail.

Take up less room on the wire when passing NetworkCapabilities around
via NetworkRequest.

Sanity check that the roaming state between NetworkInfo and
NetworkCapabilities is in agreement.

Test: bit FrameworksNetTests:android.net.,com.android.server.net.,com.android.server.connectivity.,com.android.server.ConnectivityServiceTest
Bug: 67040695
Change-Id: I982b4c3c41a140934bbad3b8ca8f12dc3814e86c

Jeff Sharkey   commited 2017-11-27 12:47:14 -07:00
9ff2ddd7e7
Merge commit '98e12851336b7db16e583f9afac63ecc97465980' from
oc-mr1-dev-plus-aosp-without-vendor into stage-aosp-master.

Change-Id: Ia7b8da4a00d215160e4a4fa40f6044208d1297b7
Merged-In: I19846d2a3ee27aecbae2367a74ee49082eea154d

Xin Li   commited 2017-11-14 12:31:11 -08:00
acae66beee
MacAddress follow-up: define the core of the class
Test: new unit test parts of $ runtest frameworks-net
Change-Id: I08c57d2d656802f7bdd7a93fde711a7e77247583

Hugo Benichi   commited 2017-11-09 16:36:45 +09:00
d380d14c4d
Define MacAddress class
Test: new unit tests part of $ runtest frameworks-net
Change-Id: I5a6a868ff86e9bffdc551d4e2bb486b585525c30

Hugo Benichi   commited 2017-11-08 11:09:49 +09:00
88ad29b907
Replace dns_tls with private_dns_mode setting
Also includes:
    - SettingsLib strings used in PrivateDnsModeDialogPreference
      interaction in the Settings app
    - rename ContentResolver "resolver" in methods working with
      DNS resolvers (too confusing)

Test: as follows
    - built
    - flashed
    - booted
    - runtest frameworks-net
    - no new failures in SettingsBackupTest nor in SettingsProviderTest
    - manual interaction with developer option works
Bug: 34953048
Bug: 64133961
Change-Id: Ia7502916db9ffa0792e1e500a35e34d06a88e79d

Erik Kline   commited 2017-11-07 12:47:36 +09:00
b0be3e6682
Define NOT_ROAMING network capability.
The "roaming" state of a network really belongs on NetworkCapabilities
instead of being published through NetworkInfo.isRoaming().  One major
reason is to support developers creating NetworkRequests for a
non-roaming network.

Watch for any capability changes that network statistics are
interested in (either metered or roaming) and notify it to perform
an update pass; fixes bug where we previously only triggered on
roaming changes.

Fix bug in VPNs where metered/roaming capabilities of underlying
networks weren't being propagated; this was probably preventing
some jobs from running over unmetered networks, and causing other
jobs to run over roaming networks!  Also passes along link bandwidth
information from underlying networks, and propegates any changes
to underlying networks.

Fix race condition by reading prevNc inside lock.  Utility methods
correctly calculate min/max link bandwidth values.

Test: bit FrameworksNetTests:android.net.,com.android.server.net.,com.android.server.connectivity.,com.android.server.ConnectivityServiceTest
Bug: 68397798, 16207332
Change-Id: I3e1a6544c902bf3a79356b72d3616af1fd2b0f49

Jeff Sharkey   commited 2017-11-01 19:05:42 -06:00
07e19362de
Merge "Track moving of OkHttp facade API to new package."
Tobias Thierer   authored and   Gerrit Code Review   commited 2017-10-30 17:40:36 +00:00
3af8a3d48a
Track moving of OkHttp facade API to new package.
Another CL in this topic moves the classes from
  libcore.net.http
to
  com.squareup.okhttp.internalandroidapi.
In jarjar'ed build targets, this becomes
  com.android.okhttp.internalandroidapi.

This facade constitutes the API via which non-libcore parts
of the Android platform (currently framework) may access
OkHttp. It's moving because libcore.net.http is already
part of libcore, and the overlap of packages is problematic
for builds with EXPERIMENTAL_USE_OPENJDK9 set to true.

Bug: 68220880
Test: Treehugger
Change-Id: Ia79966563cc0b5ab0923d54c21e54b6192d8c990
Exempt-From-Owner-Approval: Jeff Sharkey is an owner, but only one of his accounts is listed as an owner (@android.com vs. @google.com)

Tobias Thierer   commited 2017-10-30 17:40:23 +00:00
c8d921a034
Improve NetworkCapabilities docs.
Add IntDef for constants, and rely on new auto-documentation feature
to expand all of them at usage sites.

Test: docs-only change
Bug: 64133169
Change-Id: I8a6b5f54c8eb9d4fc7ae3d0d3fb673d52320664b

Jeff Sharkey   commited 2017-10-24 21:26:04 -06:00
20f339b7df
Merge "Import a few android.net unit tests into frameworks-net" am: f851fef87f am: bf80e2f376
am: 3d4d464f0a

Change-Id: Icf9ccd265754f1b85720bb778633dc5ef515646e

Hugo Benichi   authored and   android-build-merger   commited 2017-10-12 12:34:55 +00:00
cf9ab489de
Import a few android.net unit tests into frameworks-net
Bug: 62918393
Test: runtest frameworks-net
Change-Id: I3c7c60bcfeffec5c5ec287810312349237a2868a

Hugo Benichi   commited 2017-10-12 15:55:22 +09:00
87d306b45f
Merge "LinkProperties: fix some indentation issues" am: 4dea4936c7 am: 2d91ade1d8
am: a63788076a

Change-Id: Ife901fd1c9c30b3864ddce61326f2d5caacd0bae

Hugo Benichi   authored and   android-build-merger   commited 2017-10-10 14:31:48 +00:00
454cfa238a
LinkProperties: fix some indentation issues
Test: no functional change
Change-Id: I469bba154feb382156e56043d83f066a5bd658aa

Hugo Benichi   commited 2017-10-10 18:25:50 +09:00
875e9a419c
Merge "DO NOT MERGE Ignore DUN in describeImmutableDifferences" into oc-mr1-dev
am: b2f4b2e05d

Change-Id: I0236132b8b497af5b1c26aa44e6494fe0510cb6d

Hugo Benichi   authored and   android-build-merger   commited 2017-10-02 11:10:37 +00:00
1cae2642ad
Merge "DO NOT MERGE Ignore DUN in describeImmutableDifferences" into oc-mr1-dev
Hugo Benichi   authored and   Android (Google) Code Review   commited 2017-10-02 10:57:01 +00:00
b2f4b2e05d
DO NOT MERGE Ignore DUN in describeImmutableDifferences
This patch changes describeImmutableDifferences in NetworkCapabilities
to ignore differences in NET_CAPABILITY_DUN, so that updateCapabilities
in ConnectivityService to not report wtf errors when a NetworkAgent
degrades its NetworkCapabilities object by removing NET_CAPABILITY_DUN.

Bug: 65257223
Test: runtest frameworks-net
Change-Id: I115ed1b366da01a3f8c3c6e97e0db8ce995fd377

Hugo Benichi   commited 2017-10-02 15:03:57 +09:00
7f9a223134
Do not throw on call to isTetheringSupported w/o permission
...just return false instead.

Test: Made an app to test this. Made sure it doesn't have
Test: the required permission. Checked it crashes with
Test: SecurityException without this change. Checked that it
Test: doesn't with it.

Merged-In: Ib5b17a7f68c1327f47fe1f54c0454c51f4226907
Change-Id: Id20d3c240ec5d70d085e0366b92ab3a514f3e7c8
(cherry picked from commit ffacaef813)

Chalard Jean   commited 2017-09-28 16:34:39 +09:00
eb137aebc9
Adds necessary permissions to system apis
adds privileged permission for getCaptivePortalServerUrl
adds tether privileged permission for
startTethering,isTetheringSupported

bug:62348162

Test: make and manual testing
Change-Id: I8eb8e3c9dcd7201abe9ea303ee57fe99073d67eb

Udam Saini   authored and   Chalard Jean   commited 2017-09-27 12:14:37 +09:00
b4f31a2f56
Merge "Do not throw on call to isTetheringSupported w/o permission" into oc-mr1-dev
am: e545f00e10

Change-Id: Ib5b17a7f68c1327f47fe1f54c0454c51f4226907

Chalard Jean   authored and   android-build-merger   commited 2017-09-27 02:12:24 +00:00
8522ec6dcc
Do not throw on call to isTetheringSupported w/o permission
...just return false instead. This will change in P.

Test: Made an app to test this. Made sure it doesn't have
Test: the required permission. Checked it crashes with
Test: SecurityException without this change. Checked it
Test: doesn't with it.

Bug: 65404184

Change-Id: Id20d3c240ec5d70d085e0366b92ab3a514f3e7c8

Chalard Jean   commited 2017-09-26 19:25:48 +09:00
ffacaef813
Merge changes from topic "always-on-vpn"
* changes:
  Opt-out for always-on VPN: rename API.
  Opt-out for always-on VPN

Charles He   authored and   Gerrit Code Review   commited 2017-09-19 07:50:13 +00:00
65e8bd2e04
Merge "Fix LinkPropertiesTest.testCompareResult" am: 430d8472b2 am: 1c7c93e084
am: 3db86833e6

Change-Id: I72b0ca1b9b50dacb7067eb6ca12ca48a072b5d26

Rubin Xu   authored and   android-build-merger   commited 2017-09-19 06:51:07 +00:00
f49156fd33
Fix LinkPropertiesTest.testCompareResult
Test: runtest frameworks-core -c android.net.LinkPropertiesTest
Change-Id: Ie97b7a7a1557b14296d7c33e98991cdede8463b0

Rubin Xu   commited 2017-09-15 11:55:28 +01:00
830124470a
Merge "Refactor CompareResult<> class and its call sites" am: 414e97272f am: 027607ce4d
am: c345562746

Change-Id: I850f2ceab5949c2fceba5d25eda639a319efa7b3

Rubin Xu   authored and   android-build-merger   commited 2017-09-14 10:13:40 +00:00
3c737b4acc