Replace one Valgrind suppression for OpenSSL with a deallocation
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Percona Server moved to https://jira.percona.com/projects/PS |
Fix Released
|
Low
|
Laurynas Biveinis | ||
5.6 |
Fix Released
|
Low
|
Laurynas Biveinis |
Bug Description
=== modified file 'mysql-
--- mysql-test/
+++ mysql-test/
@@ -1045,16 +1045,6 @@
}
{
- OpenSSL still reachable.
- Memcheck:Leak
- fun:malloc
- fun:CRYPTO_malloc
- fun:sk_new
- ...
- fun:SSL_
- fun:SSL_
-}
-{
BUG#14801497 CONDITIONAL JUMP OR MOVE DEPENDS ON UNINITIALISED VALUE(S) IN CREATE_TMP_TABLE
Memcheck:Cond
fun:
=== modified file 'vio/vio.c'
--- vio/vio.c 2014-02-17 11:12:40 +0000
+++ vio/vio.c 2014-07-10 11:49:48 +0000
@@ -368,5 +368,6 @@
ERR_
EVP_cleanup();
CRYPTO_
+ sk_SSL_
#endif
}
Related branches
- Sergei Glushchenko (community): Approve (g2)
tags: | added: ci upstream valgrind |
This causes collision when using php which loads mysql module (linked with percona libs) and curl module (that uses libcurl). Both, percona and curl are trying to free the same global data.
https:/ /github. com/curl/ curl/issues/ 905
Why percona doesn't use proper API - SSL_COMP_ free_compressio n_methods( ) ?
SSL_COMP_ free_compressio n_methods( ) uses sk_pop_free() which is protected from double free.
--- percona- server- 5.6.28- 76.1/vio/ vio.c~ 2016-01-08 23:12:24.000000000 +0100 server- 5.6.28- 76.1/vio/ vio.c 2016-07-19 18:54:23.648042457 +0200 free_strings( ); cleanup_ all_ex_ data(); COMP_free( SSL_COMP_ get_compression _methods( )); free_compressio n_methods( );
+++ percona-
@@ -399,6 +399,6 @@ void vio_end(void)
ERR_
EVP_cleanup();
CRYPTO_
- sk_SSL_
+ SSL_COMP_
#endif
}