| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Useful e.g. for messenger apps.
Change-Id: If8e8cc9e2f02d70537c1f9dc14f22bbd0ec1e9a6
|
|
|
|
| |
Change-Id: I6fb81c5898fbfe9e89a4af3fdc042266c8a9be6c
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The same status flag is used for the three different volume keys,
however nothing prevents users from pressing multiple keys at the
same time. This allows to set the status flag with one volume key
and clear it with the other volume key.
Use one flag per key so that we never end up in an inconsistent
state. This fixes the seldom power button issues that happen when
the "volume wake" feature is enabled.
Change-Id: I08f5f9ff696bef3dd840cff97d570e44ebe03e4e
|
|\
| |
| |
| |
| |
| |
| | |
Android 6.0.1 Release 72 (M4B30X)
# gpg: Signature made Tue 04 Oct 2016 09:47:40 AM PDT using DSA key ID 9AB10E78
# gpg: Can't check signature: public key not found
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
injected.
-Can potentially crash system with OOM.
Bug: 29555864
Change-Id: I7157f48dddf148a9bcab029cf12e26a58d8054f4
(cherry picked from commit 5439aabb165b5a760d1e580016bf1d6fd963cb65)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This fixes a bug where it was possible to authenticate the wrong user.
We now bind the userId when we start authentication and confirm it when
authentication completes.
Fixes bug 30744668
Change-Id: I346d92c301414ed81e11fa9c171584c7ae4341c2
(cherry picked from commit b6f4b48df273d210d13631b4c2426482feb40c97)
|
| |
| |
| |
| |
| |
| |
| | |
Fixes bug 30003944
Change-Id: I8700d4424c6186c8d5e71d2fdede0223ad86904d
(cherry picked from commit 2d71384a139ae27cbc7b57f06662bf6ee2010f2b)
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fix for accidental launch of a broadcast receiver in an
incorrect app instance.
Bug: 30202481
Change-Id: I8ec8f19c633f3aec8da084dab5fd5b312443336f
(cherry picked from commit d1eeb5b7b489d47994a71510f1ed5b97b8e32a7a)
|
| |
| |
| |
| |
| |
| |
| |
| | |
Remove MANAGE_USERS permission from shell and whitelist it for
some specific functionality.
Bug: 29189712
Change-Id: Ifb37448c091af91991964511e3efb1bb4dea1ff3
|
| |
| |
| |
| |
| |
| |
| | |
Bug: 29189712
Bug: 30317026
Bug: 30235113
Change-Id: Icced9805a56675e86f894c458c4a5a0048fd54c0
|
| |
| |
| |
| |
| |
| |
| |
| | |
Block the user from entering safe boot mode if the DISALLOW_SAFE_BOOT
policy is set.
Bug: 26251884
Change-Id: I4945d5d676928346c11ea305a5b6a2e1a42e94e6
|
| |
| |
| |
| |
| | |
Bug: 29421441
Change-Id: I7460268595e932d54660b02007bcd68b95fe8aec
|
| |
| |
| |
| |
| |
| |
| | |
Ticket: CYNGNOS-3251
Change-Id: I394514335bdaeafdc7b89918ece1fe3d2794647f
Signed-off-by: Roman Birg <roman@cyngn.com>
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
Android 6.0.1 release 66
# gpg: Signature made Tue 06 Sep 2016 09:26:45 AM PDT using DSA key ID 9AB10E78
# gpg: Can't check signature: public key not found
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Bug: 29189712
Bug: 30317026
Bug: 30235113
Change-Id: Icced9805a56675e86f894c458c4a5a0048fd54c0
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Block the user from entering safe boot mode if the DISALLOW_SAFE_BOOT
policy is set.
Bug: 26251884
Change-Id: I4945d5d676928346c11ea305a5b6a2e1a42e94e6
|
| | |
| | |
| | |
| | |
| | | |
Bug: 29421441
Change-Id: I7460268595e932d54660b02007bcd68b95fe8aec
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
ConnectivityService should set the net.hostname property to either
the current DEVICE_HOSTNAME or android-ANDROID_ID or leave net.hostname
unchanged if already set. However, the logic was flawed such that if
DEVICE_HOSTNAME was empty but net.hostname was not, net.hostname would
always be set to an empty string, leading to DHCP breakage later on.
The logic has been fixed, clarified and improved such that:
net.hostname will only be changed if it is empty. If net.hostname is
empty, it will be set to either (in order): the nonempty value of
DEVICE_HOSTNAME, android-ANDROID_ID or android-r-RANDOM_NUMBER. The last
option is an addition to have a sensible fallback in case both
DEVICE_HOSTNAME and ANDROID_ID are empty.
The random number is generated by java.util.Random, because I consider
cryptographically strong randomness unnecessary here and think possible
blocking in SecureRandom might be undesirable.
Thanks to stargo for pointing me to the right place to edit.
Thanks to Ethan Chen for his stylistic advice.
Change-Id: I603ab4d6a265456bf4fa310939965cfa677fc881
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If the net.hostname property is empty or not found, Android issues
DHCP requests with an empty hostname field (option 12). RFC2132 section
3.14 prescribes a minimum length of 1 byte for the hostname.
To fix this, a generic 'android-dhcp' hostname is used as a fallback.
Change-Id: I7a92e7295f72b3255e4fba6498fb4039906eb702
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When system comes back from idle state, GpsLocationProvider
invokes startNavigating() even when GPS is turned off in
settings.
Change-Id: Ie6dbf60a743cce429ab83876a3cb80f7e4b0e0f6
CRs-Fixed: 1022372
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: Idbcd94ae8004352c5241fc81ac9595173001a58d
Signed-off-by: Alexander Martinz <eviscerationls@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Packages not installed with PackageInstaller.Session that
are moved to adopted storage via android storage settings
will get moved back to private internal storage when the
package is later updated. This causes the app to lose
it's data (and leaves the data dir dangling on the original
adopted location).
play market installs do not have this problem (because
they use an installer session) but pretty much every other
app install route does. eg adb install and other app stores.
Change-Id: I0f606b230460f32310921c75e58ccb5b610268e4
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
[Procedures]
1. Go to Settings->Date&Time
Set time backwards, eg. 2016.6.15 -> 2016.6.10
2. Tap recent apps button to show recent activities.
There will be no activities shown.
Change-Id: Ifd860c0d08fac49f9d3c8eac590b6db9e6afb09d
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* Pass app info and number of installed packages to boot message UI
* Ui by Asher and Joey, based on Alexander's previous work
Change-Id: I9ec9d0cb0e20a9bac73e126f6b6f3965400f05e7
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This lock isn't really needed because the proxy will return
false if the resolver package doesn't exist or throws a
remote exception.
Having this lock causes a deadlock between the PM and the app:
resolveIntent holds the PackageManagerService#mPackages lock and
then tries to lock on PackageMonitor#mLock.
Meanwhile, when packages change, LaodedApk holds onto the
PackageMonitor#mLock and then tries to query the intent services and
tries to lock on PackageManagerService#mPackages.
Relevant traces below:
"Binder_4" prio=5 tid=60 Blocked
| group="main" sCount=1 dsCount=0 obj=0x136f00a0 self=0x7f743d2a00
| sysTid=949 nice=0 cgrp=default sched=0/0 handle=0x7f74b93440
| state=S schedstat=( 1032333944 663457790 2968 ) utm=74 stm=29 core=3 HZ=100
| stack=0x7f74a97000-0x7f74a99000 stackSize=1013KB
| held mutexes=
at com.android.server.ServiceWatcher.getBinder(ServiceWatcher.java:368)
- waiting to lock <0x083e77c9> (a java.lang.Object) held by thread 9
at org.cyanogenmod.platform.internal.AppSuggestProviderProxy.getService(AppSuggestProviderProxy.java:68)
at org.cyanogenmod.platform.internal.AppSuggestProviderProxy.handles(AppSuggestProviderProxy.java:73)
at org.cyanogenmod.platform.internal.AppSuggestManagerService$1.handles(AppSuggestManagerService.java:50)
at cyanogenmod.app.suggest.AppSuggestManager.handles(AppSuggestManager.java:101)
at com.android.server.pm.PackageManagerService.shouldIncludeResolveActivity(PackageManagerService.java:4704)
- locked <0x0183dd64> (a android.util.ArrayMap)
at com.android.server.pm.PackageManagerService.chooseBestActivity(PackageManagerService.java:4430)
at com.android.server.pm.PackageManagerService.resolveIntent(PackageManagerService.java:4353)
at android.content.pm.IPackageManager$Stub.onTransact(IPackageManager.java:628)
at com.android.server.pm.PackageManagerService.onTransact(PackageManagerService.java:2754)
at android.os.Binder.execTransact(Binder.java:453)
"android.bg" prio=5 tid=9 Blocked
| group="main" sCount=1 dsCount=0 obj=0x12c04b80 self=0x7f84a7d800
| sysTid=766 nice=10 cgrp=bg_non_interactive sched=0/0 handle=0x7f89b3f440
| state=S schedstat=( 1237112536 3291977271 2848 ) utm=62 stm=61 core=2 HZ=100
| stack=0x7f89a3d000-0x7f89a3f000 stackSize=1037KB
| held mutexes=
at com.android.server.pm.PackageManagerService.queryIntentServices(PackageManagerService.java:5405)
- waiting to lock <0x0183dd64> (a android.util.ArrayMap) held by thread 60
at android.app.ApplicationPackageManager.queryIntentServicesAsUser(ApplicationPackageManager.java:731)
at com.android.server.ServiceWatcher.bindBestPackageLocked(ServiceWatcher.java:167)
at com.android.server.ServiceWatcher.-wrap0(ServiceWatcher.java:-1)
at com.android.server.ServiceWatcher$1.onPackageChanged(ServiceWatcher.java:321)
- locked <0x083e77c9> (a java.lang.Object)
at com.android.internal.content.PackageMonitor.onReceive(PackageMonitor.java:352)
at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:882)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.os.HandlerThread.run(HandlerThread.java:61)
Change-Id: Id4775ca4d12b6cf42bea97bd74e4c38d591a1cf3
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
TIcket: CYNGNOS-3242
Change-Id: I61ce295737471ca9bb59f45c616d626bbc4f7784
Signed-off-by: Roman Birg <roman@cyngn.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Since privateFlags can be accessed and modified via reflection
due to change 5d927c2d8e, the prevent system keys or prevent
power keys flag can be set and deployed without ever calling
setPrivateFlags directly.
Move enforcing to system server to prevent app tampering.
TICKET: CYAN-7921 (open source JIRA)
Found by Maciej Krysztofiak
Change-Id: I53c2804d0283692036f5cc95e6ad57821bc0655a
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Ticket: CYNGNOS-3233
Change-Id: I40dae6b6fd1da497024965469fea0adc78a661c3
Signed-off-by: Roman Birg <roman@cyngn.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
With the theme service being moved to its own context, it can no
longer set system properties so have ActivityManagerService take
care of this when updating the configuration.
Change-Id: Ia5cbbf921c7c716631db1e34f5e2b04c5d814328
|
|\ \ \
| |/ /
| | |
| | |
| | |
| | | |
Android 6.0.1 Release 61 (MOB30Z)
Change-Id: Ib003ccb606e0d77209291b757ea36399d3b65814
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Remove MANAGE_USERS permission from shell and whitelist it for
some specific functionality.
Bug: 29189712
Change-Id: Ifb37448c091af91991964511e3efb1bb4dea1ff3
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Also disables app pinning when the "return to call" button is pressed
and brings up the in-call screen when app pinning is stopped if there is
an existing call.
Combination of ag/1091397 and ag/1085584 adapted for MNC.
Bug: 28558307
Bug: 28761672
Change-Id: I82ec4042bff387c845ce571b197a4a86e1dd5ec8
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Since this is a backport, there is only one rule that guards intent
filter priorities:
1) Updates will NOT be granted a priority greater than the priority
defined on the system image.
Bug: 27450489
Change-Id: Ifcec4d7a59e684331399abc41eea1bd6876155a4
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Get the canonical identity and metadata about the package from the
Package Manager at time of usage rather than rely on the caller to
have gotten things right, even when the caller has the system uid.
Bug 28795098
Change-Id: I215786bc894dedf7ca28e9c80cefabd0e40ca877
Merge conflict resolution for ag/1133474 (referencing ag/1148862)
- directly to mnc-mr2-release
|
| |
| |
| |
| |
| |
| |
| | |
* Instead, just unmount the emulated internal volume since
it's the only one which can prevent cryptfs from restarting.
Change-Id: I757babaf763b4ef789b165d116da0708a3530e99
|
| |
| |
| |
| |
| |
| | |
* It just throws exceptions.
Change-Id: I503a2b787a661b3ab5c52b675e49f2eae92c9ec0
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Annoying situation where the battery charging LED comes on in
the crypto startup screen, but never gets turned off because
of caching.
* Explicitly turn off LEDs after the bootanimation completes, and
always set the full state to the hardware on the first call
regardless if it's all zeros.
Change-Id: I8cd2325ec5d8924391e4fc62249f6dd737d52f3e
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Vold assumes that when FUSE is killed, the mount is gone. This
isn't true with sdcardfs, since the daemon doesn't continue
to run. Cryptfs was assuming this behavior, and the system would
hang during decryption since the emulated storage doesn't get
unmounted.
* Send the shutdown command before committing suicide.
Change-Id: Ifcfa63f0499a717f34482754cea95b90622290c6
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Use multi task to speed up the scan process
CRs-Fixed: 984513
base: fix native crash in system_server
Currently PackageManagerService uses multi-thread to scan
packages to speed up, when scan each package, it sometimes
will call SELinux's restorecon, then libselinux uses global
variable fc_sehandle to selabel_lookup and write in compile_regex,
so it's not thread-safe, so will cause invalid address with
possibility. From backtrace, the final crash happens in pcre_exec.
Add one lock in NativeLibraryHelper to make restorecon safe.
Change-Id: Ida43fcda01d3450befea6afa0be5da27bb195def
CRs-Fixed: 1002406, 1027381
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
These hidden APIs are called from some public APIs (DevicePolicyManager),
so we shouldn't change the default behavior.
The intent API should also be considered public, so change that as well.
FEIJ-1610
Change-Id: Ib9591c122dbe6168e7e237444c754b9608be0953
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This extends the <protected-broadcast> mechanism to allow protecting
actions based on a permission for system apps.
For instance:
<protected-broadcast android:name="ACTION_A"
android:permission="PERMISSION_X" />
will restrict intents with action "ACTION_A" to be only sent with
apps holding the "PERMISSION_X" permission. Note that system UIDs will
bypass the permission check and always be allowed, just like the normal
protected-broadcast mechanism.
You must still be a system application to delcare a protected broadcast.
Change-Id: Id25cffd233d400800dcb5249c5f487134e1b4152
Signed-off-by: Roman Birg <roman@cyngn.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Use CMAudioManager to listen for session callbacks for
STREAM_MUSIC.
Fixes issue with youtube videos not being detected as active media.
CYNGNOS-3072
Change-Id: Id47d064b28ee6e1ed5320a6a70ec3e3ba5268785
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* It's possible that ActivityManager may be trying to stop a package
while the PackageManager is trying to perform a scan during
an upgrade. When AM tries to perform the stop, it will attempt
to look up the package user, which will try to take the PM lock.
This is fine, but while we're holding the lock in PM during
the package upgrade we're attempting to call back into AM to
get the current theme, which tries to take the AM lock. This
results in the entire system locking up until watchdog kills
off system server.
* Instead of looking up the current theme while holding the lock
in PM, look it up before locking the whole place down.
Change-Id: If322a7f214218740d73043ff65860ccadd92f01d
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Implicity queries resolve the target component for an intent, the
intent (if fired) will be gated by the protected apps feature
implementation within the activity stack supervisor.
Change-Id: Ib079cfa6093f472d4b85f6b4a986440a764affa3
TICKET: FEIJ-1449
|
|\ \
| |/
| |
| |
| |
| | |
Ticket: CYNGNOS-3020
Change-Id: Ia14b6d0120de0b458c7c249a11041ff121389cfa
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Sysconfig define a whitelist of permitted backup transports
Previously any apk bundled in priv-app could insert a backup transport.
Reduce risk surface by giving the OEM explicit control over who is
allowed to handle backup data.
Bug 28406080
Backport of 494df791728f4d42d67e935c327910975993ad29 from N
Change-Id: I9f90e324169a68720d608f74754d284a7e59cf87
|
| |
| |
| |
| |
| |
| | |
Fixes bug 28163930
Change-Id: Ic98ef20933b352159b88fdef331e83e9ef6e1f20
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Allow app-link entries in /system/etc/sysconfig to set a system
apps app-link state to any of the available states, and not just
"always" as was previously possible.
If the "state" attribute is not present in an app-link
declaration, the state will default to "always" to preserve
existing behavior.
This change is needed to allow certain apps to be set to the
"always-ask" state so they'll be sure to participate in intent
resolution via the disambugation dialog in the default
configuration.
These setting can be changed by the user via the standard
app-link configuration section in Settings -> Apps.
Change-Id: I2f98c69ebbeb40492d7ae8d33327986675b18b65
|
| |
| |
| |
| |
| |
| |
| |
| | |
Remove newly protected apps from recent tasks if any activity
in the stack is a restricted component.
FEIJ-1361
Change-Id: Ifd337bfe8356613d098ff00c575db117d35f2017
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Use case: When enable timeout occurs during S&S testing and
Bluetooth state is moved from Turning On to Off.
Steps: Changes related to enable timeout case, to test the
changes, S&S testing can be done.
Failure: Changes done to handle Bluetooth enable timeout
case when Bluetooth state changes from Turning On to Off.
Root cause: Setting Bluetooth Persist state to handle the
enable timeout case so that Bluetooth doesnot self enable
after enable timeout case is handled.
Fix: Setting the Bluetooth Persist State to Off when enable
timeout occurs.
Change-Id: I17b3b05020eb7469666e6d8c88c86df7764b4024
CRs-Fixed: 1006444
|