[MDEV-6671] mysql_server_end breaks OpenSSL Created: 2014-08-31 Updated: 2021-10-22 Resolved: 2015-01-19 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | SSL |
| Affects Version/s: | 5.5.39, 10.0.13 |
| Fix Version/s: | 5.5.42, 10.0.16 |
| Type: | Bug | Priority: | Major |
| Reporter: | Timo R. | Assignee: | Sergei Golubchik |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Environment: |
mariadb built with OpenSSL |
||
| Description |
|
Calling mysql_server_end calls OpenSSL cleanup functions via vio_end. In my case, it's a plugin that's dynamicaly loaded and unloaded at runtime into an application that itself doesn't use mysql. As a result, the application that loads and unloads the plugin is no longer able to accept or initiate any SSL encrypted connections. Here's a short example on how to trigger the issue: |
| Comments |
| Comment by Sergei Golubchik [ 2014-11-16 ] | |
|
What could a fix be? For example, I can try to detect whether OpenSSL was initialized when libmysqlclient is loaded and skip the initialization (and, consequently, deinitialization) in this case. This won't work very well, though, if an application loads and unloads plugins dynamically, many plugins use SSL and libmysqlclient-linked plugin by pure chance is loaded first (the plugin will initialize OpenSSL, so it'll deinitialize it too, even if other plugins might be using SSL at the moment). Perhaps, add a new option, something like
| |
| Comment by Sergei Golubchik [ 2015-01-14 ] | |
|
Oromit, are you still affected by this issue? I want to implement a solution that actually works for those, who are affected. And it seems that you're the only one who is. | |
| Comment by Timo R. [ 2015-01-14 ] | |
|
Yes, the issue still exists for me. |