OSDN Git Service

android-x86/dalvik.git
14 years agoAnother doc update.
Andy McFadden [Mon, 21 Sep 2009 23:28:39 +0000 (16:28 -0700)]
Another doc update.

Emphasized the need for global ref with FindClass.  Stated that JNI_OnLoad
is optional.  Added note about FindClass and class loaders.

14 years agoVarious minor changes to Dalvik documentation.
Andy McFadden [Fri, 18 Sep 2009 23:14:41 +0000 (16:14 -0700)]
Various minor changes to Dalvik documentation.

Some updates for Eclair, some minor fixes.

14 years agoMerge change 25603 into eclair
Android (Google) Code Review [Fri, 18 Sep 2009 21:19:01 +0000 (17:19 -0400)]
Merge change 25603 into eclair

* changes:
  Use native code to convert IP addresses to strings.

14 years agoUse native code to convert IP addresses to strings.
Lorenzo Colitti [Thu, 17 Sep 2009 22:01:47 +0000 (15:01 -0700)]
Use native code to convert IP addresses to strings.

- Add a byteArrayToIpString method to the INetworkSystem interface and implement
  it in native code
- Fix the native code so it does better error reporting
- Change InetAddress's getHostAddress, getHostName and getCanonicalHostName
  methods to use it and remove the IPv4-only Java implementations
- Remove Inet6Util.createIPAddrStringFromByteArray
- Fix InetAddress so getByAddress(null) throws UnknownHostException instead of
  NullPointerException for compatibility with the RI.

Change-Id: I26548922e9eed63b295173456183c4ab3ce20718

14 years agoMerge change 24897 into eclair
Android (Google) Code Review [Fri, 18 Sep 2009 19:16:23 +0000 (15:16 -0400)]
Merge change 24897 into eclair

* changes:
  First cut at a tool to perform automated syncs from Harmony to Dalvik.

14 years agoFixing available() and close() for archive streams.
Jesse Wilson [Thu, 17 Sep 2009 01:21:02 +0000 (18:21 -0700)]
Fixing available() and close() for archive streams.

This builds on work originally submitted to Harmony:
  http://issues.apache.org/jira/browse/HARMONY-6210
The approach is to change available() to eagerly set eof to true,
rather than waiting for a read to fail.

14 years agoMerge change 25361 into eclair
Android (Google) Code Review [Wed, 16 Sep 2009 23:11:41 +0000 (19:11 -0400)]
Merge change 25361 into eclair

* changes:
  modify gclog to take a procFilter argument, as well as the debug argument

14 years agomodify gclog to take a procFilter argument, as well as the debug argument
Wei Huang [Wed, 16 Sep 2009 17:11:15 +0000 (10:11 -0700)]
modify gclog to take a procFilter argument, as well as the debug argument

Change-Id: Id897031b76f41600b7665ae27521167c70092247

14 years agoMerge change 25126 into eclair
Android (Google) Code Review [Wed, 16 Sep 2009 21:42:01 +0000 (17:42 -0400)]
Merge change 25126 into eclair

* changes:
  Update archive to the r802921 from Harmony.

14 years agoUpdate archive to the r802921 from Harmony.
Jesse Wilson [Tue, 15 Sep 2009 21:30:29 +0000 (14:30 -0700)]
Update archive to the r802921 from Harmony.

This overdue update includes fixes for some Eclair bugs that I
originally submitted to Harmony: 187678516359821635998

14 years agoReport the cause of name lookup failures to Java land. The Java code already
Lorenzo Colitti [Wed, 16 Sep 2009 02:37:54 +0000 (19:37 -0700)]
Report the cause of name lookup failures to Java land. The Java code already
uses the exception thrown by getallbyname() as a chained exception.

Change-Id: Ifc0d34102412ce0bf34715c9852bf751b420fb40

14 years agoMerge change 25160 into eclair
Android (Google) Code Review [Wed, 16 Sep 2009 01:16:58 +0000 (21:16 -0400)]
Merge change 25160 into eclair

* changes:
  Make getHostByAddr and getHostByName return the proper object type.

14 years agoMake Resources$DefaultTimeZones preloadable again.
Elliott Hughes [Wed, 16 Sep 2009 00:02:16 +0000 (17:02 -0700)]
Make Resources$DefaultTimeZones preloadable again.

http://s9/81864 was a premature optimization that stopped the timezone data
being loaded in the zygote. So instead of paying the (admittedly large) time
and space costs once in the zygote, we now pay them once per application.

Revert the problematic parts of that change. Note that this isn't simply a
reverse patch:

1. I've changed the comment to make it clear that although
this *looks* like idiomatic lazy initialization, it's actually the opposite.
A comment to that effect might have prevented this code from being broken.

2. I've left the last two hunks of the original patch stand, because they
appear reasonable but unrelated.

Bug: 19413111819285.

14 years agoMake getHostByAddr and getHostByName return the proper object type.
Lorenzo Colitti [Tue, 15 Sep 2009 23:20:51 +0000 (16:20 -0700)]
Make getHostByAddr and getHostByName return the proper object type.

Change-Id: I51c75205095b7fe093ccb4451bbf7cc6a287bc49

14 years agoFirst cut at a tool to perform automated syncs from Harmony to Dalvik.
Jesse Wilson [Mon, 14 Sep 2009 18:23:39 +0000 (11:23 -0700)]
First cut at a tool to perform automated syncs from Harmony to Dalvik.

Much of the work of the tool is managing three versions of our code:
 - the current Harmony code
 - the current Dalvik code
 - the common ancestor, an older version of Harmony

The tool calls out to the command line to perform the actual filesystem
work. Eventually I'd like to support all of our modules, and also
gathering diffs to send upstream to Harmony.

14 years agoMerge change 24110 into eclair
Android (Google) Code Review [Tue, 15 Sep 2009 15:49:33 +0000 (11:49 -0400)]
Merge change 24110 into eclair

* changes:
  JarFile was not able to verify signed files with size 0.

14 years agoMerge change 24840 into eclair
Android (Google) Code Review [Mon, 14 Sep 2009 22:31:53 +0000 (18:31 -0400)]
Merge change 24840 into eclair

* changes:
  dalvik: Switch to common cutils sched_policy api

14 years agoMerge change 23348 into eclair
Android (Google) Code Review [Mon, 14 Sep 2009 20:27:39 +0000 (16:27 -0400)]
Merge change 23348 into eclair

* changes:
  Update crypto package to Harmony r802921. Only Javadoc changes.

14 years agoMerge change 24788 into eclair
Android (Google) Code Review [Mon, 14 Sep 2009 17:39:08 +0000 (13:39 -0400)]
Merge change 24788 into eclair

* changes:
  Fixing the delimiter for the HTTP "Accept" header to be well-formed.

14 years agodalvik: Switch to common cutils sched_policy api
San Mehat [Sat, 12 Sep 2009 17:10:13 +0000 (10:10 -0700)]
dalvik: Switch to common cutils sched_policy api

Signed-off-by: San Mehat <san@google.com>
14 years agoMerge change 24508 into eclair
Android (Google) Code Review [Sat, 12 Sep 2009 05:57:05 +0000 (01:57 -0400)]
Merge change 24508 into eclair

* changes:
  Addressed reviewer comments.

14 years agoMerge change 24751 into eclair
Android (Google) Code Review [Fri, 11 Sep 2009 23:24:46 +0000 (19:24 -0400)]
Merge change 24751 into eclair

* changes:
  Windows SDK: add support for -J option to dx.bat

14 years agoFixing the delimiter for the HTTP "Accept" header to be well-formed.
Jesse Wilson [Fri, 11 Sep 2009 23:20:49 +0000 (16:20 -0700)]
Fixing the delimiter for the HTTP "Accept" header to be well-formed.

See bug 2107897.

14 years agoWindows SDK: add support for -J option to dx.bat
Raphael [Fri, 11 Sep 2009 20:33:59 +0000 (13:33 -0700)]
Windows SDK: add support for -J option to dx.bat

BUG 1999508

Change-Id: I0c481d2cc0a96d1ca83aaa56c46c73eae17c2246

14 years agoAddressed reviewer comments.
Bob Lee [Wed, 9 Sep 2009 22:36:29 +0000 (00:36 +0200)]
Addressed reviewer comments.

14 years agoMerge change 24723 into eclair
Android (Google) Code Review [Fri, 11 Sep 2009 20:20:28 +0000 (16:20 -0400)]
Merge change 24723 into eclair

* changes:
  Remove code duplication in InetAddress.getByAddress.

14 years agoRemove code duplication in InetAddress.getByAddress.
Lorenzo Colitti [Fri, 11 Sep 2009 18:28:51 +0000 (11:28 -0700)]
Remove code duplication in InetAddress.getByAddress.

Change-Id: Id2d72572fbe5b26ff4be9a2c959c41a48b859ea0

14 years agoMerge change 24320 into eclair
Android (Google) Code Review [Fri, 11 Sep 2009 19:06:47 +0000 (15:06 -0400)]
Merge change 24320 into eclair

* changes:
  Simplify networking code initialization using static structures instead of code. Fix an uninitialized variable.

14 years agoMerge change 24620 into eclair
Android (Google) Code Review [Fri, 11 Sep 2009 17:51:13 +0000 (13:51 -0400)]
Merge change 24620 into eclair

* changes:
  Fix cert code to use the String form for TELETEX-encoded certs; see bug 2102191.

14 years agoFix cert code to use the String form for TELETEX-encoded certs; see bug 2102191.
Jesse Wilson [Fri, 11 Sep 2009 00:15:47 +0000 (17:15 -0700)]
Fix cert code to use the String form for TELETEX-encoded certs; see bug 2102191.

14 years agoSimplify networking code initialization using static structures instead of code.
Lorenzo Colitti [Wed, 9 Sep 2009 01:30:56 +0000 (18:30 -0700)]
Simplify networking code initialization using static structures instead of code.
Fix an uninitialized variable.

Change-Id: Id9064a185525bfe072b244ea3d2acb56e5e185cd

14 years agodalvik: Use common SchedPolicy type and fix getpid() vs. gettid() bug
San Mehat [Thu, 10 Sep 2009 16:30:03 +0000 (09:30 -0700)]
dalvik: Use common SchedPolicy type and fix getpid() vs. gettid() bug

Signed-off-by: San Mehat <san@google.com>
14 years agoMerge change 24425 into eclair
Android (Google) Code Review [Thu, 10 Sep 2009 15:24:16 +0000 (11:24 -0400)]
Merge change 24425 into eclair

* changes:
  vm: Add support for using scheduler policies instead of cgroups

14 years agovm: Add support for using scheduler policies instead of cgroups
San Mehat [Wed, 9 Sep 2009 03:29:15 +0000 (20:29 -0700)]
vm: Add support for using scheduler policies instead of cgroups

Signed-off-by: San Mehat <san@google.com>
14 years agoDO NOT MERGE: Do not enable JIT_TUNING and assertion by default with JIT.
Ben Cheng [Wed, 9 Sep 2009 21:14:28 +0000 (14:14 -0700)]
DO NOT MERGE: Do not enable JIT_TUNING and assertion by default with JIT.

14 years agoJarFile was not able to verify signed files with size 0.
Urs Grob [Mon, 7 Sep 2009 14:34:47 +0000 (16:34 +0200)]
JarFile was not able to verify signed files with size 0.

This regressen was introduced by harmony optimizations done in HARMONY-4569.
This fix allows for jar entries of size 0 to also get successfully validated.
A regression test has been added to JarFileTest.

14 years agoMerge change 23896 into eclair
Android (Google) Code Review [Mon, 7 Sep 2009 07:52:55 +0000 (00:52 -0700)]
Merge change 23896 into eclair

* changes:
  InputStreamReader forgets to convert incomplete multibyte characters at the buffer boundary

14 years agoModified Thread.c to allow sampling profiler thread in zygote. Added a function that
Bob Lee [Sat, 5 Sep 2009 01:28:16 +0000 (18:28 -0700)]
Modified Thread.c to allow sampling profiler thread in zygote. Added a function that
queries the native thread status. Modified the profiler to sample every thread at
a fixed interval instead of adjusting the delay based on the number of threads. This
will make it easier to compare results across apps. Added ability to shut down
the profiler thread. Added code to track whether the method was a leaf or a
caller.

14 years agoDocument that createSocketFileDescriptor throws an exception on failure.
Lorenzo Colitti [Fri, 4 Sep 2009 20:35:10 +0000 (13:35 -0700)]
Document that createSocketFileDescriptor throws an exception on failure.

Change-Id: Ic002b4dc8c40d798316afbab7a14bd81593e2541

14 years agoMerge change 23983 into eclair
Android (Google) Code Review [Fri, 4 Sep 2009 19:08:18 +0000 (12:08 -0700)]
Merge change 23983 into eclair

* changes:
  If an error occurs when creating a socket, don't call any more JNI methods (thus causing a segfault) but return immediately.

14 years agoIf an error occurs when creating a socket, don't call any more JNI methods
Lorenzo Colitti [Fri, 4 Sep 2009 18:59:12 +0000 (11:59 -0700)]
If an error occurs when creating a socket, don't call any more JNI methods
(thus causing a segfault) but return immediately.

Change-Id: I7d05997e38e631200542f85eba16b854d488d584

14 years agoMerge change 23572 into eclair
Android (Google) Code Review [Fri, 4 Sep 2009 17:48:43 +0000 (10:48 -0700)]
Merge change 23572 into eclair

* changes:
  Do not check hash codes against golden values. Instead, spot check that they differ for different addresses and obvious values (e.g., 0 or 1) that might be returned by buggy implementations.

14 years agoInputStreamReader forgets to convert incomplete multibyte characters at the buffer...
Urs Grob [Wed, 2 Sep 2009 14:27:56 +0000 (16:27 +0200)]
InputStreamReader forgets to convert incomplete multibyte characters at the buffer boundary

BUG=2033986

14 years agoMerge change 22871 into eclair
Android (Google) Code Review [Fri, 4 Sep 2009 01:43:08 +0000 (18:43 -0700)]
Merge change 22871 into eclair

* changes:
  More InetAddress fixes.

14 years agoMore InetAddress fixes.
Lorenzo Colitti [Thu, 27 Aug 2009 01:41:06 +0000 (18:41 -0700)]
More InetAddress fixes.

1. Make sure getHostByAddrImpl actually throws UnknownHostException: set
   NI_NAMEREQD when calling getnameinfo to ensure it will fail if the IP
   address looked up does not have a name associated with it, and pass this
   exception back to the Java code. That way, the UnknownHostException passed
   back to the Java code has information on what went wrong.
2. Remove superfluous logging on reverse lookups in the C code.

Change-Id: Ie195ce1f12e7b43fbf75f494002804f9db68fd8c

14 years agoMerge change 23918 into eclair
Android (Google) Code Review [Fri, 4 Sep 2009 00:43:12 +0000 (17:43 -0700)]
Merge change 23918 into eclair

* changes:
  do not merge: Josh's optimized HashMap and Hashtable

14 years agodo not merge: Josh's optimized HashMap and Hashtable
Jesse Wilson [Thu, 3 Sep 2009 20:16:01 +0000 (13:16 -0700)]
do not merge: Josh's optimized HashMap and Hashtable

This commit squashes two changes from master. The only
additional change is that I've added "implements Map<K, V>"
to the signature of HashMap, which is necessary until we
get Josh's Apicheck fix in the master branch.

commit 5483e8adebc09b7bc58eb568793868388c240116
Author: Joshua Bloch <jjb@google.com>
Date:   Mon Aug 31 17:55:19 2009 -0700

    Replaced existing Hashtable implementation with fast one.

commit 90dbc304086ba1f6f51ed0d0b3a7368cc0fd46cb
Author: Joshua Bloch <jjb@google.com>
Date:   Thu Aug 20 17:34:39 2009 -0700

    Replace existing HashMap and LinkedHashMap with faster versions.
    Among other optimizations, the new versions do no division and
    use a high-quality defensive hash function to minimize the odds
    of poor key distribution among buckets.  Third time's a charm.

14 years agoMerge change 23208 into eclair
Android (Google) Code Review [Thu, 3 Sep 2009 21:03:10 +0000 (14:03 -0700)]
Merge change 23208 into eclair

* changes:
  Fix Class.getConstructor("whatever", (Class[]) null).

14 years agoFix Class.getConstructor("whatever", (Class[]) null).
Elliott Hughes [Fri, 28 Aug 2009 22:54:30 +0000 (15:54 -0700)]
Fix Class.getConstructor("whatever", (Class[]) null).

The RI treats null parameterTypes the same as an empty array.
This behavior is specified for getMethod, but only implied for getConstructor.

This patch:

* Fixes getConstructor.
* Improves javadoc for Class methods taking "Class... parameterTypes".
* Adds tests for both getConstructor and getMethod (which was already correct).
* Removes a line of debugging output to System.out.

Bug: 1824973

14 years agoUpdate GlobalSign Root CA to one that expires in 2028.
Nagendra Modadugu [Thu, 3 Sep 2009 19:01:43 +0000 (12:01 -0700)]
Update GlobalSign Root CA to one that expires in 2028.

14 years agoMerge change 23480 into eclair
Android (Google) Code Review [Thu, 3 Sep 2009 18:12:12 +0000 (11:12 -0700)]
Merge change 23480 into eclair

* changes:
  Add Entrust root and intermediate certs.

14 years agoMerge change 22771 into eclair
Android (Google) Code Review [Thu, 3 Sep 2009 17:39:52 +0000 (10:39 -0700)]
Merge change 22771 into eclair

* changes:
  Don't mutate input in OSMemory.setIntArray/setShortArray.

14 years agoMerge change 23683 into eclair
Android (Google) Code Review [Thu, 3 Sep 2009 14:35:35 +0000 (07:35 -0700)]
Merge change 23683 into eclair

* changes:
  DO NOT MERGE: Fix implementation of Thread.isAlive

14 years agoMerge change 23724 into eclair
Android (Google) Code Review [Wed, 2 Sep 2009 23:47:51 +0000 (16:47 -0700)]
Merge change 23724 into eclair

* changes:
  Fix x86 call bridge

14 years agoFix x86 call bridge
Marco Nelissen [Wed, 2 Sep 2009 23:23:07 +0000 (16:23 -0700)]
Fix x86 call bridge

14 years agoMerge change 23675 into eclair
Android (Google) Code Review [Wed, 2 Sep 2009 22:14:38 +0000 (15:14 -0700)]
Merge change 23675 into eclair

* changes:
  Unbreak Dalvik VM initialization due to a native method that expects to be able to call an InetAddress no-args constructor. This constructor was package-private and was recently removed. This method is horribly complex and should go away (it probably doesn't even work, due to it attempting to find a class known as "java/io/FielDescriptor"), but it needs to be fixed for now.

14 years agoUnbreak Dalvik VM initialization due to a native method that expects to be able
Lorenzo Colitti [Wed, 2 Sep 2009 20:52:54 +0000 (13:52 -0700)]
Unbreak Dalvik VM initialization due to a native method that expects to be able
to call an InetAddress no-args constructor. This constructor was package-private
and was recently removed. This method is horribly complex and should go away (it
probably doesn't even work, due to it attempting to find a class known as
"java/io/FielDescriptor"), but it needs to be fixed for now.

Change-Id: I56b1e0e07f4c97af82e0a4f14dfd2d8af16f6b82

14 years agoDO NOT MERGE: Fix implementation of Thread.isAlive
Andy McFadden [Tue, 1 Sep 2009 19:20:13 +0000 (12:20 -0700)]
DO NOT MERGE: Fix implementation of Thread.isAlive

(Originally submitted to master, pulling over to eclair.)

The implementation of Thread.isAlive() was changed a couple of years ago
as part of the Harmony integration.  The current version relies on the
thread's state value to determine its liveness, but the VM was
originally written to be like JamVM, which used GNU ClassPath, which
uses the vmThread field instead.

It looks like it's possible for Thread.join() to get stuck, though as
far as I know this hasn't happened.

We're essentially rolling back part of 27774-p9.  For internal bug 1966734.

Also: ran --update on test 044.

14 years agoFix two calls to memset(3) whose arguments were reversed.
Elliott Hughes [Wed, 2 Sep 2009 20:37:17 +0000 (13:37 -0700)]
Fix two calls to memset(3) whose arguments were reversed.

External bug 3358 reported the libcore/x-net instance. Manual inspection
turned up another instance in vm, but nothing else in the dalvik package.

Tested by booting sapphire-eng and running the x-net tests.

Bug: 1999244

14 years agoMerge change 22629 into eclair
Android (Google) Code Review [Wed, 2 Sep 2009 18:53:49 +0000 (11:53 -0700)]
Merge change 22629 into eclair

* changes:
  Fix "whatever".split(".") behavior.

14 years agoDo not check hash codes against golden values. Instead, spot check that they
Lorenzo Colitti [Wed, 2 Sep 2009 02:38:28 +0000 (19:38 -0700)]
Do not check hash codes against golden values. Instead, spot check that they
differ for different addresses and obvious values (e.g., 0 or 1) that might be
returned by buggy implementations.

Change-Id: I4c093ccc268c91fc256b4ba76e1243de2d27670d

14 years agoInetAddress refactoring.
Lorenzo Colitti [Tue, 25 Aug 2009 23:56:27 +0000 (16:56 -0700)]
InetAddress refactoring.

1. Refactor all protocol-specific methods from InetAddress into Inet[46]Address.
2. Move all protocol-specific constants from InetAddress into Inet[46]Address.

This change should have no effect on the stack's behaviour but makes it easy to
find parts of the code that still have dependencies on IPv4 so they can be
examined and fixed.

Change-Id: I70860ee04cf7c01bffaa35c8c64199f69d99826f

14 years agoAdd Entrust root and intermediate certs.
Nagendra Modadugu [Tue, 1 Sep 2009 19:49:04 +0000 (12:49 -0700)]
Add Entrust root and intermediate certs.

14 years agoUpdate crypto package to Harmony r802921. Only Javadoc changes.
Jesse Wilson [Mon, 31 Aug 2009 22:37:14 +0000 (15:37 -0700)]
Update crypto package to Harmony r802921. Only Javadoc changes.

commit d5d4307b5b9f37e6f66ab1273be1acd2a29177de
Merge: 2c2287b 1c60d7c
Author: Jesse Wilson <jessewilson@google.com>
Date:   Mon Aug 31 15:36:46 2009 -0700

    Merge branch 'crypto_802921' into crypto_dalvik

    Conflicts:
     libcore/crypto/.classpath
     libcore/crypto/build.xml
     libcore/crypto/src/main/java/javax/crypto/BadPaddingException.java
     libcore/crypto/src/main/java/javax/crypto/Cipher.java
     libcore/crypto/src/main/java/javax/crypto/CipherInputStream.java
     libcore/crypto/src/main/java/javax/crypto/CipherOutputStream.java
     libcore/crypto/src/main/java/javax/crypto/CipherSpi.java
     libcore/crypto/src/main/java/javax/crypto/EncryptedPrivateKeyInfo.java
     libcore/crypto/src/main/java/javax/crypto/ExemptionMechanism.java
     libcore/crypto/src/main/java/javax/crypto/ExemptionMechanismException.java
     libcore/crypto/src/main/java/javax/crypto/ExemptionMechanismSpi.java
     libcore/crypto/src/main/java/javax/crypto/IllegalBlockSizeException.java
     libcore/crypto/src/main/java/javax/crypto/KeyAgreement.java
     libcore/crypto/src/main/java/javax/crypto/KeyAgreementSpi.java
     libcore/crypto/src/main/java/javax/crypto/KeyGenerator.java
     libcore/crypto/src/main/java/javax/crypto/KeyGeneratorSpi.java
     libcore/crypto/src/main/java/javax/crypto/Mac.java
     libcore/crypto/src/main/java/javax/crypto/MacSpi.java
     libcore/crypto/src/main/java/javax/crypto/NoSuchPaddingException.java
     libcore/crypto/src/main/java/javax/crypto/NullCipher.java
     libcore/crypto/src/main/java/javax/crypto/SealedObject.java
     libcore/crypto/src/main/java/javax/crypto/SecretKey.java
     libcore/crypto/src/main/java/javax/crypto/SecretKeyFactory.java
     libcore/crypto/src/main/java/javax/crypto/SecretKeyFactorySpi.java
     libcore/crypto/src/main/java/javax/crypto/ShortBufferException.java
     libcore/crypto/src/main/java/javax/crypto/interfaces/DHKey.java
     libcore/crypto/src/main/java/javax/crypto/interfaces/DHPrivateKey.java
     libcore/crypto/src/main/java/javax/crypto/interfaces/DHPublicKey.java
     libcore/crypto/src/main/java/javax/crypto/interfaces/PBEKey.java
     libcore/crypto/src/main/java/javax/crypto/spec/DESKeySpec.java
     libcore/crypto/src/main/java/javax/crypto/spec/DESedeKeySpec.java
     libcore/crypto/src/main/java/javax/crypto/spec/DHGenParameterSpec.java
     libcore/crypto/src/main/java/javax/crypto/spec/DHParameterSpec.java
     libcore/crypto/src/main/java/javax/crypto/spec/DHPrivateKeySpec.java
     libcore/crypto/src/main/java/javax/crypto/spec/DHPublicKeySpec.java
     libcore/crypto/src/main/java/javax/crypto/spec/IvParameterSpec.java
     libcore/crypto/src/main/java/javax/crypto/spec/OAEPParameterSpec.java
     libcore/crypto/src/main/java/javax/crypto/spec/PBEKeySpec.java
     libcore/crypto/src/main/java/javax/crypto/spec/PBEParameterSpec.java
     libcore/crypto/src/main/java/javax/crypto/spec/PSource.java
     libcore/crypto/src/main/java/javax/crypto/spec/RC2ParameterSpec.java
     libcore/crypto/src/main/java/javax/crypto/spec/RC5ParameterSpec.java
     libcore/crypto/src/main/java/javax/crypto/spec/SecretKeySpec.java

commit 2c2287b521cc5f558d9929e14e31ec92da6285b1
Author: Jesse Wilson <jessewilson@google.com>
Date:   Mon Aug 31 14:56:45 2009 -0700

    crypto_dalvik

commit 1c60d7c222c55ae49add8345a192c54357bb4a1f
Author: Jesse Wilson <jessewilson@google.com>
Date:   Mon Aug 31 14:56:34 2009 -0700

    crypto_802921

commit 50cf7f5d97de2f65ee0769aafec7b5a3551cb5d0
Author: Jesse Wilson <jessewilson@google.com>
Date:   Mon Aug 31 14:56:27 2009 -0700

    crypto_527399

14 years agoUpdate prefs to Harmony r772995.
Jesse Wilson [Mon, 31 Aug 2009 17:52:23 +0000 (10:52 -0700)]
Update prefs to Harmony r772995.

Notable changes:
 - exception handling has changed to cleanup more reliably
 - calls to Collection.toArray() size the array properly
 - lots of style tweaks (rewrapping Javadoc, reintending wrapped code, whitespace)
 - new PrefsTester class ensures tests store prefs in the tmp directory

Squashed commit of the following:

    commit 2157269d8ed39ccb8a71d735c12bbabcfd548243
    Merge: d287282 97818bf
    Author: Jesse Wilson <jessewilson@google.com>
    Date:   Wed Aug 5 11:14:26 2009 -0700

        Merge branch 'prefs_772995' into prefs_dalvik

        Conflicts:
         libcore/prefs/.classpath
         libcore/prefs/.settings/org.eclipse.jdt.core.prefs
         libcore/prefs/build.xml
         libcore/prefs/make/exclude.linux.x86_64.drl
         libcore/prefs/make/exclude.windows.x86.drl
         libcore/prefs/make/exclude.windows.x86_64.drl
         libcore/prefs/src/main/java/java/util/prefs/AbstractPreferences.java
         libcore/prefs/src/main/java/java/util/prefs/BackingStoreException.java
         libcore/prefs/src/main/java/java/util/prefs/FilePreferencesFactoryImpl.java
         libcore/prefs/src/main/java/java/util/prefs/FilePreferencesImpl.java
         libcore/prefs/src/main/java/java/util/prefs/InvalidPreferencesFormatException.java
         libcore/prefs/src/main/java/java/util/prefs/NodeChangeEvent.java
         libcore/prefs/src/main/java/java/util/prefs/NodeChangeListener.java
         libcore/prefs/src/main/java/java/util/prefs/PreferenceChangeEvent.java
         libcore/prefs/src/main/java/java/util/prefs/PreferenceChangeListener.java
         libcore/prefs/src/main/java/java/util/prefs/Preferences.java
         libcore/prefs/src/main/java/java/util/prefs/PreferencesFactory.java
         libcore/prefs/src/main/java/java/util/prefs/RegistryPreferencesFactoryImpl.java
         libcore/prefs/src/main/java/java/util/prefs/RegistryPreferencesImpl.java
         libcore/prefs/src/main/java/java/util/prefs/XMLParser.java
         libcore/prefs/src/main/java/org/apache/harmony/prefs/internal/nls/Messages.java
         libcore/prefs/src/main/native/prefs/windows/PreferencesImpl.c
         libcore/prefs/src/main/native/prefs/windows/hyprefs.rc
         libcore/prefs/src/main/native/prefs/windows/makefile
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/AbstractPreferencesTest.java
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/AllTests.java
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/FilePreferencesImplTest.java
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/MockAbstractPreferences.java
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/MockPreferencesFactory.java
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/MockSecurityManager.java
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/NodeChangeListenerTest.java
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/PreferenceChangeListenerTest.java
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/PreferencesFactoryTest.java
         libcore/prefs/src/test/java/org/apache/harmony/prefs/tests/java/util/prefs/PreferencesTest.java
         libcore/prefs/src/test/java/tests/prefs/AllTests.java

    commit d287282b550d4a5d262f1d1703344ed61bdc6d15
    Author: Jesse Wilson <jessewilson@google.com>
    Date:   Tue Aug 4 14:36:36 2009 -0700

        Dalvik Prefs

    commit 97818bf21cfde744eeb5fbf1f9c31d9bd66f5a2e
    Author: Jesse Wilson <jessewilson@google.com>
    Date:   Tue Aug 4 14:35:52 2009 -0700

        Prefs 772995

    commit 9a506f93947938dad3b41e1393f53b766ba0319f
    Author: Jesse Wilson <jessewilson@google.com>
    Date:   Tue Aug 4 14:22:40 2009 -0700

        Prefs 527399

14 years agoMerge change 23193 into eclair
Android (Google) Code Review [Mon, 31 Aug 2009 14:23:31 +0000 (07:23 -0700)]
Merge change 23193 into eclair

* changes:
  Expand indirect reference ifdefs.

14 years agoExpand indirect reference ifdefs.
Andy McFadden [Fri, 28 Aug 2009 21:45:12 +0000 (14:45 -0700)]
Expand indirect reference ifdefs.

This excludes some things that used to be common between the direct and
indirect reference implementations.  The goal is to restore the original
method call performance.  In particular, we no longer convert native
method arguments to local references when USE_INDIRECT_REF is not
defined.

14 years agoMerge change 22992 into eclair
Android (Google) Code Review [Fri, 28 Aug 2009 21:01:15 +0000 (14:01 -0700)]
Merge change 22992 into eclair

* changes:
  Annotate tests that are failing due to legacy IP address formats that have not been implemented yet.

14 years agoFix reporting of certain verify errors.
Andy McFadden [Fri, 28 Aug 2009 17:38:37 +0000 (10:38 -0700)]
Fix reporting of certain verify errors.

The code was assuming that the reference type could always be inferred
from the error code, but in two cases it couldn't.  This resulted in a
weird string appearing where the class name should be in the exception.
The type is now explicitly stuffed into the replacement instruction.

I added one additional test to 075; with this, plus 003 and 077, I think
we have full coverage.

For bug 2084560.

14 years agoDon't mutate input in OSMemory.setIntArray/setShortArray.
Elliott Hughes [Wed, 26 Aug 2009 16:37:48 +0000 (09:37 -0700)]
Don't mutate input in OSMemory.setIntArray/setShortArray.

We now take a copy and then swap bytes in the copy if necessary,
rather than swapping the input, copying, and swapping the input
back.

I've switched to GetShortArrayRegion/GetIntArrayRegion instead
of GetPrimitiveArrayCritical because the latter makes life
unnecessarily hard for the VM/GC, and requires a second JNI call
to undo.

I've also renamed the native functions to match the Java methods
they implement.

(Tested by running the nio tests on the emulator, with added
logging to check that all four variants are called.)

Bug: 2019584

14 years agoAnnotate tests that are failing due to legacy IP address formats that have not been...
Lorenzo Colitti [Thu, 27 Aug 2009 22:32:55 +0000 (15:32 -0700)]
Annotate tests that are failing due to legacy IP address formats that have not been implemented yet.

Change-Id: Ifdf236450007866f24c8b23d52617c41d4e9c324

14 years agoMerge change 22965 into eclair
Android (Google) Code Review [Thu, 27 Aug 2009 21:28:38 +0000 (14:28 -0700)]
Merge change 22965 into eclair

* changes:
  Fix some JNI indirect reference stuff.

14 years agoUpdate x-net to Harmony r802921.
Jesse Wilson [Tue, 25 Aug 2009 23:30:17 +0000 (16:30 -0700)]
Update x-net to Harmony r802921.

Notable changes
 - synchronization added where it was needed!
 - try/finally added to reliably tear down in DefaultSSLContext
 - ContextImpl deleted, it wasn't necessary
 - methods reordered to make statics first in the class
 - PrivilegedActions parameterized with <Void>
 - DigitalSignature now throws AssertionErrors in impossible states
   and throws AlertExceptions on invalid keys (rather than dumping
   a stacktrace)
 - ValueKeys added to SSLSessionImpl instead of TwoKeyMaps
 - SSLSessionImpl.clone() simplified to do a traditional clone

Squashed commit of the following:

commit 2d9e43d542ab7086af271bf52e847c582decbab1
Merge: 8b79eb4 a8dc377
Author: Jesse Wilson <jessewilson@google.com>
Date:   Tue Aug 25 15:25:21 2009 -0700

    Merge branch 'x-net_802921' into x-net_dalvik

    Conflicts:
     libcore/x-net/.classpath
     libcore/x-net/.settings/org.eclipse.jdt.core.prefs
     libcore/x-net/build.xml
     libcore/x-net/src/main/java/javax/net/DefaultServerSocketFactory.java
     libcore/x-net/src/main/java/javax/net/DefaultSocketFactory.java
     libcore/x-net/src/main/java/javax/net/ServerSocketFactory.java
     libcore/x-net/src/main/java/javax/net/SocketFactory.java
     libcore/x-net/src/main/java/javax/net/ssl/CertPathTrustManagerParameters.java
     libcore/x-net/src/main/java/javax/net/ssl/DefaultHostnameVerifier.java
     libcore/x-net/src/main/java/javax/net/ssl/DefaultSSLContext.java
     libcore/x-net/src/main/java/javax/net/ssl/DefaultSSLSocketFactory.java
     libcore/x-net/src/main/java/javax/net/ssl/HandshakeCompletedEvent.java
     libcore/x-net/src/main/java/javax/net/ssl/HandshakeCompletedListener.java
     libcore/x-net/src/main/java/javax/net/ssl/HostnameVerifier.java
     libcore/x-net/src/main/java/javax/net/ssl/HttpsURLConnection.java
     libcore/x-net/src/main/java/javax/net/ssl/KeyManager.java
     libcore/x-net/src/main/java/javax/net/ssl/KeyManagerFactory.java
     libcore/x-net/src/main/java/javax/net/ssl/KeyManagerFactorySpi.java
     libcore/x-net/src/main/java/javax/net/ssl/KeyStoreBuilderParameters.java
     libcore/x-net/src/main/java/javax/net/ssl/ManagerFactoryParameters.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLContext.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLContextSpi.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLEngine.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLEngineResult.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLException.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLHandshakeException.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLKeyException.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLPeerUnverifiedException.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLPermission.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLProtocolException.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLServerSocket.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLServerSocketFactory.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLSession.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLSessionBindingEvent.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLSessionBindingListener.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLSessionContext.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLSocket.java
     libcore/x-net/src/main/java/javax/net/ssl/SSLSocketFactory.java
     libcore/x-net/src/main/java/javax/net/ssl/TrustManager.java
     libcore/x-net/src/main/java/javax/net/ssl/TrustManagerFactory.java
     libcore/x-net/src/main/java/javax/net/ssl/TrustManagerFactorySpi.java
     libcore/x-net/src/main/java/javax/net/ssl/X509ExtendedKeyManager.java
     libcore/x-net/src/main/java/javax/net/ssl/X509KeyManager.java
     libcore/x-net/src/main/java/javax/net/ssl/X509TrustManager.java
     libcore/x-net/src/main/java/javax/net/ssl/package-info.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/ClientHandshakeImpl.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/HandshakeProtocol.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/JSSEProvider.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/KeyManagerImpl.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/OpenSSLSocketImplWrapper.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLContextImpl.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLServerSocketFactoryImpl.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLServerSocketImpl.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLSessionContextImpl.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLSessionImpl.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLSocketFactoryImpl.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLSocketImpl.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLSocketInputStream.java
     libcore/x-net/src/main/java/org/apache/harmony/xnet/provider/jsse/SSLSocketOutputStream.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/CertPathTrustManagerParametersTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/HandshakeCompletedEventTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/HttpsURLConnectionTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/KeyStoreBuilderParametersTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/SSLContext1Test.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/SSLEngineTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/SSLPermissionTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/SSLServerSocketTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/SSLSocketTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/TrustManagerFactory1Test.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/HandshakeCompletedEventTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/SSLExceptionTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/SSLHandshakeExceptionTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/SSLKeyExceptionTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/SSLPeerUnverifiedExceptionTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/SSLProtocolExceptionTest.java
     libcore/x-net/src/test/api/java/org/apache/harmony/xnet/tests/javax/net/ssl/serialization/SSLSessionBindingEventTest.java
     libcore/x-net/src/test/impl/java.injected/javax/net/ServerSocketFactoryTest.java
     libcore/x-net/src/test/impl/java.injected/javax/net/SocketFactoryTest.java
     libcore/x-net/src/test/impl/java.injected/javax/net/ssl/DefaultSSLServerSocketFactoryTest.java
     libcore/x-net/src/test/impl/java.injected/javax/net/ssl/DefaultSSLSocketFactoryTest.java
     libcore/x-net/src/test/impl/java.injected/javax/net/ssl/HttpsURLConnection_ImplTest.java
     libcore/x-net/src/test/impl/java.injected/javax/net/ssl/SSLServerSocketFactoryTest.java
     libcore/x-net/src/test/impl/java.injected/javax/net/ssl/SSLSocketFactoryTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/CipherSuiteTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/DigitalSignatureTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/HandshakeProtocolTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/KeyManagerImplTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLEngineImplTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLServerSocketImplTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLSessionContextImplTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLSessionImplTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLSocketFactoriesTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLSocketFunctionalTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLSocketImplTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/SSLStreamedInputTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/ServerHandshakeImplTest.java
     libcore/x-net/src/test/impl/java.injected/org/apache/harmony/xnet/provider/jsse/TrustManagerImplTest.java
     libcore/x-net/src/test/impl/java/org/apache/harmony/xnet/tests/provider/jsse/DigitalSignatureTest.java
     libcore/x-net/src/test/impl/java/org/apache/harmony/xnet/tests/provider/jsse/KeyManagerFactoryImplTest.java
     libcore/x-net/src/test/impl/java/org/apache/harmony/xnet/tests/provider/jsse/ProtocolVersionTest.java
     libcore/x-net/src/test/impl/java/org/apache/harmony/xnet/tests/provider/jsse/TrustManagerFactoryImplTest.java
     libcore/x-net/src/test/java/javax/net/ssl/KeyManagerFactorySpiTests.java
     libcore/x-net/src/test/java/javax/net/ssl/MyKeyManagerFactorySpi.java
     libcore/x-net/src/test/java/javax/net/ssl/MySSLContextSpi.java
     libcore/x-net/src/test/java/javax/net/ssl/MyTrustManagerFactorySpi.java
     libcore/x-net/src/test/java/javax/net/ssl/SSLContextSpiTests.java
     libcore/x-net/src/test/java/javax/net/ssl/TrustManagerFactorySpiTests.java
     libcore/x-net/src/test/java/tests/api/javax/net/ssl/KeyManagerFactory1Test.java
     libcore/x-net/src/test/java/tests/api/javax/net/ssl/KeyManagerFactory2Test.java
     libcore/x-net/src/test/java/tests/api/javax/net/ssl/SSLContext2Test.java
     libcore/x-net/src/test/java/tests/api/javax/net/ssl/SSLSessionBindingEventTest.java
     libcore/x-net/src/test/java/tests/api/javax/net/ssl/TrustManagerFactory2Test.java
     libcore/x-net/src/test/support/common/java/org/apache/harmony/xnet/tests/support/MyKeyManagerFactorySpi.java
     libcore/x-net/src/test/support/common/java/org/apache/harmony/xnet/tests/support/MySSLContextSpi.java
     libcore/x-net/src/test/support/common/java/org/apache/harmony/xnet/tests/support/MyTrustManagerFactorySpi.java

commit 8b79eb40a27f0b336d5516606d43162ecead09ca
Author: Jesse Wilson <jessewilson@google.com>
Date:   Tue Aug 25 12:58:17 2009 -0700

    x-net_dalvik

commit a8dc3778cd2a1a5d6d0cfff6eec22e7bfbdb9c14
Author: Jesse Wilson <jessewilson@google.com>
Date:   Tue Aug 25 12:56:55 2009 -0700

    x-net_802921

commit 07ca0ed8aa5927c909f880559c17d162c111608e
Author: Jesse Wilson <jessewilson@google.com>
Date:   Tue Aug 25 12:56:07 2009 -0700

    x-net_527399

commit 9b44ccfc38c2fc2a6cf2c3cc39a13cc5bce635ba
Author: Jesse Wilson <jessewilson@google.com>
Date:   Tue Aug 25 11:14:01 2009 -0700

    Small changes missed in the original submission of 22482.

14 years agoFix some JNI indirect reference stuff.
Andy McFadden [Wed, 26 Aug 2009 14:21:53 +0000 (07:21 -0700)]
Fix some JNI indirect reference stuff.

Convert where needed, don't convert where not needed, and make sure
we're using the right one.

With this, my ad-hoc tests pass, and the boot proceeds until we hit a
failure that looks like it might be due to logic outside the VM.

14 years agoMerge change 22845 into eclair
Android (Google) Code Review [Thu, 27 Aug 2009 17:38:52 +0000 (10:38 -0700)]
Merge change 22845 into eclair

* changes:
  IPv6 fixes to java.net.InetAddress.

14 years agoIPv6 fixes to java.net.InetAddress.
Lorenzo Colitti [Tue, 25 Aug 2009 23:56:27 +0000 (16:56 -0700)]
IPv6 fixes to java.net.InetAddress.

1. Make hashCode() do something that makes sense for IPv6 addresses.
2. Expand coverage of hashCode unit test.
3. Fix failing regression test for getAllByName().
4. Document that the getByName test is broken. I will fix it in a future change.
5. Expand test coverage of the isMulticastAddress test to include IPv6 and
   non-multicast addresses.

All tests now pass.

Change-Id: I6f52c7c3213dd01bf773228b1ed5d44df813f877

14 years agoam dfd0afbc: Each time we start an SSL session, we have to find the trust anchor...
Bob Lee [Thu, 27 Aug 2009 00:28:52 +0000 (17:28 -0700)]
am dfd0afbc: Each time we start an SSL session, we have to find the trust anchor. This used to be an O(N) operation. If the trust anchor we\'re looking for was close to N, finding it could take a couple seconds. This change makes the operation O(1).

Merge commit 'dfd0afbcb08b871e224a28ecb4ed427a7693545c' into eclair

* commit 'dfd0afbcb08b871e224a28ecb4ed427a7693545c':
  Each time we start an SSL session, we have to find the trust anchor. This used to be an O(N) operation. If the trust anchor we're looking for was close to N, finding it could take a couple seconds. This change makes the operation O(1).

14 years agoUpdate sql to Harmony 802921.
Jesse Wilson [Wed, 26 Aug 2009 23:09:16 +0000 (16:09 -0700)]
Update sql to Harmony 802921.

Notable changes
 - ConnectionEvent field changed for serialization
 - Date toString classes no longer use SimpleDateFormat
 - Timestamp doesn't call through an overridable method in its constructor
 - Timestamp now checks the String passed to valueOf() using a regex
 - Properties now specifies a buffer size to avoid a user-inescapable warning

Squashed commit of the following:

commit dd9926cddda4db0227adbc174070791e5a9afa72
Merge: 8be3b27 4bed1fc
Author: Jesse Wilson <jessewilson@google.com>
Date:   Wed Aug 12 10:34:56 2009 -0700

    Merge branch 'sql_802921' into sql_dalvik

    Conflicts:
     libcore/sql/.classpath
     libcore/sql/META-INF/MANIFEST.MF
     libcore/sql/build.xml
     libcore/sql/src/main/java/java/sql/Array.java
     libcore/sql/src/main/java/java/sql/BatchUpdateException.java
     libcore/sql/src/main/java/java/sql/Blob.java
     libcore/sql/src/main/java/java/sql/CallableStatement.java
     libcore/sql/src/main/java/java/sql/Clob.java
     libcore/sql/src/main/java/java/sql/Connection.java
     libcore/sql/src/main/java/java/sql/DataTruncation.java
     libcore/sql/src/main/java/java/sql/DatabaseMetaData.java
     libcore/sql/src/main/java/java/sql/Date.java
     libcore/sql/src/main/java/java/sql/Driver.java
     libcore/sql/src/main/java/java/sql/DriverManager.java
     libcore/sql/src/main/java/java/sql/DriverPropertyInfo.java
     libcore/sql/src/main/java/java/sql/ParameterMetaData.java
     libcore/sql/src/main/java/java/sql/PreparedStatement.java
     libcore/sql/src/main/java/java/sql/Ref.java
     libcore/sql/src/main/java/java/sql/ResultSet.java
     libcore/sql/src/main/java/java/sql/ResultSetMetaData.java
     libcore/sql/src/main/java/java/sql/SQLData.java
     libcore/sql/src/main/java/java/sql/SQLException.java
     libcore/sql/src/main/java/java/sql/SQLInput.java
     libcore/sql/src/main/java/java/sql/SQLOutput.java
     libcore/sql/src/main/java/java/sql/SQLPermission.java
     libcore/sql/src/main/java/java/sql/SQLWarning.java
     libcore/sql/src/main/java/java/sql/Savepoint.java
     libcore/sql/src/main/java/java/sql/Statement.java
     libcore/sql/src/main/java/java/sql/Struct.java
     libcore/sql/src/main/java/java/sql/Time.java
     libcore/sql/src/main/java/java/sql/Timestamp.java
     libcore/sql/src/main/java/java/sql/Types.java
     libcore/sql/src/main/java/javax/sql/ConnectionEvent.java
     libcore/sql/src/main/java/javax/sql/ConnectionEventListener.java
     libcore/sql/src/main/java/javax/sql/ConnectionPoolDataSource.java
     libcore/sql/src/main/java/javax/sql/DataSource.java
     libcore/sql/src/main/java/javax/sql/PooledConnection.java
     libcore/sql/src/main/java/javax/sql/RowSet.java
     libcore/sql/src/main/java/javax/sql/RowSetEvent.java
     libcore/sql/src/main/java/javax/sql/RowSetInternal.java
     libcore/sql/src/main/java/javax/sql/RowSetListener.java
     libcore/sql/src/main/java/javax/sql/RowSetMetaData.java
     libcore/sql/src/main/java/javax/sql/RowSetReader.java
     libcore/sql/src/main/java/javax/sql/RowSetWriter.java
     libcore/sql/src/main/java/javax/sql/rowset/BaseRowSet.java
     libcore/sql/src/main/java/javax/sql/rowset/WebRowSet.java
     libcore/sql/src/main/java/javax/sql/rowset/serial/SerialClob.java
     libcore/sql/src/main/java/javax/sql/rowset/serial/SerialDatalink.java
     libcore/sql/src/main/java/javax/sql/rowset/serial/SerialException.java
     libcore/sql/src/main/java/javax/sql/rowset/serial/SerialJavaObject.java
     libcore/sql/src/main/java/javax/sql/rowset/serial/SerialRef.java
     libcore/sql/src/main/java/javax/sql/rowset/serial/SerialStruct.java
     libcore/sql/src/main/java/javax/sql/rowset/spi/SyncFactory.java
     libcore/sql/src/main/java/javax/sql/rowset/spi/SyncProvider.java
     libcore/sql/src/main/java/javax/transaction/xa/XAException.java
     libcore/sql/src/main/java/org/apache/harmony/sql/internal/nls/Messages.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/BatchUpdateExceptionTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/ConnectionTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/DataTruncationTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/DatabaseMetaDataTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/DateTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/DriverManagerTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/DriverPropertyInfoTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/ParameterMetaDataTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/ResultSetMetaDataTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/ResultSetTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/SQLExceptionTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/SQLPermissionTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/SQLWarningTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/StatementTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/TestHelper_ClassLoader.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/TestHelper_DriverManager.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/TimeTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/TimestampTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/java/sql/TypesTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/ConnectionEventTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/rowset/BaseRowSetTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/rowset/serial/SerialClobTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/rowset/serial/SerialExceptionTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/rowset/serial/SerialJavaObjectTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/rowset/serial/SerialRefTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/sql/rowset/serial/SerialStructTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/transaction/InvalidTransactionExceptionTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/transaction/TransactionRequiredExceptionTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/transaction/TransactionRolledbackExceptionTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/transaction/xa/XAExceptionTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/transaction/xa/XAResourceTest.java
     libcore/sql/src/test/java/org/apache/harmony/sql/tests/javax/transaction/xa/XidTest.java

commit 8be3b27082122a5c5b650ad5aad6a70b45fd58d4
Author: Jesse Wilson <jessewilson@google.com>
Date:   Wed Aug 12 09:39:01 2009 -0700

    Dalvik SQL

commit 4bed1fc3972b50198299137dc152d46dd9d5d532
Author: Jesse Wilson <jessewilson@google.com>
Date:   Wed Aug 12 09:38:11 2009 -0700

    SQL 802921

commit 82f57ed5049955585aecfae659310b6bde3354d8
Author: Jesse Wilson <jessewilson@google.com>
Date:   Wed Aug 12 09:36:42 2009 -0700

    SQL 527399

14 years agoEach time we start an SSL session, we have to find the trust anchor. This used to...
Bob Lee [Wed, 26 Aug 2009 05:32:37 +0000 (22:32 -0700)]
Each time we start an SSL session, we have to find the trust anchor. This used to be an O(N) operation. If the trust anchor we're looking for was close to N, finding it could take a couple seconds. This change makes the operation O(1).

14 years agoMerge change 22659 into eclair
Android (Google) Code Review [Wed, 26 Aug 2009 14:19:51 +0000 (07:19 -0700)]
Merge change 22659 into eclair

* changes:
  Another round of scary indirect ref changes.

14 years agoFix "whatever".split(".") behavior.
Elliott Hughes [Tue, 25 Aug 2009 19:55:27 +0000 (12:55 -0700)]
Fix "whatever".split(".") behavior.

Two special cases in Pattern.split's behavior had been incorrectly combined
into one. Separate the two cases, and add tests. I've run the tests against
Java 1.5 and 1.6 too.

Bug: 1957900

14 years agoAnother round of scary indirect ref changes.
Andy McFadden [Tue, 25 Aug 2009 14:19:34 +0000 (07:19 -0700)]
Another round of scary indirect ref changes.

This change adds a not-really-working implementation to Jni.c, with
various changes #ifdefed throughout the code.  The ifdef is currently
disabled, so the old behavior should continue.  Eventually the old
version will be stripped out and the ifdefs removed.

This renames the stack's "localRefTop" field, which nudged a bunch of
code.  The name wasn't really right before (it's the *bottom* of the
local references), and it's even less right now.  This and one other
mterp-visible constant were changed, which caused some ripples through
mterp and the JIT, but the ifdeffing was limited to one in
asm-constants.h (and the constant is the same both ways, so toggling the
ifdef won't require rebuilding asm sources).

Some comments and arg names in ReferenceTable were updated for the
correct orientation of bottom vs. top.

Some adjustments were made to the JNI code, e.g. dvmCallMethod now needs
to understand if it needs to convert reference arguments from
local/global refs to pointers (it's called from various places
throughout the VM).

14 years agoSmall changes missed in the original submission of 22482.
Jesse Wilson [Tue, 25 Aug 2009 18:14:01 +0000 (11:14 -0700)]
Small changes missed in the original submission of 22482.

14 years agoMerge change 22482 into eclair
Android (Google) Code Review [Tue, 25 Aug 2009 18:07:15 +0000 (11:07 -0700)]
Merge change 22482 into eclair

* changes:
  Update java.text to Harmony r802921.

14 years agoUse local references for native method args.
Andy McFadden [Fri, 21 Aug 2009 21:44:04 +0000 (14:44 -0700)]
Use local references for native method args.

This changes the JNI method call mechanism to register all reference
arguments as local refs, as well as the "this" argument (for virtual
calls) and the class object (for static calls).

Before now we skipped this part, because we're handing raw object
pointers around, and we know that all of the arguments can be found by
the GC on the interpreted stack.  In fact, there's no need to add the
arguments for GC-correctness; rather, we need to do this to rewrite the
pointers we hand to native code.

This change impacts JNI method call performance, especially for functions
with a large number of reference arguments.  To improve things a little,
there are now four "call bridge" functions:

  (1) general handler
  (2) synchronized method handler (grabs lock, calls #1)
  (3) virtual method, no reference args
  (4) static method, no reference args

While booting the system, the virtual/static no-ref handlers are used
for about 70% of calls.  Since these don't have to scan the method
signature to look for reference arguments, they're a bit faster.

At this point we're still passing raw pointers around, so nothing should
really change.

14 years agoUpdate java.text to Harmony r802921.
Jesse Wilson [Mon, 24 Aug 2009 21:05:44 +0000 (14:05 -0700)]
Update java.text to Harmony r802921.

Notable changes:
 - Replaced some StringBuffers with StringBuilders
 - Harmony moved to ICU, we stayed with ResourceBundles
 - Harmony now uses ICU's Bidi, we continue to use BidiWrapper
 - Fixed DateFormat.readResolve()
 - Fixed DecimalFormat serialization for setMaximumIntegerDigits
 - Fixed currency to support "XXX" for null
 - Support for null in MessageFormat.format()
 - Rearranged methods in SimpleDateFormat. Body is the same.
 - Fixed tests for Bidi.getRunLimit(). These are new failures.

commit 112ab830475bc1a1fab9c7a16589b5525892e6a0
Merge: 39b03a1 62c2b2e
Author: Jesse Wilson <jessewilson@google.com>
Date:   Mon Aug 24 14:03:31 2009 -0700

    Merge dalvik and Harmony for java.text

    Conflicts:
     libcore/text/.classpath
     libcore/text/META-INF/MANIFEST.MF
     libcore/text/build.xml
     libcore/text/make/exclude.common
     libcore/text/make/run-test.xml
     libcore/text/src/main/java/java/text/Annotation.java
     libcore/text/src/main/java/java/text/AttributedCharacterIterator.java
     libcore/text/src/main/java/java/text/AttributedString.java
     libcore/text/src/main/java/java/text/Bidi.java
     libcore/text/src/main/java/java/text/BreakIterator.java
     libcore/text/src/main/java/java/text/CharacterIterator.java
     libcore/text/src/main/java/java/text/ChoiceFormat.java
     libcore/text/src/main/java/java/text/CollationElementIterator.java
     libcore/text/src/main/java/java/text/CollationKey.java
     libcore/text/src/main/java/java/text/Collator.java
     libcore/text/src/main/java/java/text/DateFormat.java
     libcore/text/src/main/java/java/text/DateFormatSymbols.java
     libcore/text/src/main/java/java/text/DecimalFormat.java
     libcore/text/src/main/java/java/text/DecimalFormatSymbols.java
     libcore/text/src/main/java/java/text/FieldPosition.java
     libcore/text/src/main/java/java/text/Format.java
     libcore/text/src/main/java/java/text/MessageFormat.java
     libcore/text/src/main/java/java/text/NumberFormat.java
     libcore/text/src/main/java/java/text/ParseException.java
     libcore/text/src/main/java/java/text/ParsePosition.java
     libcore/text/src/main/java/java/text/RuleBasedCollator.java
     libcore/text/src/main/java/java/text/SimpleDateFormat.java
     libcore/text/src/main/java/java/text/StringCharacterIterator.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/AttributedCharacterIteratorAttributeTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/BidiTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/CollationElementIteratorTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/DateFormatSymbolsTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/DateFormatTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/DecimalFormatSymbolsTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/DecimalFormatTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/FieldPositionTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/MessageFormatTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/ParsePositionTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/RuleBasedCollatorTest.java
     libcore/text/src/test/java/org/apache/harmony/text/tests/java/text/SimpleDateFormatTest.java

commit 39b03a1b2b150d468cc15d8ff8a92a07c9098a5c
Author: Jesse Wilson <jessewilson@google.com>
Date:   Wed Aug 19 17:00:36 2009 -0700

    text_dalvik

commit 62c2b2e932da51858998820fe2558631999c1241
Author: Jesse Wilson <jessewilson@google.com>
Date:   Wed Aug 19 17:00:23 2009 -0700

    text_802921

commit 2da8bc3457b9db827d96652e2bf159b7d5040ad1
Author: Jesse Wilson <jessewilson@google.com>
Date:   Wed Aug 19 17:00:08 2009 -0700

    text_527399

14 years agoSet os.arch property from uname().machine.
Andy McFadden [Fri, 21 Aug 2009 20:03:31 +0000 (13:03 -0700)]
Set os.arch property from uname().machine.

Not sure why we didn't just do this in the first place.  I get "x86_64"
on desktop and "armv6l" on a sapphire.

14 years agoMove array pinning out of global references table.
Andy McFadden [Fri, 21 Aug 2009 19:01:31 +0000 (12:01 -0700)]
Move array pinning out of global references table.

We have to pin primitive arrays for certain JNI operations (it's that or
return a copy of the contents).  We don't move objects around in the
virtual heap, so simply creating a global reference is enough to ensure
the correct behavior of the calls.

The global reference implementation is changing in a way that makes
this approach inconvenient, so we now have a separate table for pinned
primitive arrays.

As a bonus, if GREF tracking is enabled, we will scan through the table
when a pin entry is added.  If there are 10 or more entries for the same
array, a complaint is logged.  This should allow us to find mismatched
Get/Release sequences much more easily (before you had to wait until the
global reference table exploded).

We currently scan pin table entries at the same time as the JNI global
references, so they'll still show up in hprof dumps as such.  (Could
also add a new Android-specific hprof root category, but that seems like
more trouble than it's worth.)

14 years agoMerge change 22183 into eclair
Android (Google) Code Review [Fri, 21 Aug 2009 14:24:25 +0000 (07:24 -0700)]
Merge change 22183 into eclair

* changes:
  Progress toward indirect JNI references.

14 years agoam 2b2e488b: Exposed default trust manager.
Bob Lee [Fri, 21 Aug 2009 02:33:27 +0000 (19:33 -0700)]
am 2b2e488b: Exposed default trust manager.

Merge commit '2b2e488b25922b0b34094305cac084073ffbd03c' into eclair

* commit '2b2e488b25922b0b34094305cac084073ffbd03c':
  Exposed default trust manager.

14 years agoExposed default trust manager.
Bob Lee [Fri, 21 Aug 2009 00:34:58 +0000 (17:34 -0700)]
Exposed default trust manager.

14 years agoProgress toward indirect JNI references.
Andy McFadden [Wed, 19 Aug 2009 14:21:41 +0000 (07:21 -0700)]
Progress toward indirect JNI references.

Switch from simple typecasts to conversion functions for the objects
passed in and out of JNI calls.  No real change here; object references
are still just pointers.

Use explicit pin/unpin calls for primitive arrays.  For GetStringChars
we now pin the char[] rather than the String object.  (Which doesn't
make much difference in the grand scheme of things, since you need to
keep the String to pass into the release function anyway.)

14 years agoMerge change 22152 into eclair
Android (Google) Code Review [Thu, 20 Aug 2009 23:16:35 +0000 (16:16 -0700)]
Merge change 22152 into eclair

* changes:
  Fix a couple of compiler warnings.

14 years agoFix a couple of compiler warnings.
Andy McFadden [Thu, 20 Aug 2009 23:13:05 +0000 (16:13 -0700)]
Fix a couple of compiler warnings.

14 years agoMerge change 21907 into eclair
Android (Google) Code Review [Wed, 19 Aug 2009 18:03:58 +0000 (11:03 -0700)]
Merge change 21907 into eclair

* changes:
  Update storage size after expansion.

14 years agoMerge change 21833 into eclair
Android (Google) Code Review [Wed, 19 Aug 2009 17:33:42 +0000 (10:33 -0700)]
Merge change 21833 into eclair

* changes:
  Fixing Unsafe.getUnsafe() to look up the stack the correct number of frames.

14 years agoUpdate storage size after expansion.
Andy McFadden [Wed, 19 Aug 2009 17:32:01 +0000 (10:32 -0700)]
Update storage size after expansion.

We allow expansion in dvmSetBit(), but failed to update the capacity
after doing so.

14 years agoFixing Unsafe.getUnsafe() to look up the stack the correct number of frames.
Jesse Wilson [Wed, 19 Aug 2009 00:21:31 +0000 (17:21 -0700)]
Fixing Unsafe.getUnsafe() to look up the stack the correct number of frames.

Also tests for Unsafe.getUnsafe() and all the requisite AllTests files
to make that show up in the continuous build.

14 years agoEnable IPv6.
Lorenzo Colitti [Tue, 18 Aug 2009 23:14:33 +0000 (16:14 -0700)]
Enable IPv6.

If the system has IPv6 connectivity, query the DNS for IPv6 addresses as well
as IPv4 addresses. If IPv6 addresses are returned, prefer them by default.

Impact of this change:

- If the device is on a network with IPv6 configured, is using wifi, and has
  obtained an IPv6 address using autoconfiguration, the network stack will
  request IPv6 addresses as well as IPv4 addresses when making DNS queries. This
  allows the device to connect to websites and services that declare themselves
  to be reachable over IPv6. If an IPv6 connection fails, the stack will fall
  back to IPv4.  This is what Windows Vista, Mac OS 10.4 and above, and most
  Linux distributions do by default.
- If the device is not on a network that supports IPv6, or is using 3G/EVDO,
  nothing will change.

I have been testing this change on self-compiled builds of master and eclair on
Dream and Sholes for several weeks with no breakage that I can see.

14 years agoMerge change 21796 into eclair
Android (Google) Code Review [Tue, 18 Aug 2009 22:37:06 +0000 (15:37 -0700)]
Merge change 21796 into eclair

* changes:
  Turn down RegisterMap paranoia.