Watch, Follow, &
Connect with Us

For forums, blogs and more please visit our
Developer Tools Community.


Welcome, Guest
Guest Settings
Help

Thread: OpenSSL is not supported in Android 7.0



Permlink Replies: 4 - Last Post: Jan 29, 2018 10:16 AM Last Post By: Remy Lebeau (Te... Threads: [ Previous | Next ]
duf _

Posts: 28
Registered: 7/2/06
OpenSSL is not supported in Android 7.0
Click to report abuse...   Click to reply to this thread Reply
  Posted: Jul 11, 2017 3:58 PM
I just descover that on android 7.0 version cannot be used Indy TIdIMAP4 with IOHandler IdSSLIOHandlerSocketOpenSSL1 there is a alert like this:
unauthorized access to libssl.so
Indy version 25.0.26309
Is there any method to obtain any solution?
Remy Lebeau (Te...


Posts: 9,447
Registered: 12/23/01
Re: OpenSSL is not supported in Android 7.0
Click to report abuse...   Click to reply to this thread Reply
  Posted: Jul 11, 2017 5:53 PM   in response to: duf _ in response to: duf _
duf _ wrote:

I just descover that on android 7.0 version cannot be used Indy
TIdIMAP4 with IOHandler IdSSLIOHandlerSocketOpenSSL1

Indy has had issues with OpenSSL since Android 6, when Google stopped
supporting OpenSSL and switched to their own fork named BoringSSL.

there is a alert like this: unauthorized access to libssl.so

Hmm, that is a new one I haven't seen before. Apparently, it is new in
Android 7 and is by design:

https://developer.android.com/about/versions/nougat/android-7.0-changes.html#ndk

Basically, they are really locking down on apps that access private
non-NDK libraries, like OpenSSL. In fact, OpenSSL is called out
several times in that article. Long story short, you would have to
deploy your own copy of OpenSSL with your app. Which is not unheard of
as a workaround in Android 6, but I guess is now a requirement in
Android 7 onwards.

Indy version 25.0.26309

That is not an Indy version number.

--
Remy Lebeau (TeamB)
duf _

Posts: 28
Registered: 7/2/06
Re: OpenSSL is not supported in Android 7.0
Click to report abuse...   Click to reply to this thread Reply
  Posted: Jul 13, 2017 10:33 AM   in response to: Remy Lebeau (Te... in response to: Remy Lebeau (Te...
Remy Lebeau (TeamB) wrote:
duf _ wrote:

I just descover that on android 7.0 version cannot be used Indy
TIdIMAP4 with IOHandler IdSSLIOHandlerSocketOpenSSL1

Indy has had issues with OpenSSL since Android 6, when Google stopped
supporting OpenSSL and switched to their own fork named BoringSSL.

there is a alert like this: unauthorized access to libssl.so

Hmm, that is a new one I haven't seen before. Apparently, it is new in
Android 7 and is by design:

https://developer.android.com/about/versions/nougat/android-7.0-changes.html#ndk

Basically, they are really locking down on apps that access private
non-NDK libraries, like OpenSSL. In fact, OpenSSL is called out
several times in that article. Long story short, you would have to
deploy your own copy of OpenSSL with your app. Which is not unheard of
as a workaround in Android 6, but I guess is now a requirement in
Android 7 onwards.

Indy version 25.0.26309

That is not an Indy version number.

--
Remy Lebeau (TeamB)

Version is 10.6.2.5366
Garry Joshi

Posts: 1
Registered: 2/28/18
Re: OpenSSL is not supported in Android 7.0
Click to report abuse...   Click to reply to this thread Reply
  Posted: Jan 28, 2018 12:52 PM   in response to: duf _ in response to: duf _
duf _ wrote:
I just descover that on android 7.0 version cannot be used Indy TIdIMAP4 with IOHandler IdSSLIOHandlerSocketOpenSSL1 there is a alert like this:
unauthorized access to libssl.so
Indy version 25.0.26309
Is there any method to obtain any solution?

Have you been able to figure out any solution bro? I am also using Indy 10.6.2.5366 and encountering "unauthorized access to libssl.so" error.

--
AppValley Test DPC TweakBox
Remy Lebeau (Te...


Posts: 9,447
Registered: 12/23/01
Re: OpenSSL is not supported in Android 7.0
Click to report abuse...   Click to reply to this thread Reply
  Posted: Jan 29, 2018 10:16 AM   in response to: Garry Joshi in response to: Garry Joshi
Garry Joshi wrote:

Have you been able to figure out any solution bro? I am also using
Indy 10.6.2.5366 and encountering "unauthorized access to libssl.so"
error.

Long story short, you should compile the OpenSSL library statically
into your Android app instead of using OpenSSL dynamically. Google has
been saying this since Android 6.

However, Indy is not currently setup to use OpenSSL statically on
Android, only on iOS. But, if you can obtain static OpenSSL libs for
Android and add them to your project without problem, you might try
tweaking Indy's IdSSLOpenSSLHeaders_static.pas unit to use them, and
then enable the STATICLOAD_OPENSSL define in IdCompilerDefines.inc.

--
Remy Lebeau (TeamB)
Legend
Helpful Answer (5 pts)
Correct Answer (10 pts)

Server Response from: ETNAJIVE02