Bug #85068 MySQL InnoDB Cluster 5.7.17 Preview 2 errors when compiling with openssl
Submitted: 20 Feb 2017 5:25 Modified: 23 Mar 2017 0:21
Reporter: Jason Miele Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Router Severity:S2 (Serious)
Version:MySQL InnoDB Cluster 5.7.17 Preview 2 OS:CentOS (7)
Assigned to: CPU Architecture:Any

[20 Feb 2017 5:25] Jason Miele
Description:
"MySQL InnoDB Cluster 5.7.17 Preview 2" throws an error when trying to make with openssl (vs yaSSL).  

/home/centos/mysql-router-2.1.1-labs/src/router/src/common/my_aes_openssl.cc: In function ‘my_bool myaes::my_aes_needs_iv(myaes::my_aes_opmode)’:
/home/centos/mysql-router-2.1.1-labs/src/router/src/common/my_aes_openssl.cc:225:45: error: new declaration ‘my_bool myaes::my_aes_needs_iv(myaes::my_aes_opmode)’
 my_bool my_aes_needs_iv(my_aes_opmode opmode)
                                             ^
In file included from /home/centos/mysql-router-2.1.1-labs/src/router/src/common/my_aes_openssl.cc:22:0:
/home/centos/mysql-router-2.1.1-labs/src/router/include/mysqlrouter/my_aes.h:135:6: error: ambiguates old declaration ‘bool myaes::my_aes_needs_iv(myaes::my_aes_opmode)’

How to repeat:
cmake MySQL-Router with 

/home/centos/cmake-3.8.0/bin/cmake . -DWITH_PROTOBUF=/home/centos/protobuf-3.0.0 -DWITH_MYSQL=/home/centos/mysql-5.7.17/ -DProtobuf_SRC_ROOT_FOLDER=/home/centos/protobuf-3.0.0/src -DProtobuf_PROTOC_EXECUTABLE=/home/centos/protobuf-3.0.0/src/protoc -DWITH_SSL=system -DCMAKE_CXX_FLAGS="-I\"/home/centos/mysql-5.7.17/include\""

the -DCMAKE_CXX_FLAGS moves the error a little farther along from the original error:
/home/centos/mysql-router-2.1.1-labs/src/router/src/common/my_aes_openssl.cc:20:23: fatal error: my_global.h: No such file or directory
 #include <my_global.h>
                       ^
compilation terminated.
make[2]: *** [harness/harness/CMakeFiles/harness-library.dir/__/__/src/router/src/common/my_aes_openssl.cc.o] Error 1
[6 Mar 2017 9:24] MySQL Verification Team
Hi,

Thanks for your report, verified as report.
for workaround - use yassl

best regards
Bogdan Kecman
[8 Mar 2017 16:28] Jason Miele
This bug also affects the MySQL Router 2.1.2 Release Candidate
[8 Mar 2017 17:29] MySQL Verification Team
https://bugs.mysql.com/bug.php?id=85377 marked as duplicate of this one.
[23 Mar 2017 0:21] Philip Olson
Posted by developer:
 
Fixed as of the upcoming MySQL Router 2.1.3 release, and here's the changelog entry:

  Router would compile against yaSSL but not OpenSSL.

Thank you for the bug report.