Commit Graph

95122 Commits

Author SHA1 Message Date
Remi NGUYEN VAN
0d6c308c39 Merge "Add API to set the sll_protocol on PacketSocket" 2019-11-01 04:34:44 +00:00
Phil Weaver
f4d1789b81 Merge "a11y: don't crash the system when illegal component name encounted" 2019-10-31 01:29:30 +00:00
Ruoyao Liu (刘若尧)
51038e8b3c Add API to set the sll_protocol on PacketSocket
Problem & Root cause:
the mInterfaceBroadcastAddr.sll_protocol is not assigned when the
interface initializes, sll_protocol is 0x0000 by default.
This causes packets to be filtered incorrectly in packet capture,
typically with tcpdump. The previous API is used by DhcpClient, causing
DHCP tx messages to not be recognized properly.

Background: inside the kernel packets carry both an ethertype metadata
(skb->protocol) and may also carry a real ethertype in the mac header.

Previously skb->protocol would be inherited from the socket either from
the protocol from socket() creation or from bind().  This was zero,
so skb->protocol would end up 0, even though the DHCP packets we actually
wrote would have the right on-the-wire ethertype populated in the bytes
passed to send().

As such DHCP packets would look correctly on the wire, but were lacking
the skb->protocol metadata to correctly tag them as IPv4.

This results in 'tc' and packet hooks potentially not triggering
correctly, and can thus result in tcpdump 'ipv4' filters discarding
these packets leading to confusing/erroneous tcpdump output.

In newer kernels (somewhere around 5.3), if socket protocol is 0, we
actually parse out the right ethertype from the mac header during send().

However, for old kernels we can't rely on this kernel magic, and the
right fix is simply to make sure that socket bound protocol is correctly
set to ipv4 [htons(ETH_P_IP)] in the bind() system call.

Solution:
  Add a new constructor in SocketUtils to set the protocol parameter.
Bug: 133196453
Test: manual test
Change-Id: I07887b82e0e32aadb0cbb9f930f2b2fa3e277ca9
2019-10-30 06:26:10 +00:00
Steven Moreland
2a6f6ed94b Merge "ServiceManagerProxy: implement new method" 2019-10-29 15:45:43 +00:00
Peter Wang
0ecde1f5f9 Fixed java doc for EuiccService#eraseSubscriptions
Bug: 143138878
Test: on device
Change-Id: I2a9ab4fe4e1c48fc7e7178b1de9b1f72b0408183
Merged-In: I2a9ab4fe4e1c48fc7e7178b1de9b1f72b0408183
2019-10-28 12:40:23 -07:00
Peter Wang
ca01a7ee08 Merge "Add EuiccCardManager.ResetOption to eraseSubscriptions" 2019-10-28 19:32:18 +00:00
Steven Moreland
2cd23b6a59 ServiceManagerProxy: implement new method
This class is hanging around for UnsupportedAppUsage. Adding additional
method to fix compilation, but it should never be called.

Bug: 135686713
Test: compilation fixed
Change-Id: I58022af86a53239990e057936826d0f1214acc6f
2019-10-28 11:17:15 -07:00
Xin Li
b2198fa670 Merge "Merge Coral/Flame into AOSP master" 2019-10-27 04:44:29 +00:00
Peter Wang
2ab852d411 Add EuiccCardManager.ResetOption to eraseSubscriptions
Bug: 139474431
Test: on device
Change-Id: Ib8496ed6dbc6179940892de8df7901e84dd67d76
Merged-In: Ib8496ed6dbc6179940892de8df7901e84dd67d76
2019-10-25 14:26:22 -07:00
Xin Li
d3498e3053 Merge Coral/Flame into AOSP master
Bug: 141248619
Change-Id: Ic0486c8c79d94c9a30efa37676b2f6a94fb7b5fa
Merged-In: Ibe8ff7bdba7a886bd8b91155ae56f087a836981f
2019-10-25 10:27:58 -07:00
Chen Xu
7e902363a6 Merge "make CallerInfo as SystemAPI" 2019-10-25 17:27:45 +00:00
Howard Chen
7898d33e3a Merge "Use new GsiInstallParams struct" 2019-10-25 07:18:57 +00:00
Howard Chen
e176c56f6e Use new GsiInstallParams struct
Bug: 139402092
Test: adb shell am start-activity \
            -n com.android.dynsystem/com.android.dynsystem.VerificationActivity \
            -a android.os.image.action.START_INSTALL \
            -d file:///storage/emulated/0/Download/system.raw.gz \
            --el KEY_SYSTEM_SIZE $(du -b system.raw|cut -f1) \
            --el KEY_USERDATA_SIZE 8589934592

Change-Id: I62330ccbe3c863850b545db5e911196d22f518d7
2019-10-24 21:34:43 +00:00
Neil Fuller
eef56a4e6c Merge "Fix docs to be clearer and more maintainable"
am: 7e62a930a1

Change-Id: I9803c6c8dc78bfd2f86d7850368dfb9ad82ebbf6
2019-10-24 03:09:07 -07:00
Neil Fuller
7e62a930a1 Merge "Fix docs to be clearer and more maintainable" 2019-10-24 09:51:07 +00:00
Michele
e8eefec918 Merge "Removal of usage of hidden APIs"
am: 78b20d0d58

Change-Id: I81d1791744a419b1f0a38559335b83bab3b80512
2019-10-23 23:24:38 -07:00
Michele
db421f56e8 Removal of usage of hidden APIs
Moved RESOLUTION_ACTIONS from EuiccService to EuiccResolutionUiDispatcherActivity,
so that it does not need to be made public.

Bug: 137202333
Test: compilation
Change-Id: If8011bbe6af32c038f55d851acc2406eba208de6
Merged-In: If8011bbe6af32c038f55d851acc2406eba208de6
2019-10-24 00:26:22 +00:00
Myles Watson
31d16458cc Merge "Bluetooth doc: The is a -> This is a"
am: c8d3cde31e

Change-Id: Ibd5c32da0420d3b32f43bb3f14453d08e231ffa5
2019-10-23 15:52:31 -07:00
Treehugger Robot
c8d3cde31e Merge "Bluetooth doc: The is a -> This is a" 2019-10-23 22:32:54 +00:00
Myles Watson
1254da6333 Bluetooth doc: The is a -> This is a
Fixes: 142364826
Test: build
Change-Id: I9bde35140bdfc4d76df7e8c427ac6e8baceee611
2019-10-23 20:38:57 +00:00
TreeHugger Robot
bb326f9a80 Merge "Use language tags to store Configuration's locale list." into stage-aosp-master 2019-10-23 17:15:26 +00:00
Lucas Lin
eb24608dbc Merge "Better notification to user when DNS-over-TLS is broken"
am: 81852c8481

Change-Id: I8be963e35ed5e5ba914c6d3504a52ccb789aaf29
2019-10-23 02:51:56 -07:00
Lucas Lin
81852c8481 Merge "Better notification to user when DNS-over-TLS is broken" 2019-10-23 09:20:09 +00:00
Varun Shah
b53b34487b Use language tags to store Configuration's locale list.
Instead of storing each Locale within a Configuration object's locale
list by its language, country, variant, and script to proto, store the
entire locale list by its language tags representation which accurately
describes each locale.

Bug: 140197723
Test: atest ConfigurationTest
Test: atest UsageStatsDatabaseTest
Test: manually with bad data
Merged-In: I53946ed4e31de0ffe9c84875c391a7dec6f5375a
Change-Id: Idaae690f79a5c680ad0059a52be62160d9dfb5e7
(cherry picked from commit 5e67462971)
2019-10-22 22:52:49 +00:00
Anna Trostanetski
4cfb3545d6 Merge "Add a native aidl API."
am: 577e3114da

Change-Id: I22c7963991747fe1e27dce432da3fc02c644bbef
2019-10-22 13:20:59 -07:00
atrost
ff948d8a2f Add a native aidl API.
Introduce a platform_compat_native service that just calls the
platform_compat service.
The new service is needed as it needs a slightly different (more
limited, no ApplicationInfo in cpp) aidl API, and a class can only
extend one stub.

Test: Call the service from dumpsys.cpp (http://aosp/1142055)
Bug: 138275545
Change-Id: Ic46cc34b4c1dd4ebc6bcc996fb3f8503607214ac
Merged-In: Ic46cc34b4c1dd4ebc6bcc996fb3f8503607214ac
2019-10-22 18:54:13 +00:00
lucaslin
783f221065 Better notification to user when DNS-over-TLS is broken
Provide a specifc notification to let users know that device
has no internet is because it really doesn't have internet access
or it's caused by private DNS resolution failed.

Bug: 113242081
Test: atest FrameworksNetTests
Change-Id: I710c88a4742f5fd56c39fc797d7fa3ad36dba553
2019-10-22 18:27:33 +08:00
Chen Xu
fba9ca44a2 make CallerInfo as SystemAPI
1. move CallerInfo from telephony.internal to andorid.telephony package
2. expose APIs inside CallerInfo which are consumed by non-telephony
code.

Bug: 140908357
Test: Build
Change-Id: Ie95897c77e97e40f5357c107aede82edfea44d5a
(cherry picked from commit b9a1eefec6)
Merged-in: Ie95897c77e97e40f5357c107aede82edfea44d5a
2019-10-21 21:39:58 -07:00
Shuo Qian
9208fc5a0a Merge "Emergency number database config updater"
am: ca0f14ec1a

Change-Id: Ice41292677b52fe62fa860960fe62a29e28068dc
2019-10-21 13:22:50 -07:00
Shuo Qian
ca0f14ec1a Merge "Emergency number database config updater" 2019-10-21 19:59:39 +00:00
Neil Fuller
3150e58082 Merge "Make TimeDetectorService more aware of origin"
am: 4ef2551dfa

Change-Id: I27866cf74b779bb0040f4ace384207047ca6838f
2019-10-21 11:53:20 -07:00
Neil Fuller
af3eeaf431 Make TimeDetectorService more aware of origin
Make TimeDetectorService more aware of a time signal's origin by making
the time signal from telephony less generic.

When TimeDetectorService was written it was assumed that the TimeSignal
could be generic and there would just be a String source identifier to
indicate origin.

With multiple SIMs / phones on a device it makes sense to keep track of
the originating phone of the signal so that the time detector service
could implement stickiness if it wanted. This would avoid a device
alternating back and forth between two signals and help with debugging.

As new signals are added, new "suggestXxxxTime()" methods will be added
to TimeDetectorService. That is the point at which the strategy for
ranking different sources can be decided. e.g. should NTP always rank
higher than NITZ?

The main change here is that TimeSignal is renamed to
PhoneTimeSuggestion to indicate it's only for use by signals from
telephony, sourceId has been removed and it has been given a phoneId
instead. Extra free-form metadata (mDebugInfo) has been added to assist
with logging / debugging.

Bug:140712361
Test: atest android.app.timedetector
Test: atest com.android.server.timedetector
Change-Id: I5305c34516e5f4e254309193183f00e054801a46
2019-10-21 08:42:50 +01:00
Neil Fuller
2422489f3d Fix docs to be clearer and more maintainable
The mention of P in the doc was unclear. Also, listing the specific
values allowed is a maintenance issue.

Test: None
Change-Id: I9c46eec353090ecd822f10a0a9e8433fa46246a0
2019-10-18 17:41:56 +01:00
Jimmy Chen
58d08de0c6 Merge "p2p: mirgrate p2p into tethering modes"
am: 8a9a9adaeb

Change-Id: Ib8f43d77a5f57965fa217e6e92eb9773e7914b54
2019-10-17 23:06:04 -07:00
Jimmy Chen
8a9a9adaeb Merge "p2p: mirgrate p2p into tethering modes" 2019-10-18 05:42:31 +00:00
Aaron Huang
0688f9b6b1 Merge "Expose MacAddress methods to public API"
am: 7b98130570

Change-Id: I98c2104fe5307e916bd2026eb943bfe4a9913d07
2019-10-17 20:55:36 -07:00
Aaron Huang
7b98130570 Merge "Expose MacAddress methods to public API" 2019-10-18 03:45:40 +00:00
Shuo Qian
2f349da995 Emergency number database config updater
Test: https://paste.googleplex.com/5345498821033984
Bug: 136027884
Change-Id: I0fbd48fe8ef5e008af714312859b513a22679fcb
Merged-In: I0fbd48fe8ef5e008af714312859b513a22679fcb
(cherry picked from commit 8163b80a7e)
2019-10-17 23:42:06 +00:00
Aaron Huang
f857470625 Expose MacAddress methods to public API
To support mainline modules, adding the methods which
are used by wifi.

Bug: 139268426
Bug: 135998869
Bug: 138306002
Test: atest android.net.cts
      atest android.net.wifi.cts
      atest FrameworksNetTests
      atest NetworkStackTests
      ./frameworks/opt/net/wifi/tests/wifitests/runtests.sh

Change-Id: I49856863c15b6b3b59aa867a77b0f137003149ef
2019-10-15 17:33:05 +08:00
TreeHugger Robot
ee4eb8c39d Merge "DO NOT MERGE - Merge QD1A.190821.011 into stage-aosp-master" into stage-aosp-master 2019-10-15 00:24:25 +00:00
Xin Li
5c4d37fc17 DO NOT MERGE - Merge QD1A.190821.011 into stage-aosp-master
Bug: 141248619
Change-Id: I078f35ceef06ae7d08c5de385fd023c71c1ecbac
2019-10-14 22:54:53 +00:00
Treehugger Robot
2f1d3ac4f4 Merge "[DO NOT MERGE] Update PermissionChecker usages to avoid unnecessary attribution." 2019-10-14 21:44:51 +00:00
Philip P. Moltmann
b8b4015e2b Merge "[DO NOT MERGE] Update PermissionChecker usages to avoid unnecessary attribution." into stage-aosp-master 2019-10-14 20:47:48 +00:00
Neil Fuller
209c74f8b6 Merge "Make TimestampedValue Parcelable"
am: 81a705690b

Change-Id: I68edcf15ec9bef69a26267d9bf0c036e38ce93d4
2019-10-14 11:43:18 -07:00
Treehugger Robot
81a705690b Merge "Make TimestampedValue Parcelable" 2019-10-14 18:33:43 +00:00
Svet Ganov
484271bc7e [DO NOT MERGE] Update PermissionChecker usages to avoid unnecessary attribution.
We had accidental usages of the PermissionChecker for cases where no
private data was provided to the app but the checkPermission API on
the latter also did blame data access on the app. The PermissionChecker
was designed to handle IPC calls and not for generic API checks.

To avoid future accidental incorrect PermissionChecker usages this
change renames the existing APIs of the latter to clearly indicate
that they should be used for data delivery and also adds sibling
methods for doing the same permission checks for preflight purposes.
Also the documentation is improved to furhter assist developers.

In addition, this change fixes accidental permission checker usages
that blame when they should not by using the new preflight flavor
of the permission check APIs.

Test:
    atest com.android.settingslib.location.RecentLocationAppsTest
    atest CtsPermissionTestCases
    added: LocationAccessCheckTest#notificationOnlyForAccessesSinceFeatureWasEnabled
    added: LocationAccessCheckTest#noNotificationIfFeatureDisabled
    added: LocationAccessCheckTest#noNotificationIfBlamerNotSystemOrLocationProvider
    added: LocationAccessCheckTest#testOpeningLocationSettingsDoesNotTriggerAccess

Bug:141028068
Change-Id: I89f4add79a55c3c8d6fbe8d57decaa78fe12f0f9
Merged-In: I65c71569d0dd8a40bc6fecabb22c5373dd6e806e
2019-10-14 17:22:30 +00:00
Svet Ganov
534b728a1e [DO NOT MERGE] Update PermissionChecker usages to avoid unnecessary attribution.
We had accidental usages of the PermissionChecker for cases where no
private data was provided to the app but the checkPermission API on
the latter also did blame data access on the app. The PermissionChecker
was designed to handle IPC calls and not for generic API checks.

To avoid future accidental incorrect PermissionChecker usages this
change renames the existing APIs of the latter to clearly indicate
that they should be used for data delivery and also adds sibling
methods for doing the same permission checks for preflight purposes.
Also the documentation is improved to furhter assist developers.

In addition, this change fixes accidental permission checker usages
that blame when they should not by using the new preflight flavor
of the permission check APIs.

Test:
    atest com.android.settingslib.location.RecentLocationAppsTest
    atest CtsPermissionTestCases
    added: LocationAccessCheckTest#notificationOnlyForAccessesSinceFeatureWasEnabled
    added: LocationAccessCheckTest#noNotificationIfFeatureDisabled
    added: LocationAccessCheckTest#noNotificationIfBlamerNotSystemOrLocationProvider
    added: LocationAccessCheckTest#testOpeningLocationSettingsDoesNotTriggerAccess

Bug:141028068
Change-Id: I4a74d4906f92e323fbd30b9b25011129895afc9a
Merged-In: I89f4add79a55c3c8d6fbe8d57decaa78fe12f0f9
Merged-In: I65c71569d0dd8a40bc6fecabb22c5373dd6e806e
2019-10-14 17:15:38 +00:00
Jon Spivack
fa830219cd Merge "Made libbinder's waitForService accessible in java"
am: 3ef1b5e544

Change-Id: I70972120fcb7dd7cbe664750409bfd00a41e0a62
2019-10-11 18:06:40 -07:00
Jon Spivack
3ef1b5e544 Merge "Made libbinder's waitForService accessible in java" 2019-10-12 00:50:43 +00:00
Jon Spivack
9e45fde5e9 Made libbinder's waitForService accessible in java
waitForService is used to lazily start AIDL services

Bug: 138756857
Test: Manual (tested starting gsiservice with this function)
Change-Id: I7ff16b014052d3845bd4b1baa8fc9843e7975a16
2019-10-11 15:15:02 -07:00