ctdb_ltdb_fetch() only fills in relevant portion of ctdb_ltdb_header
if the record does not exist. This can result in uninitialized writes
to ctdb_rec_buffer.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13036
Signed-off-by: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
(cherry picked from commit
a878171cb432673f635a75cce0b72c92bb0d3ec7)
Autobuild-User(v4-7-test): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(v4-7-test): Sat Sep 16 13:34:33 CEST 2017 on sn-devel-144
return EIO;
}
- header->rsn = 0;
- header->dmaster = CTDB_UNKNOWN_PNN;
- header->flags = 0;
+ *header = (struct ctdb_ltdb_header) {
+ .dmaster = CTDB_UNKNOWN_PNN,
+ };
if (data != NULL) {
*data = tdb_null;