summaryrefslogtreecommitdiffstats
path: root/luni/src/main/java
Commit message (Collapse)AuthorAgeFilesLines
* Merge tag 'android-6.0.1_r3' of ↵Steve Kondik2015-12-082-2/+8
|\ | | | | | | | | | | https://android.googlesource.com/platform/libcore into HEAD Android 6.0.1 release 3
| * Patch for awaitNanos() for coarse-grained clocksNeil Fuller2015-10-092-2/+8
| | | | | | | | | | | | | | | | | | | | If System.nanoTime() returns the same value twice in awaitNanos() then (remaining == initialNanos) will be true but the code will conclude that a (less likely) overflow occurred. Bug: 24284239 (cherry-picked from commit 8fc2ac0fa8eb47ce607f8412e469d4f680b6ef85) Change-Id: I3b9d573ea822e18f4c1849c8ab66071e66274a50
* | libcore: add a way to clear cached time zone stringsRoman Birg2015-11-072-0/+19
| | | | | | | | | | | | | | Ref: CYNGNOS-453 Change-Id: I5aaf315f0d2b7b039cacb5de135501cea4f7cf0c Signed-off-by: Roman Birg <roman@cyngn.com>
* | fix getNetworkInterfacesList with unexpected files in /sys/class/netDedy Lansky2015-10-061-1/+6
|/ | | | | | | | | | | | | getNetworkInterfacesList works by iterating over all files in /sys/class/net. It expects that each file is actually a directory containing an "ifindex" file. It is possible that /sys/class/net contains files that doesn't adhere to above expectation in which case getNetworkInterfacesList returned with exception. This commit fixes this by ignoring files that do not adhere to above expectation. Change-Id: Ic39a0a9d311fc3269a5d1a8a5e6cbadc3f5a2105
* Fix broken Zip64 extended info size checks.Narayan Kamath2015-07-313-32/+51
| | | | | | | | | | | | | | | | | | | | | | | We assumed that all fields listed in the extended info layout were always present. This is not the case. Only the size / uncompressed size are required fields (in the LFH) and the directory offset is required only if the corresponding field in the regular record is 0xFFFFFFFF. The same goes for disk number too, but we don't support spanned archives, so we can assume that it's never present. This change also fixes a spec violation where we were *not* writing 0xFFFFFFFF to the central directories LFH offset field when we were putting the actual information in the Zip64 Extended info field. This change also adds lower level unit tests to some of the Zip64 parsing functions since it's pretty hard (impossible ?) to find a Zip64 tool that outputs stuff in the format we want. bug: 22851464 (cherry picked from commit 837aeb356c331960073e5ddbf449779c6194f164) Change-Id: I031b3151b7deeda8a0a98acfba3f5a906c0c360c
* Update code name / version number.Narayan Kamath2015-07-291-1/+1
| | | | | bug: 19890045 Change-Id: I058972a86021846429263c59869544627a073686
* Late binding: add Cipher#init checksKenny Root2015-07-231-82/+208
| | | | | | | | | | | | | | | | | | | | | | | | Cipher should check that the chosen CipherSpi actually supports initalization with the given parameters. If not, it should return the first exception that it ran into so that the developer can have an idea of why the initialization failed. This is most likely do to unsupported key or algorithm parameters. Collapse some functions into one so it's easier to keep track of the exception that should be thrown should all else fail. Also since we try to initialize during the CipherSpi selection, there is no need to initialize the returned CipherSpi again. Also remove an instanceof check to be in line with other implementations that just throw a ClassCastException since we now will try other providers before falling back to throwing the unchecked exception. This might actually provide better debug messages for a developer working on a CipherSpi provider. (cherry picked from commit f591462f7901011b2bce61c3cbbdc54840e5b4bc) Bug: 22573249 Change-Id: Ieec97a8f00e9c0c3889520a3ec9f8bc4e514b35a
* javax.crypto.Cipher: try less specific Cipher/Mode/Padding combinations ↵Sergio Giro2015-07-131-23/+19
| | | | | | | | | | | before throwing InvalidKeyException Also, return saved spi in getSpi instead of recomputing a new one Bug: 22208820 (cherry picked from commit 8157603ccf1ff124c5bebc8755404a9a825f47d3) Change-Id: I30a06ef7d9234769b5592a0c7d665c8afa2a8ff8
* Add getxattr/setxattr/removexattr syscalls.Jeff Sharkey2015-07-025-0/+17
| | | | | Bug: 20275572 Change-Id: I958056f757f095ad6278624e293a5583d9cee822
* Add ENONET to OsConstantsErik Kline2015-06-241-0/+4
| | | | | | Bug: 19537384 Change-Id: I155f3db741bdac96f1ecb1ccb15b31faab85e819 (cherry picked from commit 959a23e37abdfa26059e3770eacfe36dea8fc01c)
* Make sure the Services cache is refreshedKenny Root2015-06-221-0/+1
| | | | | | | | | | | During the class initialization, a special path is taken when all the built-in providers are initialized. This means that the "needsRefresh" flag is not set initially and the cache is not refreshed when the SecureRandom service is checked. Bug: 21970647 Change-Id: Idb796ec5e3ac04424e5fd3a90607666ae23817d5 (cherry picked from commit 10dced1155cb3689ca63383a3b0b794bc3735268)
* Merge "Mark deprecated ciphers visually" into mnc-devKenny Root2015-06-122-146/+162
|\
| * Mark deprecated ciphers visuallyKenny Root2015-06-122-146/+162
| | | | | | | | | | | | | | | | To make it easier to spot non-deprecated ciphers in the sea of deprecated ciphers, try to visually distinguish it with CSS styling. Bug: 21522548 Change-Id: I802024a3c33f0da394163c393ebd45a3d0bf75d0
* | Fix lookup order when opening directly from APKDmitriy Ivanov2015-06-111-6/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | The order should be as follows: 1. Uncompressed native library dir (if any) 2. Directly from apk (<apk>!/lib/<abi>) 3. vendor/lib:/system/lib Bug: http://b/21647354 Bug: http://b/21667767 Bug: http://b/21726698 Bug: http://b/8076853 Change-Id: I62cd76b7e4ae927d865d7d0ee81ceb91caa54e99
* | libcore: throw InvalidKeyException instead of ProviderExceptionSergio Giro2015-06-094-55/+145
| | | | | | | | | | | | | | | | | | | | | | | | In java.security javax.crypto and java.security classes with late binding, when guessing the provider and none of the available ones supports the specified key Bug: 18987633 (cherry pick from e38b83dd96281d178b01476b67d354655bf2de62) Change-Id: I5931046e9044984baf724157138bf3a7c7ef5e90
* | Add VMRuntime.runFinalizationWithTimeoutMathieu Chartier2015-06-052-11/+22
|/ | | | | | | Used by native allocations to prevent deadlocks. Bug: 21544853 Change-Id: I57b2f7ae8b74185922eb3c15ba0ab71a4d2348aa
* Update offered ciphersKenny Root2015-06-042-102/+102
| | | | | | | | Dropped support for non-ephemeral Diffie-Hellman cipher suites, anonymous authentication, some DES cipher suites, and export cipher suites. Bug: 21522548 Change-Id: Ie2048d303890935969cc7c1ac7bc9d93705c7a90
* Replace hyphen with en dashKenny Root2015-06-032-112/+112
| | | | | | | | | | Since this is a number range, the appropriate punctuation is actually en dash. (cherry picked from commit 814e15db27ab930f59c8e6731b901a6c82b8e262) Bug: 21522548 Change-Id: I99fe4c3a45b2df00671af4b6b82b21aa2c265820
* Improve HttpURLConnection Performance docsNeil Fuller2015-06-031-6/+14
| | | | | | | | Bug: 21582657 Bug: https://code.google.com/p/android/issues/detail?id=174949 (cherry-picked from commit b33ae4f5857e7b9ed870336655d2b42673c69146) Change-Id: Ide0cb3ae300dbad5ae371ae7ac4fcae363ca0eba
* Don't throw UnsupportedOpEx on multi-char negative/percent symbols.Narayan Kamath2015-05-281-3/+17
| | | | | | | | | | | | | There seem to be a fair number of apps that call through to this function, so just give them a "bogus" value (from Locale.ROOT) when we encounter a multi-char symbol. The formatters and other java.text APIs already use the correct multi-char value. bug: 18785260 (cherry picked from commit c3cedb412d85ffeb8121b69308b2d2c35c63b287) Change-Id: I71225102d4f501aaa689fa6e5f84ee967e32f0c8
* Serialize minusSign/percentSign as strings in DecimalFormatSymbols.Narayan Kamath2015-05-271-4/+28
| | | | | | | | | | | | This allows us to Parcel DFS objects (not sure why anybody would do that, but..) without crashes. bug: https://code.google.com/p/android/issues/detail?id=170718 bug: 21455225 (cherry picked from commit 4fd2c14ce54447f13cd115e105d7b000adf24c2e) Change-Id: I8f860b3fc764932291000ac6651bc95a8e457a99
* Revert "Expose getSpi from crypto operations as hidden API."Alex Klyubin2015-05-194-22/+4
| | | | | | | | | | | | This reverts commit 050e672aaaaa8f8c57788e8d551f43c5fbffe339. The users of public getSpi have been migrated to getCurrentSpi introduced in 5d15925a79b8beddfafa8de2ede7fff360a386cb. (cherry-picked from commit c52bf74f7e53b9f58bbeb29f4d248e7dba7d15ce) Bug: 18088752 Change-Id: Ied72c8a62a49d9fba8b7bc2d3ef2e30da7daa6e4
* Merge "Get rid of old Harmony Services cache" into mnc-devKenny Root2015-05-193-65/+33
|\
| * Get rid of old Harmony Services cacheKenny Root2015-05-193-65/+33
| | | | | | | | | | | | | | | | | | | | | | | | Each java.security.Provider.Service has its own cache, so there is not a lot of benefit to having another cache of the caches. In fact, this makes adding a new provider a huge hit. This change makes adding a new empty provider go from ~5080 microseconds to 73 microseconds. (cherry picked from commit cc4791ad77128039c93d4c03b582d4dc397e6a02) Bug: 21159204 Change-Id: Ib23032f8cb0def79367a321b48241b6cc94de6b0
* | Expose getCurrentSpi from crypto operations as hidden API.Alex Klyubin2015-05-184-0/+57
|/ | | | | | | | | | | | | | | | | | | | | | | 050e672aaaaa8f8c57788e8d551f43c5fbffe339 exposed the existing getSpi method of Cipher, Signature, Mac, and KeyAgreement as hidden API. Unfortunately, the getSpi method creates an SPI instance if one is not yet set. This changes the state of the crypto operation and does does not lend itself well to being used for read-only querying of the SPI from a crypto operation. This CL addresses the issue by adding a getCurrentSpi hidden API to these crypto operations. getCurrentSpi simply returns the current SPI instance, if any, and does not modify the state of the crypto operation. A follow-up CL will revert 050e672aaaaa8f8c57788e8d551f43c5fbffe339 which will no longer be needed. This is not reverted here to avoid breaking the build. (cherry-picked from commit 5d15925a79b8beddfafa8de2ede7fff360a386cb) Bug: 18088752 Change-Id: I8de4c121c9a395b3687b173d0bba4e1931ebf958
* Update ICU / CLDR / Unicode versions for the preview.Narayan Kamath2015-05-131-0/+4
| | | | | | | | | We don't have a release number or a codename yet, but this information is still useful. bug: 19890045 Change-Id: I272e9b9cdfa103f469cb84f1bb4648b39a4510d0
* Fix for TimSort in the two Java forms in libcoreNeil Fuller2015-05-132-10/+45
| | | | | | | Bug: 19493779 (cherry-picked from commit f547d3aa155a20cfc7cb9852f595ce0806bd1198) Change-Id: I71c7c143386aa4d805b6f1418b72573ddec05dec
* Fix a couple of Locale bugs discovered by ICU4J tests.Narayan Kamath2015-05-121-6/+28
| | | | | | | | | | | | | | | | | ULocaleTest revealed two issues : - We weren't handling the legacy ja_JP_JP and th_TH_TH locales correctly. - We weren't lower-casing the extension key in forLanguageTag. This shouldn't matter since language tags are case insensitive, by definition but the convention is to keep them lowercase. This also fixes a bug in the builder where extension keys were case sensitive since we weren't normalizing them properly. bug: 20252611 (cherry picked from commit e45a8ec4f4c53bd068e2eec6d3d07e7567e8381a) Change-Id: Ide19c959c53e44f07e6b781a130c220b52e18352
* Fix bug in formatting intervals at month boundaries.Travis Keep2015-05-121-1/+1
| | | | | | | | | | | | | | | | | | | In formatting date intervals, we subtract one day from the end time if it falls on midnight the next day so that both times are in the same day, thereby avoiding the date appearing in the formatted interval. We did this by calling endCalendar.roll(Calendar.DAY_OF_MONTH, false). However, if endCalendar was 1 May 2015 (say), the date rolls over to 31 May 2015 (this is the documented behaviour of roll). We now use endCalendar.add(Calendar.DAY_OF_MONTH, -1) which always subtracts a day so that 1 May 2015 becomes 30 April 2015, this is the desired behavior. bug: 20708022 (cherry picked from commit 13faecd3105c23f8a60ce3a5847056489fd2d037) Change-Id: Ic947c7c65008d23d1cb1b9bde6af35972ac6acd7
* Document that null collections aren't valid input.Narayan Kamath2015-05-111-1/+6
| | | | | bug: https://code.google.com/p/android/issues/detail?id=172274 Change-Id: Ib397bef6744249fd3241c03dc7cd5eb30f87fa75
* Merge "Libcore: Correct IllegalAccessError class javadoc" into mnc-devAndreas Gampe2015-05-051-2/+8
|\
| * Libcore: Correct IllegalAccessError class javadocAndreas Gampe2015-05-011-2/+8
| | | | | | | | | | | | | | | | | | IllegalAccessError can be thrown in more than one case. Correct the class documentation to be general, and state example cases of the error. Bug: 19997575 Change-Id: I8b14d8b2fcd77f547d377bec2eecc326743fb671
* | Don't accept [path|file|line].separator from the commandline.Narayan Kamath2015-05-011-7/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | We hardcode these values elsewhere in the system, so we shouldn't open ourselves up to inconsistent behaviour when these things are overriden from the command line. It's already impossible to override them using System.setProperty and friends. bug: 20133619 (cherry picked from commit bb3beca471e368c8f5fbf2331e71fc85194f3549) Change-Id: If893ab7e2e8e143b3373a060fef4cc20cf13a544
* | am 3bb83381: Add a ZoneInfoDB.hasTimeZone API.Narayan Kamath2015-04-301-0/+4
|\ \ | |/ | | | | | | * commit '3bb833819dba8d530620ad6d43dc53c3fd54763b': Add a ZoneInfoDB.hasTimeZone API.
| * Add a ZoneInfoDB.hasTimeZone API.Narayan Kamath2015-04-301-0/+4
| | | | | | | | | | | | | | | | | | Allows us to query the DB without having to clone an object or an entire strings array. bug: 19106773 bug: 19987403 Change-Id: I66d466e414972b02a75bcfe68263e74de8b9a768
| * Update JSR-166 to Revision 1.43Narayan Kamath2015-04-3054-457/+708
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is CVS HEAD as of Tue Mar 24 22:30:53 2015 UTC with android specific patches applied. All android patches have a clear "android-note" header. - Most changes are documentation related. - @hide tags have been applied to 1.8 APIs - Atomic*Updater have been updated to use VMStack.* APIs. bug: 20628776 bug: https://code.google.com/p/android/issues/detail?id=170073 (cherry picked from commit aa2ed9e105504f21641d919b410c692981cfe386) Change-Id: Ie7ce1780eda837f3455e6aa365861886956c4063
* | am 834566b1: Merge "Update JSR-166 to Revision 1.43"Narayan Kamath2015-04-2954-457/+708
|\ \ | | | | | | | | | | | | * commit '834566b144399db3c3cdd744963b8e5eeb19e6c4': Update JSR-166 to Revision 1.43
| * | Update JSR-166 to Revision 1.43Narayan Kamath2015-04-2954-457/+708
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is CVS HEAD as of Tue Mar 24 22:30:53 2015 UTC with android specific patches applied. All android patches have a clear "android-note" header. - Most changes are documentation related. - @hide tags have been applied to 1.8 APIs - Atomic*Updater have been updated to use VMStack.* APIs. bug: 20628776 bug: https://code.google.com/p/android/issues/detail?id=170073 Change-Id: Iead730222b4376f947e7dc05b0acaf608eccf238
* | | am 930025e2: Merge "Date.toString must always use Locale.US."Narayan Kamath2015-04-281-10/+12
|\ \ \ | |/ / | | | | | | | | | * commit '930025e26a243235f02b30f97c5c5e378e1334e1': Date.toString must always use Locale.US.
| * | Date.toString must always use Locale.US.Narayan Kamath2015-04-281-10/+12
| | | | | | | | | | | | | | | | | | bug: https://code.google.com/p/android/issues/detail?id=81924 Change-Id: Id5e0ec6514f159d548617e5d9946088078b89afa
* | | am 39f72b16: Merge "Removed offset and value from String and added ↵Jeff Hao2015-04-283-1117/+13
|\ \ \ | |/ / | | / | |/ |/| | | | | StringFactory." * commit '39f72b16952fbe4aff5c2e080ce9f7f6dbb1b93d': Removed offset and value from String and added StringFactory.
| * Removed offset and value from String and added StringFactory.Jeff Hao2015-04-273-1117/+13
| | | | | | | | Change-Id: I55314ceb906d0bf7e78545dcd9bc3489a5baf03f
* | am 8c95e178: am 2b7e589a: Merge "Tidy up Package and classloader comments"Neil Fuller2015-04-242-12/+7
|\ \ | |/ | | | | | | * commit '8c95e17836c652ea89d5bfa94feab4396c332f6e': Tidy up Package and classloader comments
| * Merge "Tidy up Package and classloader comments"Neil Fuller2015-04-242-12/+7
| |\
| | * Tidy up Package and classloader commentsNeil Fuller2015-04-222-12/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After commit 31ae6d22605a0967d722f935bc3a8b868ada4917 Remove a TODO, improve a test and fix a comment. Also fixes a bug in Package demonstrated by the improved test. Bug: 20482259 Change-Id: I6b37413d7004ce85c99bb854e0ec41e5f8588250
* | | am 975ebbc7: am dcc9e76a: Merge "Remove unnecessary code from ↵Narayan Kamath2015-04-242-2/+7
|\ \ \ | |/ / | | | | | | | | | | | | | | | InputStreamReader/OutputStreamWriter.init." * commit '975ebbc76ae07da5db4865bf76be6a22221740b4': Remove unnecessary code from InputStreamReader/OutputStreamWriter.init.
| * | Remove unnecessary code from InputStreamReader/OutputStreamWriter.init.Narayan Kamath2015-04-242-2/+7
| | | | | | | | | | | | | | | | | | | | | Explicitly check that the decoder/encoder isn't null instead. bug: 20452644 Change-Id: Ia43be6b03842af4e5c8945c8854db618b6ec357a
* | | am d3f115a1: am 73e9c6e1: Merge "java/io/RandomAccessFile: do not nullify ↵Sergio Giro2015-04-241-1/+4
|\ \ \ | |/ / | | | | | | | | | | | | | | | FileChannel when closing the RAF" * commit 'd3f115a1c42e73b4759cc049fa7114439b847162': java/io/RandomAccessFile: do not nullify FileChannel when closing the RAF
| * | Merge "java/io/RandomAccessFile: do not nullify FileChannel when closing the ↵Sergio Giro2015-04-241-1/+4
| |\ \ | | | | | | | | | | | | RAF"
| | * | java/io/RandomAccessFile: do not nullify FileChannel when closing the RAFSergio Giro2015-04-221-1/+4
| | |/ | | | | | | | | | | | | | | | | | | getChannel() should return always the same FileChannel, even if it's closed Bug: 19892782 Change-Id: I5bd853b6b0931d9a6320a655c4ef982c9beaa6c0