diff options
author | unknown <msvensson@shellback.(none)> | 2007-01-26 11:30:54 +0100 |
---|---|---|
committer | unknown <msvensson@shellback.(none)> | 2007-01-26 11:30:54 +0100 |
commit | 82fd1703387dd2ca3fcff18938f9024bc9cee24a (patch) | |
tree | 7eab9ac618ca44b112fcbcc3ff5fb92e0101be7b /vio/vio_priv.h | |
parent | 7d4477f866d26b8bd8e941e6484d843cc30c83c8 (diff) | |
download | mariadb-git-82fd1703387dd2ca3fcff18938f9024bc9cee24a.tar.gz |
Bug#25203 Mysql crashes when mysql_kill() is executed in a connection using SSL
- It's too early to free the SSL object in 'vio_ssl_close'. There
might still be a thread using or reading from it on platforms
where we need to close the active connection/socket in order
to break the read.
- Add new function 'vio_ssl_delete' and install it as the viodelete
function for SSL connections.
vio/vio.c:
Install 'vio_ssl_delete' as viodelete function for SSL connections
Cleanup 'vio_delete'
vio/vio_priv.h:
Add declaration of vio_ssl_delete
vio/viossl.c:
Add new function 'vio_ssl_delete' that takes care of freeing the memory
allocated by the SSL connection
Move the code to free the SSL object from vio_ssl_close
Diffstat (limited to 'vio/vio_priv.h')
-rw-r--r-- | vio/vio_priv.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/vio/vio_priv.h b/vio/vio_priv.h index 6820e49273a..4a272e519a3 100644 --- a/vio/vio_priv.h +++ b/vio/vio_priv.h @@ -32,6 +32,7 @@ int vio_ssl_write(Vio *vio,const gptr buf,int size); /* When the workday is over... */ int vio_ssl_close(Vio *vio); +void vio_ssl_delete(Vio *vio); int vio_ssl_blocking(Vio *vio, my_bool set_blocking_mode, my_bool *old_mode); |