question

Nandish Bellad avatar image
Nandish Bellad asked

Duplicate symbols in openssl's libcrypto when Python-iOS framework is used along with Amazon Fling frameworks

When AmazonFling.framework and Python-iOS framework are used together we are getting duplicate symbol issue:

Example warning :

ld: warning: duplicate symbol '_CRYPTO_memcmp' in:
/Users/Development/TestPythonApp/AmazonFling.framework/AmazonFling(cryptlib.o)
/Users/Library/Developer/Xcode/DerivedData/TestPythonApp-akquhzlstsszvfdavaajjevmysua/Build/Products/Debug-iphoneos/libcrypto.a(arm64cpuid.o)
ld: warning: duplicate symbol '_OPENSSL_cpuid_setup' in:
/Users/Development/TestPythonApp/AmazonFling.framework/AmazonFling(cryptlib.o)
/Users/Library/Developer/Xcode/DerivedData/TestPythonApp-akquhzlstsszvfdavaajjevmysua/Build/Products/Debug-iphoneos/libcrypto.a(armcap.o)
ld: warning: duplicate symbol '_OPENSSL_showfatal' in:
/Users/Development/TestPythonApp/AmazonFling.framework/AmazonFling(cryptlib.o)
/Users/Library/Developer/Xcode/DerivedData/TestPythonApp-akquhzlstsszvfdavaajjevmysua/Build/Products/Debug-iphoneos/libcrypto.a(cryptlib.o)
ld: warning: duplicate symbol '_OPENSSL_isservice' in:
/Users/Development/TestPythonApp/AmazonFling.framework/AmazonFling(cryptlib.o)
/Users/Library/Developer/Xcode/DerivedData/TestPythonApp-akquhzlstsszvfdavaajjevmysua/Build/Products/Debug-iphoneos/libcrypto.a(cryptlib.o)
ld: warning: duplicate symbol '_EVP_add_digest' in:

There are 76 more duplicate warnings.

We tried to delete the duplicate symbol in AmazonFling framework using lipo and ar commands. However , I think Amazon framework is using old openssl version , so when removed some of the apis are not there in latest version of openssl that Python-iOS uses.

Questions:

1. Can I know which version of openssl is used in AmazonFling SDK ?

2. Also I see in openssl.org below is mentioned ,

Note: The latest stable version is the 1.1.1 series. This is also our Long Term Support (LTS) version, supported until 11th September 2023. All older versions (including 1.1.0, 1.0.2, 1.0.0 and 0.9.8) are now out of support and should not be used. Users of these older versions are encouraged to upgrade to 1.1.1 as soon as possible.

if AmazonFling SDK is using older version can we get a new version of AmazonFling SDK which is built with latest version of openssl ?

sdkamazon flingmobile apis and services
10 |5000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Levon@Amazon avatar image
Levon@Amazon answered

Hi there,

Thanks for posting on the forum! In the current Fling SDK, openssl-1.0.2h is in use. However at the moment, we don't have plans to change it. Thanks!

10 |5000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Maria Janes avatar image
Maria Janes answered

Hello and thanks a lot for sharing. One more point to add is the comparison of Python vs Nodejs.

10 |5000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.