mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
fix gcc 8 compiler warnings
There were two newly enabled warnings: 1. cast for a function pointers. Affected sql_analyse.h, mi_write.c and ma_write.cc, mf_iocache-t.cc, mysqlbinlog.cc, encryption.cc, etc 2. memcpy/memset of nontrivial structures. Fixed as: * the warning disabled for InnoDB * TABLE, TABLE_SHARE, and TABLE_LIST got a new method reset() which does the bzero(), which is safe for these classes, but any other bzero() will still cause a warning * Table_scope_and_contents_source_st uses `TABLE_LIST *` (trivial) instead of `SQL_I_List<TABLE_LIST>` (not trivial) so it's safe to bzero now. * added casts in debug_sync.cc and sql_select.cc (for JOIN) * move assignment method for MDL_request instead of memcpy() * PARTIAL_INDEX_INTERSECT_INFO::init() instead of bzero() * remove constructor from READ_RECORD() to make it trivial * replace some memcpy() with c++ copy assignments
This commit is contained in:
@ -25,6 +25,10 @@ struct encryption_service_st encryption_handler;
|
||||
|
||||
extern "C" {
|
||||
|
||||
uint no_get_key(uint, uint, uchar*, uint*)
|
||||
{
|
||||
return ENCRYPTION_KEY_VERSION_INVALID;
|
||||
}
|
||||
uint no_key(uint)
|
||||
{
|
||||
return ENCRYPTION_KEY_VERSION_INVALID;
|
||||
@ -47,6 +51,11 @@ static unsigned int get_length(unsigned int slen, unsigned int key_id,
|
||||
return my_aes_get_size(MY_AES_CBC, slen);
|
||||
}
|
||||
|
||||
uint ctx_size(unsigned int, unsigned int)
|
||||
{
|
||||
return MY_AES_CTX_SIZE;
|
||||
}
|
||||
|
||||
} /* extern "C" */
|
||||
|
||||
int initialize_encryption_plugin(st_plugin_int *plugin)
|
||||
@ -72,8 +81,7 @@ int initialize_encryption_plugin(st_plugin_int *plugin)
|
||||
if (handle->crypt_ctx_size)
|
||||
encryption_handler.encryption_ctx_size_func= handle->crypt_ctx_size;
|
||||
else
|
||||
encryption_handler.encryption_ctx_size_func=
|
||||
(uint (*)(unsigned int, unsigned int))my_aes_ctx_size;
|
||||
encryption_handler.encryption_ctx_size_func= ctx_size;
|
||||
|
||||
encryption_handler.encryption_ctx_init_func=
|
||||
handle->crypt_ctx_init ? handle->crypt_ctx_init : ctx_init;
|
||||
@ -102,8 +110,7 @@ int finalize_encryption_plugin(st_plugin_int *plugin)
|
||||
|
||||
if (used)
|
||||
{
|
||||
encryption_handler.encryption_key_get_func=
|
||||
(uint (*)(uint, uint, uchar*, uint*))no_key;
|
||||
encryption_handler.encryption_key_get_func= no_get_key;
|
||||
encryption_handler.encryption_key_get_latest_version_func= no_key;
|
||||
encryption_handler.encryption_ctx_size_func= zero_size;
|
||||
}
|
||||
|
Reference in New Issue
Block a user