MDEV-9613: keyfile without any keys crashes mysqld on loading file_key_management plugin

Code was assuming that the keys file would contain at least one valid
key. This caused a Dynamic_array::at(0) call that lead to the crash.
This commit is contained in:
Vicențiu Ciorbaru 2016-03-21 17:47:15 +02:00
commit 16ddd1824c
4 changed files with 16 additions and 1 deletions

View file

@ -220,7 +220,7 @@ bool Parser::parse_file(Dynamic_array<keyentry> *keys, const char *secret)
keys->sort(sort_keys);
my_free(buffer);
if (keys->at(0).id != 1)
if (keys->elements() == 0 || keys->at(0).id != 1)
{
report_error("System key id 1 is missing", 0);
return 1;