mirror of
https://github.com/systemd/systemd.git
synced 2026-08-03 22:50:29 +00:00
sd-journal: fix memzero size in data hash table setup
journal_file_setup_data_hash_table() allocates s * sizeof(HashItem) bytes for the hash table but then only zeroes s bytes, leaving 15/16 of the entries uninitialized. This corrupts the hash chain in any newly created journal file. The adjacent journal_file_setup_field_hash_table() already uses the correct size. Signed-off-by: dongshengyuan <dongshengyuan@uniontech.com>
This commit is contained in:
committed by
dongshengyuan
parent
1f9d56a7ab
commit
a9e8f89592
@@ -1301,7 +1301,7 @@ static int journal_file_setup_data_hash_table(JournalFile *f) {
|
||||
if (r < 0)
|
||||
return r;
|
||||
|
||||
memzero(o->hash_table.items, s);
|
||||
memzero(o->hash_table.items, s * sizeof(HashItem));
|
||||
|
||||
f->header->data_hash_table_offset = htole64(p + offsetof(Object, hash_table.items));
|
||||
f->header->data_hash_table_size = htole64(s * sizeof(HashItem));
|
||||
|
||||
Reference in New Issue
Block a user