Commit Graph

2073 Commits

Author SHA1 Message Date
Dianne Hackborn
2064149e42 am c837756d: am b4799fc9: am aef746c4: Implement new manage apps UI for compat mode.
* commit 'c837756d732eb1cc2c26c2d111668ac22a5ff4c6':
  Implement new manage apps UI for compat mode.
2011-06-01 11:26:25 -07:00
Freeman Ng
f75c6e20ad am f0fae7f2: am 6356b17a: am d671182d: Merge "make setup wizard\'s wifi and datetime settings look good for 7"" into honeycomb-mr2
* commit 'f0fae7f27295df2dff531a6293840479a64f7984':
  make setup wizard's wifi and datetime settings look good for 7"
2011-06-01 11:26:20 -07:00
Brian Carlstrom
d4023b7cca Integrating keystore with keyguard (Part 4 of 4)
Summary:

frameworks/base
  keystore rewrite
  keyguard integration with keystore on keyguard entry or keyguard change
  KeyStore API simplification

packages/apps/Settings
  Removed com.android.credentials.SET_PASSWORD intent support
  Added keyguard requirement for keystore use

packages/apps/CertInstaller
  Tracking KeyStore API changes
  Fix for NPE in CertInstaller when certificate lacks basic constraints

packages/apps/KeyChain
  Tracking KeyStore API changes

Details:

frameworks/base

   Move keystore from C to C++ while rewriting password
   implementation. Removed global variables. Added many comments.

	cmds/keystore/Android.mk
	cmds/keystore/keystore.h
	cmds/keystore/keystore.c => cmds/keystore/keystore.cpp
	cmds/keystore/keystore_cli.c => cmds/keystore/keystore_cli.cpp

   Changed saveLockPattern and saveLockPassword to notify the keystore
   on changes so that the keystore master key can be reencrypted when
   the keyguard changes.

	core/java/com/android/internal/widget/LockPatternUtils.java

   Changed unlock screens to pass values for keystore unlock or initialization

	policy/src/com/android/internal/policy/impl/PasswordUnlockScreen.java
	policy/src/com/android/internal/policy/impl/PatternUnlockScreen.java

   KeyStore API changes
   - renamed test() to state(), which now return a State enum
   - made APIs with byte[] key arguments private
   - added new KeyStore.isEmpty used to determine if a keyguard is required

	keystore/java/android/security/KeyStore.java

   In addition to tracking KeyStore API changes, added new testIsEmpty
   and improved some existing tests to validate expect values.

	keystore/tests/src/android/security/KeyStoreTest.java

packages/apps/Settings

    Removing com.android.credentials.SET_PASSWORD intent with the
    removal of the ability to set an explicit keystore password now
    that the keyguard value is used. Changed to ensure keyguard is
    enabled for keystore install or unlock. Cleaned up interwoven
    dialog handing into discrete dialog helper classes.

	AndroidManifest.xml
	src/com/android/settings/CredentialStorage.java

    Remove layout for entering new password

	res/layout/credentials_dialog.xml

    Remove enable credentials checkbox

	res/xml/security_settings_misc.xml
	src/com/android/settings/SecuritySettings.java

    Added ability to specify minimum quality key to ChooseLockGeneric
    Activity. Used by CredentialStorage, but could also be used by
    CryptKeeperSettings. Changed ChooseLockGeneric to understand
    minimum quality for keystore in addition to DPM and device
    encryption.

	src/com/android/settings/ChooseLockGeneric.java

    Changed to use getActivePasswordQuality from
    getKeyguardStoredPasswordQuality based on experience in
    CredentialStorage. Removed bogus class javadoc.

	src/com/android/settings/CryptKeeperSettings.java

    Tracking KeyStore API changes

	src/com/android/settings/vpn/VpnSettings.java
	src/com/android/settings/wifi/WifiSettings.java

   Removing now unused string resources

	res/values-af/strings.xml
	res/values-am/strings.xml
	res/values-ar/strings.xml
	res/values-bg/strings.xml
	res/values-ca/strings.xml
	res/values-cs/strings.xml
	res/values-da/strings.xml
	res/values-de/strings.xml
	res/values-el/strings.xml
	res/values-en-rGB/strings.xml
	res/values-es-rUS/strings.xml
	res/values-es/strings.xml
	res/values-fa/strings.xml
	res/values-fi/strings.xml
	res/values-fr/strings.xml
	res/values-hr/strings.xml
	res/values-hu/strings.xml
	res/values-in/strings.xml
	res/values-it/strings.xml
	res/values-iw/strings.xml
	res/values-ja/strings.xml
	res/values-ko/strings.xml
	res/values-lt/strings.xml
	res/values-lv/strings.xml
	res/values-ms/strings.xml
	res/values-nb/strings.xml
	res/values-nl/strings.xml
	res/values-pl/strings.xml
	res/values-pt-rPT/strings.xml
	res/values-pt/strings.xml
	res/values-rm/strings.xml
	res/values-ro/strings.xml
	res/values-ru/strings.xml
	res/values-sk/strings.xml
	res/values-sl/strings.xml
	res/values-sr/strings.xml
	res/values-sv/strings.xml
	res/values-sw/strings.xml
	res/values-th/strings.xml
	res/values-tl/strings.xml
	res/values-tr/strings.xml
	res/values-uk/strings.xml
	res/values-vi/strings.xml
	res/values-zh-rCN/strings.xml
	res/values-zh-rTW/strings.xml
	res/values-zu/strings.xml
	res/values/strings.xml

packages/apps/CertInstaller

  Tracking KeyStore API changes
	src/com/android/certinstaller/CertInstaller.java

  Fix for NPE in CertInstaller when certificate lacks basic constraints
	src/com/android/certinstaller/CredentialHelper.java

packages/apps/KeyChain

  Tracking KeyStore API changes
	src/com/android/keychain/KeyChainActivity.java
	src/com/android/keychain/KeyChainService.java
	support/src/com/android/keychain/tests/support/IKeyChainServiceTestSupport.aidl
	support/src/com/android/keychain/tests/support/KeyChainServiceTestSupport.java
	tests/src/com/android/keychain/tests/KeyChainServiceTest.java

Change-Id: I80533bf8986a92b0b99cd5fb1c4943e0f23fc1c8
2011-06-01 10:47:42 -07:00
Gilles Debunne
ba3761be18 Merge "Bug 4505185: fix NPE when file list is empty" 2011-06-01 10:11:15 -07:00
Gilles Debunne
6789b56c23 Bug 4505185: fix NPE when file list is empty
Change-Id: Ia120f92f2d907cdfccde5824179ef2e1f0c0d6a6
2011-05-31 17:32:44 -07:00
Svetoslav Ganov
6f0b4d8143 Accessibility service specific settings.
This is the settings part of the change for adding
support for accessibility service specific settings.

1. Added the first cut of a SettingsCheckBoxPreference
   that is a CheckBoxPreference that optionally takes
   an intent to be lauched as settings of the item
   represented by the preference.

2. Updated the AccessibilitySettigns to use the
   SettingsCheckBoxPreference.

Change-Id: If44262b8965c65620c6b8c252f8ef356eb0d95cf
2011-05-27 13:24:31 -07:00
Daniel Sandler
a862f2b14b Merge "Dream (screensaver) settings." 2011-05-26 20:27:55 -07:00
Gilles Debunne
b667422cfd am 41a99004: am 53872769: Merge "Erase SD Card fixed in Settings/Storage." into honeycomb-mr2
* commit '41a99004f1cd758205f728dbbf9bc6a735b262e3':
  Erase SD Card fixed in Settings/Storage.
2011-05-26 18:04:14 -07:00
Gilles Debunne
41a99004f1 am 53872769: Merge "Erase SD Card fixed in Settings/Storage." into honeycomb-mr2
* commit '5387276950a190944eeeb00c0e3c04501f0dc6a5':
  Erase SD Card fixed in Settings/Storage.
2011-05-26 18:02:41 -07:00
Gilles Debunne
5387276950 Merge "Erase SD Card fixed in Settings/Storage." into honeycomb-mr2 2011-05-26 18:00:34 -07:00
Gilles Debunne
6d36fd3a03 Erase SD Card fixed in Settings/Storage.
Adding the StorageVolume to the format intent.

Change-Id: If1a50a2d5c5154e9f00116db536c62324c447e7c
2011-05-26 15:00:17 -07:00
sy310.choi
531bed610c am 95364e4a: Allow alternate string to be used for min_number
* commit '95364e4af3cb09bff58baab6fa4a6a2218e7fc94':
  Allow alternate string to be used for min_number
2011-05-26 13:47:20 -07:00
Dianne Hackborn
c837756d73 am b4799fc9: am aef746c4: Implement new manage apps UI for compat mode.
* commit 'b4799fc9ee29535bb371da9c04a0f750a77115e1':
  Implement new manage apps UI for compat mode.
2011-05-26 11:05:49 -07:00
Freeman Ng
f0fae7f272 am 6356b17a: am d671182d: Merge "make setup wizard\'s wifi and datetime settings look good for 7"" into honeycomb-mr2
* commit '6356b17a53fc939c145de26dbc258ef7797ba05c':
  make setup wizard's wifi and datetime settings look good for 7"
2011-05-26 11:05:47 -07:00
sy310.choi
95364e4af3 Allow alternate string to be used for min_number
"MSID" can be shown instead of "MIN" if config_msid_enable
is set to true.

Change-Id: I6d072a5db9a5b46b17a57257221e109ba9a86698
2011-05-26 10:45:07 -07:00
Gilles Debunne
d7928912d4 resolved conflicts for merge of b593a628 to master
Change-Id: Icf8a913e8780bb7d998cc9f4d0ed91ed66348dc6
2011-05-26 10:35:38 -07:00
Dianne Hackborn
b4799fc9ee am aef746c4: Implement new manage apps UI for compat mode.
* commit 'aef746c45f14c8a170dba48c4b55f93cae0e24e4':
  Implement new manage apps UI for compat mode.
2011-05-26 10:02:22 -07:00
Freeman Ng
6356b17a53 am d671182d: Merge "make setup wizard\'s wifi and datetime settings look good for 7"" into honeycomb-mr2
* commit 'd671182d88a193bee25d82a1941a57a84ed0fdc4':
  make setup wizard's wifi and datetime settings look good for 7"
2011-05-26 10:02:20 -07:00
Daniel Sandler
2943cfa606 Dream (screensaver) settings.
Depends on change Ied691856 for
Settings.Secure.DREAM_TIMEOUT and
Settings.Secure.DREAM_COMPONENT.

Change-Id: Ib6f74b74036e12637efb891b97e459a4e33444e7
2011-05-26 11:32:06 -04:00
Dianne Hackborn
aef746c45f Implement new manage apps UI for compat mode.
Change-Id: Ia8db7f534b7294fbbb34e0acdedab3a96cea59e9
2011-05-26 01:06:11 -07:00
Amith Yamasani
ba61aaaaa3 am 0fbaacaa: am 138a695f: am cfd524f0: Visual adjustments for smaller tablets.
* commit '0fbaacaa9b29401a4191ca85dccfe68660928a11':
  Visual adjustments for smaller tablets.
2011-05-25 21:28:22 -07:00
Freeman Ng
d671182d88 Merge "make setup wizard's wifi and datetime settings look good for 7"" into honeycomb-mr2 2011-05-25 21:13:03 -07:00
Freeman Ng
edb03bf537 make setup wizard's wifi and datetime settings look good for 7"
Note: this entailed locking datetime settings not into portrait
like everything else in the setup process, but landscape, because
the existing xlarge layout wasn't rearranging itself into a portrait
alignment very well. I can give it another try later if I can have
some help from UE.

Change-Id: Ia8ce8e8292ed768bd117beedf3d94a287e658f4b
2011-05-25 19:06:21 -07:00
Gilles Debunne
b593a6280f am ecb43e5e: am 5d48be98: Merge "Storage stats on external SD card in Settings." into honeycomb-mr2
* commit 'ecb43e5e67e2cdf7617100b08a3f9dae42c4b5cf':
  Storage stats on external SD card in Settings.
2011-05-25 14:39:16 -07:00
Gilles Debunne
ecb43e5e67 am 5d48be98: Merge "Storage stats on external SD card in Settings." into honeycomb-mr2
* commit '5d48be9845eea3c4539f78f06ed24c592803e10c':
  Storage stats on external SD card in Settings.
2011-05-25 14:28:34 -07:00
Gilles Debunne
5d48be9845 Merge "Storage stats on external SD card in Settings." into honeycomb-mr2 2011-05-25 14:26:25 -07:00
Gilles Debunne
104ea2873d Storage stats on external SD card in Settings.
Storage categories are dynamically created from list of StorageVolumes instead
of a static XML.

Unknown files' sizes are part of Misc rather than Apps.

Categories with a size of 0 are removed.

TODO : remove the notion of a "nosdcard" product. Change strings accordingly.
See all TODO in code

Change-Id: I017ac20f5fa50ad9bdeba8e666754ec84acf3858
2011-05-25 12:12:22 -07:00
Amith Yamasani
0fbaacaa9b am 138a695f: am cfd524f0: Visual adjustments for smaller tablets.
* commit '138a695f179aa16bff033b873f502161b1be66e0':
  Visual adjustments for smaller tablets.
2011-05-25 11:05:56 -07:00
Amith Yamasani
138a695f17 am cfd524f0: Visual adjustments for smaller tablets.
* commit 'cfd524f07af0820e2e41fd74e7e3c5b7433854f8':
  Visual adjustments for smaller tablets.
2011-05-25 11:01:57 -07:00
Amith Yamasani
cfd524f07a Visual adjustments for smaller tablets.
Make the Manage Apps tab indicators horizontally scrollable.
Use medium font size for user dictionary.

Bug: 4462313

Change-Id: Iba44e758715c0187ea17ed072794b8596dee0e54
2011-05-24 15:49:34 -07:00
Irfan Sheriff
af7686819b am b7c2d5b4: am 7c210ba5: Fix invalid linkspeed display
* commit 'b7c2d5b4e1bafe543d3887d350b3e77d71a0cf34':
  Fix invalid linkspeed display
2011-05-24 12:56:26 -07:00
Irfan Sheriff
c82ba4a385 am 87661736: am 5ee2fb92: Merge "Fix submit button display for WPS" into honeycomb-LTE
* commit '8766173651668a18b3cf8ea2ce545d5178eddb6c':
  Fix submit button display for WPS
2011-05-24 12:56:23 -07:00
Irfan Sheriff
b7c2d5b4e1 am 7c210ba5: Fix invalid linkspeed display
* commit '7c210ba5c18c2720023dd8fc4215cde95a6fe71c':
  Fix invalid linkspeed display
2011-05-23 16:51:38 -07:00
Irfan Sheriff
8766173651 am 5ee2fb92: Merge "Fix submit button display for WPS" into honeycomb-LTE
* commit '5ee2fb92a9e05dda877a497847c7543daaf5ea69':
  Fix submit button display for WPS
2011-05-23 16:48:56 -07:00
Irfan Sheriff
7c210ba5c1 Fix invalid linkspeed display
Bug: 4391449
Change-Id: I8c8efcaa73d09c1e8b523f7798b6c626edc96c1e
2011-05-23 16:47:02 -07:00
Irfan Sheriff
21e644a9a8 Fix submit button display for WPS
Change Icd3fde90 exposed an existing issue where password validity was
being checked for WPS as well. Fix it.

Bug: 4391449
Change-Id: I60ca8869eee680f5ec71284a1ac6ba956a992312
2011-05-20 16:50:23 -07:00
Irfan Sheriff
3493c20433 am ba46f269: am a6f178a8: Merge "Fix enabling of submit button" into honeycomb-LTE
* commit 'ba46f269abf8cbafaf68902a23935a1779aa316d':
  Fix enabling of submit button
2011-05-19 17:18:12 -07:00
Irfan Sheriff
ba46f269ab am a6f178a8: Merge "Fix enabling of submit button" into honeycomb-LTE
* commit 'a6f178a817ec36d5cf6d6a3d9c19c73278f0c3ca':
  Fix enabling of submit button
2011-05-19 17:15:43 -07:00
Irfan Sheriff
990c3ad530 Fix enabling of submit button
Change I478c915b introduced a regression where the submit
button is enabled even if no password is entered for a secure
network.

This happened because our checks would override a password
check when IP and proxy settings are valid (which is the default
setting)

Bug: 4462439
Change-Id: Icd3fde90759f33fa391ec79ae8075b6d8388d2e9
2011-05-19 16:06:31 -07:00
Jean Chalard
71ad1f4e3e Change the interface for user dictionary multiple locales.
The user dictionary interface now works the following way:
* Locale gathering
- The current locale is always considered as present, even if
there are no words for it in the user dictionary.
- Any locale for which at least one word is registered is
considered present.
- A null locale is considered a valid locale meaning "all
languages".
- If no words are present at all, since the current locale is
always considered present, the system will consider there is
exactly one locale present - and allow editing this user
dictionary.

* Options display
- If only one locale is present, the interface is the same as
for Honeycomb: display a "User dictionary" PreferenceScreen
that brings up the dictionary editor interface.
- If there are several locales present, then the user
dictionary option will jump to a screen that will display a
list of available locales.

* Word insertion
- Inserting a word will always use the locale of the currently
displayed dictionary. If it is the "all languages" null
pseudo-locale, that will still hold and the word will be added
to this pseudo-locale.

It is worthy to note that the "All languages" locale is only
accessible if for some reason there are already words with a
null locale in the database before this is installed. For
example, if an application has inserted some words that way,
or if the user inserted words with a previous version of the
settings application.
On a freshly flashed device, barring the use of third-party
application that would add such words, it is not possible to
access the "all languages" locale any more because there is
no interface to do it, though it works if such words are
inside.

Bug: 3479738
Change-Id: Iba323e5aeb3f4f575896903a4e8bef6ffb3ea306
2011-05-18 12:54:20 +09:00
Brian Carlstrom
435e45e616 Move to KeyChain.bind
Change-Id: Ic12e84bdc2e391c4a08a0f854d0e0f7315fc31a3
2011-05-17 16:22:06 -07:00
Brian Carlstrom
2c1e9c7846 Merge "Make CertInstaller installed CA certs trusted by applications via default TrustManager (5 of 6)" 2011-05-17 10:37:54 -07:00
Brian Carlstrom
9815429821 Make CertInstaller installed CA certs trusted by applications via default TrustManager (5 of 6)
frameworks/base

        Adding IKeyChainService APIs for CertInstaller and Settings use
    	keystore/java/android/security/IKeyChainService.aidl

    libcore

        Improve exceptions to include more information
    	luni/src/main/java/javax/security/auth/x500/X500Principal.java

        Move guts of RootKeyStoreSpi to TrustedCertificateStore, leaving only KeyStoreSpi methods.
        Added support for adding user CAs in a separate directory for system.
        Added support for removing system CAs by placing a copy in a sytem directory
    	luni/src/main/java/org/apache/harmony/xnet/provider/jsse/RootKeyStoreSpi.java
    	luni/src/main/java/org/apache/harmony/xnet/provider/jsse/TrustedCertificateStore.java

        Formerly static methods on RootKeyStoreSpi are now instance methods on TrustedCertificateStore
    	luni/src/main/java/org/apache/harmony/xnet/provider/jsse/TrustManagerImpl.java

        Added test for NativeCrypto.X509_NAME_hash_old and X509_NAME_hash
        to make sure the implementing algorithms doe not change since
        TrustedCertificateStore depend on X509_NAME_hash_old (OpenSSL
        changed the algorithm from MD5 to SHA1 when moving from 0.9.8 to
        1.0.0)

    	luni/src/test/java/org/apache/harmony/xnet/provider/jsse/NativeCryptoTest.java

        Extensive test of new TrustedCertificateStore behavior
    	luni/src/test/java/org/apache/harmony/xnet/provider/jsse/TrustedCertificateStoreTest.java

        TestKeyStore improvements
        - Refactored TestKeyStore to provide simpler createCA method (and
          internal createCertificate)
        - Cleaned up to remove use of BouncyCastle specific X509Principal
          in the TestKeyStore API when the public X500Principal would do.
        - Cleaned up TestKeyStore support methods to not throw Exception
          to remove need for static blocks for catch clauses in tests.

    	support/src/test/java/libcore/java/security/TestKeyStore.java
    	luni/src/test/java/libcore/java/security/KeyStoreTest.java
    	luni/src/test/java/org/apache/harmony/xnet/provider/jsse/NativeCryptoTest.java

        Added private PKIXParameters contructor for use by
        IndexedPKIXParameters to avoid wart of having to lookup and pass
        a TrustAnchor to satisfy the super-class sanity check.

    	luni/src/main/java/org/apache/harmony/xnet/provider/jsse/TrustManagerImpl.java
    	luni/src/main/java/org/apache/harmony/xnet/provider/jsse/IndexedPKIXParameters.java
    	luni/src/main/java/java/security/cert/PKIXParameters.java

    packages/apps/CertInstaller

        Change CertInstaller to call IKeyChainService.installCertificate
        for CA certs to pass them to the KeyChainServiceTest which will
        make them available to all apps through the
        TrustedCertificateStore. Change PKCS12 extraction to use AsyncTask.

    	src/com/android/certinstaller/CertInstaller.java

        Added installCaCertsToKeyChain and hasCaCerts accessor for use by
        CertInstaller. Use hasUserCertificate() internally. Cleanup coding
        style.

    	src/com/android/certinstaller/CredentialHelper.java

    packages/apps/KeyChain

        Added MANAGE_ACCOUNTS so that IKeyChainService.reset
        implementation can remove KeyChain accounts.

    	AndroidManifest.xml

        Implement new IKeyChainService methods:
        - Added IKeyChainService.installCaCertificate to install certs
          provided by CertInstaller using the TrustedCertificateStore.
        - Added IKeyChainService.reset to allow Settings to remove the
          KeyChain accounts so that any app granted access to keystore
          credentials are revoked when the keystore is reset.

    	src/com/android/keychain/KeyChainService.java

    packages/apps/Settings

        Changed com.android.credentials.RESET credential reset action to
        also call IKeyChainService.reset to remove any installed user CAs
        and remove KeyChain accounts to have AccountManager revoke
        credential granted to private keys removed during the RESET.

    	src/com/android/settings/CredentialStorage.java

        Added toast text value for failure case

    	res/values/strings.xml

    system/core

        Have init create world readable /data/misc/keychain to allow apps
        to access user added CA certificates installed by the CertInstaller.

    	rootdir/init.rc

Change-Id: Ie329aafe88f6ebe108d25382f587c933f3244e55
2011-05-16 18:03:58 -07:00
Gilles Debunne
6019c7dcba Merge "Refactoring in memory storage stats" 2011-05-16 11:14:26 -07:00
Gilles Debunne
5162a23b21 Refactoring in memory storage stats
Removed hard coded NUM_MEDIA_DIRS_TRACKED - 1 in loops and used actual
constants instead to make it less brittle if we add more categories.

Change-Id: I51ce9e7faca1ee55cf369eedf9422628b9501e13
2011-05-13 14:23:52 -07:00
satok
722ea03231 Fix NPE in InputMethodAndLanguageSettings
Bug: 4422368

Change-Id: I495eb8de9928922b18b37c6658bd8fd8b4ee3e1a
2011-05-14 04:56:12 +09:00
Gilles Debunne
e3b5428611 Merge "Fixes in UsageBarPreference" 2011-05-13 11:17:45 -07:00
Jean Chalard
c087e35d7f Enable showing the user dictionary in several locales.
Bug: 3479738
Change-Id: Ic57a5675c44c36ad255f9927da151ad6a2a8c44c
2011-05-11 22:26:32 +09:00
Gilles Debunne
783be0a24f Fixes in UsageBarPreference
The widget layout that was used resulted in a clipped usage bar.
It also had a 6dip left offset inherited from the default layout
which adds margin after the text (even if the text is empty here).
Used a custom layout for the whole preference to fix this issue.

Other fixes in the drawing code to prevent accumulative rounding
issues.

Change-Id: Ief9bf85260345355615c9670624d86f0893eb2d2
2011-05-06 14:12:15 -07:00
Narayan Kamath
934d21dc2a Use the old TTS settings API for now.
Change-Id: I8ca3fcb0aee5572694e573f4ceaa0df261c807c3
2011-05-05 13:41:11 +01:00