Skip to content

Android 4.2.1 doesn't support new enough SSL for NWS's webserver #53

Open
@justdave

Description

@justdave

The built-in SSL libraries in Android 4.2.1 (which is our second-lowest supported OS version) will not connect to the NWS webserver - server rejects the connection for unsupported SSL versions.

According to the Play Store, there are 3 devices using this app that are on this version of Android or older (and one of those 3 is one of my devices).

So we're either going to need to stop supporting devices this old, or find a way to statically link a more modern SSL library in the app.

javax.net.ssl.SSLHandshakeException: javax.net.ssl.SSLProtocolException: SSL handshake aborted: ssl=0x5d839e00: Failure in SSL library, usually a protocol error
error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure (external/openssl/ssl/s23_clnt.c:741 0x41446c38:0x00000000)
    at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:420)
    at libcore.net.http.HttpConnection.setupSecureSocket(HttpConnection.java:209)
    at libcore.net.http.HttpsURLConnectionImpl$HttpsEngine.makeSslConnection(HttpsURLConnectionImpl.java:478)
    at libcore.net.http.HttpsURLConnectionImpl$HttpsEngine.connect(HttpsURLConnectionImpl.java:442)
    at libcore.net.http.HttpEngine.sendSocketRequest(HttpEngine.java:290)
    at libcore.net.http.HttpEngine.sendRequest(HttpEngine.java:240)
    at libcore.net.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:81)
    at libcore.net.http.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:165)
    at net.justdave.nwsweatheralertswidget.NWSBackgroundService.sendHttpRequest(NWSBackgroundService.java:164)
    at net.justdave.nwsweatheralertswidget.NWSBackgroundService.access$200(NWSBackgroundService.java:23)
    at net.justdave.nwsweatheralertswidget.NWSBackgroundService$1.run(NWSBackgroundService.java:43)
    at java.util.Timer$TimerImpl.run(Timer.java:284)
Caused by: javax.net.ssl.SSLProtocolException: SSL handshake aborted: ssl=0x5d839e00: Failure in SSL library, usually a protocol error
error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure (external/openssl/ssl/s23_clnt.c:741 0x41446c38:0x00000000)
    at org.apache.harmony.xnet.provider.jsse.NativeCrypto.SSL_do_handshake(Native Method)
    at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:378)
	... 11 more

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions