OP_AUTH_NEEDED will be returned from begin when an operation needs
a per operation authentication before calling update. Note that the
begin call succeeds when this error is returned, the token and handle
are valid.
Change-Id: I28953add4ffd7d873fc33ba3f2cf788f72b07d06
This changes the implementation of AndroidKeyStore-backed Cipher and
Mac to avoid throwing runtime exceptions during normal use. Runtime
exceptions will now be thrown only due to truly exceptional and
unrecoverable errors (e.g., keystore unreachable, or crypto primitive
not initialized).
This also changes the implementation of Cipher to cache any errors
encountered in Cipher.update until Cipher.doFinal which then throws
them as checked exceptions.
Bug: 20525947
Change-Id: I3c4ad57fe70abfbb817a79402f722a0208660727
For consistency, this also switches AndroidKeyStore's Mac init/reset
implementation to the same approach as used in Cipher.
Bug: 18088752
Change-Id: Id34caf7cfe04f2058e22d8632890f762927bb31c
NativeCrypto is a conscrypt class that contained several OpenSSL
constants. NativeConstants is the new class that contains the same
thing, but the latter is automatically generated and thus won't drift
from the C headers.
Bug: 20521989
Change-Id: I45c7b9a6844a06e3ffd09be692ebf733e1ebbbcc
And mark existing methods and builder deprecated.
Removed ScriptGroup2 class.
Renamed nested class UnboundValue to Input.
Marked classes Closure, Future, and Input as final.
Change-Id: I362910c115e9d0173dc515674e08bf4878232879
Do not cache compiled regular expression and date formatter. Both
cannot be compile-time created, are expensive at preloading time,
and only used in the rare case of dumping the connection (mainly
on errors).
Bug: 19498458
Bug: 19542228
Change-Id: Ia38491a3f852ccf699b815ff05289b338e932f2a
Because ANR will dump cpu usage, stack traces in ActivityManager
thread, if system is busy or in low-end device, it may spend more
than 5s to dump. So when there is UI operation (e.g. pop dialog)
in ActivityManager thread, it may meet key dispatch timeout.
Change-Id: Ie550e31a7cff65bdcfc9af2c32989e9deb5fb2cf
Use the three-argument version of Class.forName. This saves an
expensive stack lookup for the caller's class-loader on each
invocation.
Bug: 19498458
Change-Id: I859affde31e580fd2de3f70ee0a9295936c2d9f4
This makes MediaPlayer's network streaming code fail fast when an
UnknownServiceException is encountered. This currently occurs when the
application declares that it does not perform cleartext network
traffic and tries to load media over cleartext HTTP. Without this CL,
MediaPlayer blocks for 30 seconds because it treats this error as
recoverable and goes into a ten retry loop with a three second delay
before each retry.
The result at MediaPlayer client level is
MediaPlayer.MEDIA_ERROR_UNKNOWN error. This error code is used for
non-recoverable situations such as when an invalid redirect is
encountered or the destination is unreachable.
Bug: 20026006
Change-Id: I10f0dadb7740902f8c7c73d0df96cfff31f08ada