If the hostname verifier calls SSLSocket#getSession() before the
handshake has been started, it will implicitly start the handshake.
However, it will swallow any errors and return the canonical invalid
SSLSession instead. This makes it extremely difficult to debug issues.
Instead start the handshake before calling into the verifier since we
are guaranteed to be the first caller of #startHandshake() and won't
cause a renegotiation. That will allow us to see the actual
SSLHandshakeException if it occurs.
Follow up for change 317c0a4959df0361431d5fbf7dacc162bfb48cd2
Bug: 21118659
Change-Id: I8c606a78ba8a990b4e0d28880b566867261fefbc
If the hostname verifier calls SSLSocket#getSession() before the
handshake has been started, it will implicitly start the handshake.
However, it will swallow any errors and return the canonical invalid
SSLSession instead. This makes it extremely difficult to debug issues.
Instead start the handshake before calling into the verifier since we
are guaranteed to be the first caller of #startHandshake() and won't
cause a renegotiation. That will allow us to see the actual
SSLHandshakeException if it occurs.
(cherry picked from commit 317c0a4959df0361431d5fbf7dacc162bfb48cd2 in
external/apache-http)
Bug: 14975169
Bug: 17332309
Bug: 17524215
Bug: 17812533
Bug: 18507278
Bug: 19069992
Bug: 19378885
Bug: 19414083
Bug: 19550311
Bug: 19731556
Bug: 19853723
Bug: 20908941
Bug: 21118659
Change-Id: Ie74ec12c8b131c7bf400a07fc91c78da4d5e470f
In the original implementation, we would only save the state if the
activity was "!isFinishing()". That was abstracted into a method
that returned whether we should save state. However, the "!" wasn't
removed. D'oh.
Bug: 20860094
Change-Id: I8827cb265f2e7fb911f5d110c56e464aa092bfe7
Part of this API involves persisting config bundles to avoid binding to
apps at critical moments (like boot). Regular bundles should not be
written to disk because they support object types that can lose their
meaning while the data is at rest.
In order to use PersistableBundle, we must either start with one or
filter unwanted types out of Bundle objects. Since the carrier config
API has no use for unsupported types, we chose to use PersistableBundle
everywhere.
Bug: 20268926
Change-Id: I17989ce840014c2a0ed3679c1bca5a8498082c7f
The Views created for the Toolbar were not cleaned up properly when the
mode was cancelled by the client in onCreateActionMode, leading to the
toolbar appearing over other views when it shouldn't due to
onWindowFocusChanged showing the Toolbar if it exists.
We don't actually need the views if we don't know whether they are
going to be shown yet, so moved view creation to after onCreateActionMode
Bug: 20713912
Change-Id: Ic0c31d1634e1e96d9981a77b2c769306a8bf1a8d
Add a class that monitors on-link IP reachability and notifies
callers whenever any on-link addresses of interest appear to have
become unresponsive.
Bug: 18581716
Change-Id: I333eee6fe30fa97a21297c6745de14ceb95bb661
Add netlink socket helpers and parsing code for basic netlink messages.
Additionally, support from some neighbor discovery -specific messages
is included.
Bug: 18581716
Change-Id: Ib2aa924222b63cdbebf09a8bf8ff35ee24269fc5
It turned out that after the API change from ViewAssistStructure to
ViewStructure, the suggested mechanism did not work, and webview
started throwing abstractmethoderror exceptions. Temporarily
solve the problem by wrapping ViewStructure inside a
ViewAssistStructure. Once Webview APK is updated, drop it.
Change-Id: I09dfe7dac9c2bc7c037d842844c61dd879629470
Surface basic StorageManager commands through shell tool, like
simple listing of disks and volumes, and commands like mounting and
partitioning.
The output is designed to be parsed by host-side testing tools,
instead of relying on fragile dumpsys parsing.
Bug: 19993667
Change-Id: I993e92ecf57996678965945f0ae648b392a77ea2