[SERVER-22986] Linking against SSL3 OpenSSL symbols fails on Archlinux Created: 07/Mar/16  Updated: 20/Nov/16  Resolved: 07/Mar/16

Status: Closed
Project: Core Server
Component/s: Build
Affects Version/s: None
Fix Version/s: 3.2.5, 3.3.3

Type: Bug Priority: Major - P3
Reporter: Spencer Jackson Assignee: Spencer Jackson
Resolution: Done Votes: 1
Labels: code-only
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by SERVER-22242 Compiling current master with a "too ... Closed
Backwards Compatibility: Fully Compatible
Operating System: Linux
Backport Completed:
Sprint: Security 11 (03/11/16)
Participants:

 Description   

ArchLinux recently disabled SSL3 support from OpenSSL: https://projects.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/openssl&id=4b82ed4285c7cb76caf6d75a015c5a7542c625d1

Compiling the server results in the following link time error, after upgrading to 1.0.2.g-3:

src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:81: error: undefined reference to 'SSLv2_client_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:84: error: undefined reference to 'SSLv2_server_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:88: error: undefined reference to 'SSLv3_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:91: error: undefined reference to 'SSLv3_client_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:94: error: undefined reference to 'SSLv3_server_method'
scons: *** [build/autoscons/mongo/mongos] Error 1
clang-3.7: error: linker command failed with exit code 1 (use -v to see invocation)
scons: *** [build/autoscons/mongo/mongod] Error 1
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:78: error: undefined reference to 'SSLv2_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:81: error: undefined reference to 'SSLv2_client_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:84: error: undefined reference to 'SSLv2_server_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:88: error: undefined reference to 'SSLv3_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:91: error: undefined reference to 'SSLv3_client_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:94: error: undefined reference to 'SSLv3_server_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:78: error: undefined reference to 'SSLv2_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:81: error: undefined reference to 'SSLv2_client_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:84: error: undefined reference to 'SSLv2_server_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:88: error: undefined reference to 'SSLv3_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:91: error: undefined reference to 'SSLv3_client_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:94: error: undefined reference to 'SSLv3_server_method'
clang-3.7: error: linker command failed with exit code 1 (use -v to see invocation)
scons: *** [build/autoscons/mongo/db/commands/index_filter_commands_test] Error 1
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:78: error: undefined reference to 'SSLv2_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:81: error: undefined reference to 'SSLv2_client_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:84: error: undefined reference to 'SSLv2_server_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:88: error: undefined reference to 'SSLv3_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:91: error: undefined reference to 'SSLv3_client_method'
src/third_party/asio-asio-1-11-0/asio/include/asio/ssl/impl/context.ipp:94: error: undefined reference to 'SSLv3_server_method'
clang-3.7: error: linker command failed with exit code 1 (use -v to see invocation)
scons: *** [build/autoscons/mongo/db/commands/mr_test] Error 1
clang-3.7: error: linker command failed with exit code 1 (use -v to see invocation)
scons: *** [build/autoscons/mongo/db/commands/plan_cache_commands_test] Error 1
scons: building terminated because of errors.



 Comments   
Comment by Githook User [ 15/Mar/16 ]

Author:

{u'username': u'spencerjackson', u'name': u'Spencer Jackson', u'email': u'spencer.jackson@mongodb.com'}

Message: SERVER-22986: Fix link when OpenSSL disables SSLv3

(cherry picked from commit 459340ce813f7fb5c146a6666222b3c9b869bf72)
Branch: v3.2
https://github.com/mongodb/mongo/commit/e93c4ce3748e86cc4fa304d5c6cc278aa9df3bb8

Comment by Mathias Stearn [ 15/Mar/16 ]

Requesting a backport to 3.2 (at least) since I can't build with --ssl locally without it.

Comment by Githook User [ 07/Mar/16 ]

Author:

{u'username': u'spencerjackson', u'name': u'Spencer Jackson', u'email': u'spencer.jackson@mongodb.com'}

Message: SERVER-22986: Fix link when OpenSSL disables SSLv3
Branch: master
https://github.com/mongodb/mongo/commit/459340ce813f7fb5c146a6666222b3c9b869bf72

Generated at Thu Feb 08 04:02:00 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.