Commit Graph

69694 Commits

Author SHA1 Message Date
Treehugger Robot
b7cbb2fe49 Merge "Bluetooth: Don't throw exception when stopAdvertisingSet fails" 2017-08-17 22:51:23 +00:00
Jakub Pawlowski
f73863dc29 Bluetooth: Don't throw exception when stopAdvertisingSet fails
When advertising is stopped while Bluetooth is disabled, we should not
throw any exceptions, just log the failure.
This was the default behaviour before the AdvertisingSet was introduced.

Bug: 63819108
Test: manual
Change-Id: I518e071b77b127973aee6f24fa6ced4f28bc9531
2017-08-17 07:39:02 -07:00
Jakub Pawlowski
f7bd6b26c7 Bluetooth: Fix startAdvertisingSet error handling
Calls to old advertising API (startAdvertising), should never throw
exceptions. Instead, it used to post failure callback. This behaviour
was accidentally modified when implementing new API. Right now, instead
of posting error callback, we throw IllegalArgumentException if we fail
to obtain BluetoothGatt object, or the call to startAdvertisingSet
fails.

This patch brings back the old behaviour to the API. It also makes new
API post callback instead of throwing exception in this error case.

Bug: 63819108
Test: manual
Change-Id: I897b99839f899ca3f3dc609918d665c8c327b777
2017-08-17 07:36:37 -07:00
Treehugger Robot
586fd52b34 Merge "Improve container capability bounding in containers" 2017-08-16 21:16:50 +00:00
Luis Hector Chavez
72042c99a6 Improve container capability bounding in containers
This change stops relying on the ro.boot.container property for dropping
a subset of capabilities and instead relies on the effective capability
mask of the Zygote process, prior to forking.

When Android is running in a pid/mount/net/user namespace, even if a
particular capability is present, some operations that require that
capability check whether it is allowed in the init namespace (instead of
in the current namespace), so they would fail even with the capability
granted within the namespace. So, explicitly dropping the capabilities
from the beginning allows for clearer signalling of which operations can
be expected to work instead of failing silently for mysterious reasons.

Bug: 63579953
Test: aosp_bullhead-eng still boots
Test: Running Zygote without CAP_SYS_MODULE makes it such that
      system_server does not request it.

Change-Id: I1d18d13341bcc04e701fd14092e7e94961728620
2017-08-16 08:21:58 -07:00
Treehugger Robot
2ad60c88f1 Merge "Add convenience methods to IpPrefix and LinkAddress" 2017-08-16 14:38:29 +00:00
Hugo Benichi
1dfb6b6755 Add convenience methods to IpPrefix and LinkAddress
Also moving relevant test files into tests/net as part of runtest
framworks-net.

Also removes testHashCode in LinkAddress() because this test relies on
the assumption that hashCode() is stable across releases or jdk
versions, which is absolutely not true.

This creates maintenance work for little benefit since hashCode is
already tested as part of the equality test.

For instance this test is now broken because hashing for InetAddress
changed.

Bug: 62988545
Bug: 62918393
Test: runtest frameworks-net, added coverage in tests
Change-Id: I695bc3f0e801bf13bc4fc0706565758f12b775b4
2017-08-16 21:42:21 +09:00
Treehugger Robot
2827f21740 Merge "More OWNERS file for core networking team" 2017-08-16 11:37:11 +00:00
Treehugger Robot
b35719a057 Merge "Allow NetworkAgent "immutable updates" to NetworkCapabilities" 2017-08-16 11:34:24 +00:00
Hugo Benichi
b8f1e4e6e4 More OWNERS file for core networking team
Test: build
Change-Id: I7cef188e29f487025aee04ab0c1a003bb32a7048
2017-08-16 18:40:07 +09:00
Hugo Benichi
bae105a5cc Allow NetworkAgent "immutable updates" to NetworkCapabilities
This patch loosens the validation checks when a NetworkAgent updates it
NetworkCapabilities: instead of checking that capabilities labeled as
"immutable" stay identical across updates, it is now accepted to change
immutable capabilities in a way that the new NetworkCapabilities
satisfies the old NetworkCapabilities.

This allows a NetworkAgent to update itself in order to match more
requests, but will still catch NetworkAgents that sends degradation
updates causing potentially requests to not match anymore.

Bug: 64125969
Test: runtest frameworks-net
Change-Id: I2a1b3f9c0be6415e40edc989d0c1b03b5631f7b1
2017-08-16 18:30:30 +09:00
Lorenzo Colitti
deb4eb5d05 Merge changes I82d3bee0,I9c9413d7
* changes:
  Pass data usage limits to tethering offload code.
  Don't time out when fetching tether offload stats.
2017-08-15 01:57:28 +00:00
Lorenzo Colitti
50b60fc34d Pass data usage limits to tethering offload code.
Bug: 29337859
Bug: 32163131
Test: builds
Test: OffloadControllerTest passes
Change-Id: I82d3bee030bafa8fe85855885b5fc3893e699181
2017-08-15 00:09:23 +09:00
Jakub Pawlowski
c7da241b3e Merge "Bluetooth: AdvertiseData parceling simplification" 2017-08-09 18:56:57 +00:00
Treehugger Robot
647b520a00 Merge "Enforce call log length limit on a per PhoneAccount basis." 2017-08-09 18:44:08 +00:00
Jakub Pawlowski
e8c3b91dc3 Bluetooth: AdvertiseData parceling simplification
Use writeTypedArray instead of writeList - this will not serialize
string with type name, which is unnecessary
Use createByteArray instead of readByteArra - it takes care of null and
empty array handling

Test: sl4a FilteringTest, BleAdvertiseApiTest
Change-Id: I6a22674a0bf9933e39691de7f2b2b52a060ae368
2017-08-09 17:26:14 +00:00
Tyler Gunn
c971bf1760 Enforce call log length limit on a per PhoneAccount basis.
Performing the auto delete based on the PhoneAccount of the new entry.
This ensures no one CS can cause the removal of entries by another.

Test: Manual
Bug: 38196259
Merged-In: I382cb62a1b2b7e482c49ece05f90fc982b797add
Change-Id: I382cb62a1b2b7e482c49ece05f90fc982b797add
2017-08-09 09:53:00 -07:00
Jakub Pawlowski
6732625aa0 Bluetooth: move AIDL files related to bluetooth into system/bt (1/2)
This patch moves *.aidl files from
frameworks/base/core/java/android/bluetooth into system/bt/binder. This
is in preparation to convert the Bluetooth deamon into native
implementation piece by piece.
In order to do that, one must have C++ header files, and paths to them
with AIDL files, and */java/* folder didn't seem as proper place for
that. Additionally, keeping AIDL files out of framework/base will not
require creating dependency on this huge project, which should help
keeping the compilation fast.

Test: compilation test
Change-Id: I9a6db8832c9ec3215c648e325d67278832ef22cc
Merged-In: I9a6db8832c9ec3215c648e325d67278832ef22cc
(cherry picked from commit 06ae9c665b)
2017-08-08 12:38:37 -07:00
Calin Juravle
89d087886d Merge "Update DexLoadReporter to comply with the new reporting API" 2017-08-08 17:03:21 +00:00
Colin Cross
5be3cbad27 Use class retention for VisibleForTesting annotations
The VisibleForTesting annotations are used by proguard to prevent
stripping code that is needed at runtime for tests.  The annotations
were marked with source retention, which worked fine with Jack's
proguard implementation.  When we switched back to javac + proguard,
the VisibleForTesting annotations are gone by the time proguard
sees the classes, so the annotated classes and methods can still
be stripped.

Move the VisibleForTesting annotation to class retention, which
matches guava's equivalent annotation.

Bug: 64365384
Test: m -j MtpDocumentsProvider &&
      javap -cp out/target/common/obj/APPS/MtpDocumentsProvider_intermediates/classes-proguard.jar com.android.mtp.MtpRoot

Change-Id: I63a467c2f0a21383eb9e4c9563fd6de2d994a373
Merged-In: I63a467c2f0a21383eb9e4c9563fd6de2d994a373
(cherry picked from commit 8e846143dd)
2017-08-07 11:07:15 -07:00
Hugo Benichi
2ecb9408f4 NetworkCapabilities: fix describeImmutableDifferences
This patch fixes the mask used in describeImmutableDifferences which did
not correctly turn NET_CAPABILITY_NOT_METERED into bit flag.

Bug: 63326103
Test: added unit tests, runtest frameworks-net
Change-Id: Ib6b390b1daef5912859302692af7dcd6cfd3e39a
2017-08-04 15:17:40 +09:00
Calin Juravle
cd8fbd25d3 Update DexLoadReporter to comply with the new reporting API
This is a partial cherry pick of commit
3bec94d78b.

It is partial because it only adapts DexLoadReporter to use the new
reporter BaseDexClassLoader.Reporter API.

Bug: 38138251
Test: make
Merged-In: I2486522fb811f9fc58a44b92642f43a41e7d5bac

(cherry picked from commit 3bec94d78b)

Change-Id: I4c41dbeb8a9297caac8b0eb936cf74832569f33e
2017-08-03 15:28:36 -07:00
Treehugger Robot
8773730cd9 Merge "Add owners for the network security config" 2017-08-02 17:10:11 +00:00
Treehugger Robot
49e2a9a612 Merge "Add hwbinder library" 2017-08-02 16:46:42 +00:00
Chad Brubaker
1ec48fc770 Add owners for the network security config
Test: build/make/tools/checkowners.py -c -v OWNERS
Change-Id: I9bb8f5ceaae4a1af8c93f5416a6a5cea42915c62
2017-08-01 15:50:22 -07:00
Love Khanna
0b5a37e876 Set default value for T3T_PMM.
If HCEF Application does not provide the T3T PMM value, set the
default value (FFFFFFFFFFFFFFFF) as per NCI specification.

Bug: 64112415
Test: CTS Verifier; HCE-F Reader/Emulator Test
Change-Id: I24f212d9bebd978342e4dd04d618572132e7eb4b
2017-08-01 17:26:21 +00:00
Sundong Ahn
28cc6e88fd Add hwbinder library
HAL impls will depend hwbinder.jar instead of framework.jar on
build-time, but on runtime framework.jar will be used.

This is to cut the circular dependency when using configstore from
Android framework. Also added JNI call to HwBinder.java to cut
configstore's dependency on systemproperty in framework.jar.

Note that hwbinder.jar is LOCAL_UNINSTALLABLE_MODULE and so it won't be
installed in an actual image.

Bug: 35771640
Test: build & run
Change-Id: I2420298cf9df5d6bbcead3e4451b703ce9bc3e29
2017-08-01 11:26:18 +09:00
Hugo Benichi
eae7a22944 Logging improvements when NetworkCapabilities change
This patch improves the wtf() logging in updateCapabilities to
better distinguish between the cases of a changed specifiers, changed
transports, or changed capabilities. The case of NOT_METERED being added
or removed is ignored.

Bug: 63326103
Test: runtest frameworks-net, runtest frameworks-wifi
Merged-In: I05c6e78891e1eac658f1cf883223af520a9a4f8f
Merged-In: I4f6cbc0adb461cef6610460daeba72ca38b8f10c
Merged-In: I165a8bbe8362100f1e2bb909459fb45b1c68d5ae
Merged-In: Iec6d92e9a3a12bab87c5adfaf17f776465077060
Merged-In: I633d6347a7f852c27c03fc96b36ca2a60f70c73c
Merged-In: I38739184fc0db105bfd3b4c02cce01e803739e5d
Merged-In: Ia58b877056e2442136cc8b145ac8f4e6560cfc2c

(cherry pick from commit 683ea489d3)

Change-Id: Id32ca66068c8ff549627e8e8c0e50897ef928c58
2017-07-31 09:25:37 +09:00
Treehugger Robot
ec5fc4872e Merge "Add dump info to IpSecService" 2017-07-25 02:38:47 +00:00
Treehugger Robot
81f66ce5ab Merge "Zygote: Increase wrap-pid timeout to thirty seconds" 2017-07-25 00:06:02 +00:00
ludi
b0c95b19ab Add dump info to IpSecService
Bug:38350824

Test: runtest frameworks-net

Change-Id: Ifa11d55e9d337016ad865baada627db3aa8c2db3
2017-07-24 16:03:33 -07:00
Andreas Gampe
27497c6dfc Zygote: Increase wrap-pid timeout to thirty seconds
Some lowend devices under heavy instrumentation may not be able to
send the pid in the current five seconds. Drop the safety and
ignore watchdog debug builds, and move the timeout to thirty seconds.

Make the ZygoteConnection constants sharable in their own @hide class.
Add an assert into the watchdog that the wait time is less than the
watchdog time on non-debug builds.

Bug: 63904739
Bug: 63638768
Test: m
Test: manual test
Test: cts-tradefed run commandAndExit cts-dev -m CtsWrapWrapDebugTestCases
Change-Id: I80abdda54cd94e935de5a52b9f3c9192d0e31060
2017-07-24 10:14:03 -07:00
Shubham Ajmera
d4185538dc Update DexFile#getDexOptNeeded usages to reflect API change
Test: make and boot
Merged-in: I68f9f617d6722a7ba8b00aa2181cb38a165cfc51
Bug: 36598475
(partially cherry-picked from commit 246dccf932)

Change-Id: If90690d6234dc8727df2b2fb485f0c8d50970a92
2017-07-21 15:48:40 -07:00
Treehugger Robot
a42c8a1667 Merge "NFC DTA Integration" 2017-07-21 17:38:53 +00:00
Love Khanna
2dc772165b NFC DTA Integration
Test: compiles.
Merged-In: I07cbb321ffbdbe9d93d632c8a56f3bc53218e592
Change-Id: I07cbb321ffbdbe9d93d632c8a56f3bc53218e592
2017-07-21 16:23:21 +00:00
Di Lu
9e3f886dca Merge "Add unit test for IpSecService" 2017-07-20 07:27:16 +00:00
ludi
1a06aa75e5 Add unit test for IpSecService
Test: runtest frameworks-net

Bug:38259578
Change-Id: I4a049d5fdec79e36692e3b12306bd0758c19ad75
2017-07-20 04:26:24 +00:00
Andreas Gampe
3fbde346ad Zygote: Poll with timeout for pid
Do not use a blocking readInt. Poll for available bytes with a timeout.

(cherry picked from commit cbc4214061)

Bug: 63638768
Test: m
Test: cts-tradefed run commandAndExit cts-dev -m CtsWrapWrapDebugTestCases
Change-Id: Ib2131c00aa47dd10bb940d8678bbbfb5a0346ad5
2017-07-19 19:45:55 -07:00
Treehugger Robot
777c408a22 Merge "NetworkCapabilities: Unhide TRANSPORT_LOWPAN" 2017-07-18 23:09:58 +00:00
Lorenzo Colitti
a1d67fb38e Merge changes from topic 'tether-offload-cherrypick'
* changes:
  Add code to dump OffloadController state.
  Fetch tethering offload stats.
  Allow more than one source of tethering statistics.
2017-07-18 18:45:29 +00:00
Lorenzo Colitti
07f1304cfe Allow more than one source of tethering statistics.
Currently, netd is the only source of tethering statistics.
In order to support multiple sources, define a new
ITetheringStatsProvider interface that can be registered with
NetworkManagmentService. Convert the existing code into the
first ITetheringStatsProvider.

(cherry picked from commit ef7b2a13ce)

Bug: 29337859
Bug: 32163131
Test: builds, boots
Test: tethering stats continue to be collected
Change-Id: Ie1b5a5e47ae4bf5af922365b09fa241e834236e4
Merged-In: Ie1b5a5e47ae4bf5af922365b09fa241e834236e4
2017-07-19 00:54:54 +09:00
Treehugger Robot
a09784ac75 Merge "BootReceiver: check console-ramoops-0" 2017-07-17 22:24:39 +00:00
Neil Fuller
0f9842304a Merge "Remove TODOs that are not needed" 2017-07-17 22:15:08 +00:00
Mark Salyzyn
18c139c57f BootReceiver: check console-ramoops-0
On later kernels /sys/fs/pstore/console-ramoops becomes
/sys/fs/pstore/console-ramoops-0

Test: none
Bug: 63058217
Change-Id: Ia68c0b5741c35cb35f10be6bbce93e0f0c92480f
2017-07-17 20:33:40 +00:00
xutianguo
a5325e18df Make BluetoothStateChangeCallback oneway to prevent waiting on response.
Test: Connected bluetooth devices(included Headset/HID devices), and
made bluetooth enabling/disabling over 1000 times, no other side effect
observed.

Bug: 38485770

Change-Id: Ia3959d2441aece39a79ab2d662b57790a78df674
Signed-off-by: xutianguo <xutianguo@xiaomi.com>
(cherry picked from commit 95e1e21a639318bb3399c394707624393cfa2300)
2017-07-17 11:52:24 -07:00
Neil Fuller
a9f0eeb36f Remove TODOs that are not needed
Remove TODOs to add classes to the system API that are not needed
(since they are used by a platform-only app).

Bug: 31008728
Test: make droid
Change-Id: I0d75686ddeae929e9d87c5ca8703a609a1450d76
Merged-In: I600e7b08853b86b27463193411cf85207ae09ce8
2017-07-17 17:57:11 +01:00
Mathieu Chartier
cb86245b99 Add more details to dumpsys meminfo -d
Added new subitems for
.dex:
boot vdex
app vdex
app odex

.art
app art
boot art

Fixed accounting for dalvik other to be subitems of other subsection
instead of dalvik.

Sample output:
261,892K: Native
213,196K: .dex mmap
    111,620K: .App vdex
    65,070K: .App dex
    36,506K: .Boot vdex
192,320K: EGL mtrack
161,835K: .so mmap
134,922K: .apk mmap
85,612K: Dalvik
    74,656K: .Heap
    4,526K: .Zygote
    4,218K: .LOS
    2,212K: .NonMoving
64,906K: Unknown
52,119K: .oat mmap
42,828K: Dalvik Other
    32,704K: .LinearAlloc
    3,672K: .JITCache
    3,248K: .IndirectRef
    3,204K: .GC
40,754K: .art mmap
    31,133K: .Boot art
    9,621K: .App art
21,976K: Other mmap
20,704K: Stack
16,270K: Gfx dev
9,200K: GL mtrack
3,428K: Other dev
2,744K: .ttf mmap
1,116K: Ashmem
1,052K: .jar mmap
0K: Cursor
0K: Other mtrack

Test: dumpsys meminfo -d
Test: dumpsys meminfo -s
Test: dumpsys meminfo
Test: dumpsys meminfo <pid>
Test: dumpsys memifno -d <pid>

Bug: 32331673

(cherry picked from commit 95550dd394)

Change-Id: I7557ee09510651c7b5ddee646c92adbcdd3472db
2017-07-14 12:14:59 -07:00
Treehugger Robot
4f2a0fe213 Merge "IpManager: define InitialConfiguration" 2017-07-13 20:45:21 +00:00
Hugo Benichi
fd31b9d46e IpManager: define InitialConfiguration
This patch adds a InitialConfiguration class to IpManager for specifying
IP information in IpManager ProvisioningConfiguration at IpManager
startup.

At the moment this InitialConfiguration is not used, but is validated in
startProvsiioning if ProvisioningConfiguration includes one. It will be
integrated into IpManager IP provisioning logic in follow-up patches.

This patch also includes an example of data driven unit tests using a
table of test case. The highlights of this methodology are:
  1) easy extensibility for new test case,
  2) rich and informative error messages,
Unfortunately Java support for inlined data structure literals is poor
and some companion static methods for data generation are required for
enabling this methodology.

Bug: 62988545
Test: added new test in FrameworksNetTests,
      $ runtest frameworks-net
      $ runtest frameworks-wifi
Merged-In: I060b02603af7d73a6407df89344bf0c000574af2

(cherry pick of commit 2757fcf3a1)

Change-Id: I48dbf89232d7758f1b07ed4d76ce93281e5c6b53
2017-07-14 04:26:42 +09:00
Treehugger Robot
d8dab11547 Merge "Add configureRpcThreadpool to java interface" 2017-07-13 19:11:39 +00:00