diff options
author | unknown <msvensson@neptunus.(none)> | 2006-05-08 17:14:06 +0200 |
---|---|---|
committer | unknown <msvensson@neptunus.(none)> | 2006-05-08 17:14:06 +0200 |
commit | bc324937327f480e0dff314480884aea8397869d (patch) | |
tree | 6f4ee6d9633aea38f1767615f02b4dbdfe74c49f | |
parent | c593d1f1cac06e9e8a549febaa13d72f90eec4f4 (diff) | |
download | mariadb-git-bc324937327f480e0dff314480884aea8397869d.tar.gz |
Remove valgrind and compiler warnings
Add function 'vio_end' that will cleanup resources allocated by vio and the components it uses.
include/violite.h:
Import patch warnings.patch
libmysql/libmysql.c:
Import patch warnings.patch
sql/mysqld.cc:
Import patch warnings.patch
vio/test-ssl.c:
Import patch warnings.patch
vio/test-sslclient.c:
Import patch warnings.patch
vio/test-sslserver.c:
Import patch warnings.patch
vio/vio.c:
Import patch warnings.patch
vio/viosslfactories.c:
Import patch warnings.patch
-rw-r--r-- | include/violite.h | 4 | ||||
-rw-r--r-- | libmysql/libmysql.c | 1 | ||||
-rw-r--r-- | sql/mysqld.cc | 2 | ||||
-rw-r--r-- | vio/test-ssl.c | 4 | ||||
-rw-r--r-- | vio/test-sslclient.c | 2 | ||||
-rw-r--r-- | vio/test-sslserver.c | 4 | ||||
-rw-r--r-- | vio/vio.c | 13 | ||||
-rw-r--r-- | vio/viosslfactories.c | 2 |
8 files changed, 26 insertions, 6 deletions
diff --git a/include/violite.h b/include/violite.h index b2a5f1640a5..fd870177c68 100644 --- a/include/violite.h +++ b/include/violite.h @@ -129,6 +129,8 @@ int vio_write_shared_memory(Vio *vio, const gptr buf, int size); int vio_close_shared_memory(Vio * vio); #endif +void vio_end(void); + #ifdef __cplusplus } #endif @@ -193,7 +195,9 @@ struct st_vio my_bool (*was_interrupted)(Vio*); int (*vioclose)(Vio*); void (*timeout)(Vio*, unsigned int which, unsigned int timeout); +#ifdef HAVE_OPENSSL void *ssl_arg; +#endif #ifdef HAVE_SMEM HANDLE handle_file_map; char *handle_map; diff --git a/libmysql/libmysql.c b/libmysql/libmysql.c index bfec476fde3..7713fd8dd4d 100644 --- a/libmysql/libmysql.c +++ b/libmysql/libmysql.c @@ -188,6 +188,7 @@ void STDCALL mysql_server_end() mysql_thread_end(); finish_client_errs(); free_charsets(); + vio_end(); mysql_client_init= org_my_init_done= 0; #ifdef EMBEDDED_SERVER if (stderror_file) diff --git a/sql/mysqld.cc b/sql/mysqld.cc index 49efc24d15c..ef2f52a33df 100644 --- a/sql/mysqld.cc +++ b/sql/mysqld.cc @@ -1136,6 +1136,8 @@ void clean_up(bool print_message) my_free((gptr) ssl_acceptor_fd, MYF(0)); } #endif /* HAVE_OPENSSL */ + vio_end(); + #ifdef USE_REGEX my_regex_end(); #endif diff --git a/vio/test-ssl.c b/vio/test-ssl.c index a94eb1a21ff..f8172426e38 100644 --- a/vio/test-ssl.c +++ b/vio/test-ssl.c @@ -57,8 +57,8 @@ main(int argc, char** argv) char* cipher=0; int child_pid,sv[2]; my_bool unused; - struct st_VioSSLAcceptorFd* ssl_acceptor=0; - struct st_VioSSLConnectorFd* ssl_connector=0; + struct st_VioSSLFd* ssl_acceptor= 0; + struct st_VioSSLFd* ssl_connector= 0; Vio* client_vio=0, *server_vio=0; MY_INIT(argv[0]); DBUG_PROCESS(argv[0]); diff --git a/vio/test-sslclient.c b/vio/test-sslclient.c index 3811ba0fb6a..49d6768c884 100644 --- a/vio/test-sslclient.c +++ b/vio/test-sslclient.c @@ -46,7 +46,7 @@ main( int argc __attribute__((unused)), { char client_key[] = "../SSL/client-key.pem", client_cert[] = "../SSL/client-cert.pem"; char ca_file[] = "../SSL/cacert.pem", *ca_path = 0, *cipher=0; - struct st_VioSSLConnectorFd* ssl_connector=0; + struct st_VioSSLFd* ssl_connector= 0; struct sockaddr_in sa; Vio* client_vio=0; int err; diff --git a/vio/test-sslserver.c b/vio/test-sslserver.c index e4d32a75264..daec3a6e6f9 100644 --- a/vio/test-sslserver.c +++ b/vio/test-sslserver.c @@ -44,7 +44,7 @@ fatal_error( const char* r) typedef struct { int sd; - struct st_VioSSLAcceptorFd* ssl_acceptor; + struct st_VioSSLFd* ssl_acceptor; } TH_ARGS; static void @@ -82,7 +82,7 @@ main(int argc __attribute__((unused)), char** argv) char ca_file[] = "../SSL/cacert.pem", *ca_path = 0, *cipher = 0; - struct st_VioSSLAcceptorFd* ssl_acceptor; + struct st_VioSSLFd* ssl_acceptor; pthread_t th; TH_ARGS th_args; diff --git a/vio/vio.c b/vio/vio.c index 21a824a4016..2b0a7f0d79b 100644 --- a/vio/vio.c +++ b/vio/vio.c @@ -233,3 +233,16 @@ void vio_delete(Vio* vio) my_free((gptr) vio,MYF(0)); } } + + +/* + Cleanup memory allocated by vio or the + components below it when application finish + +*/ +void vio_end(void) +{ +#ifdef HAVE_YASSL + yaSSL_CleanUp(); +#endif +} diff --git a/vio/viosslfactories.c b/vio/viosslfactories.c index 058a19dfa0c..2c528e9a2fc 100644 --- a/vio/viosslfactories.c +++ b/vio/viosslfactories.c @@ -220,7 +220,7 @@ static void check_ssl_init() } /************************ VioSSLFd **********************************/ -struct st_VioSSLFd * +static struct st_VioSSLFd * new_VioSSLFd(const char *key_file, const char *cert_file, const char *ca_file, const char *ca_path, const char *cipher, SSL_METHOD *method) |