mirror of
https://github.com/samba-team/samba.git
synced 2025-01-10 01:18:15 +03:00
lib/dbwrap: reset deleted record to tdb_null
This allows the calling the following sequence of dbwrap functions: dbwrap_delete_record(rec); data = dbwrap_record_get_value(rec); without triggering the assert rec->value_valid inside dbwrap_record_get_value(). Note that dbwrap_record_storev() continues to invalidate the record, so this change somewhat blurs our semantics. BUG: https://bugzilla.samba.org/show_bug.cgi?id=14882 Signed-off-by: Ralph Boehme <slow@samba.org> Reviewed-by: Volker Lendecke <vl@samba.org> Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Thu Nov 4 19:49:47 UTC 2021 on sn-devel-184
This commit is contained in:
parent
1fa006f1f7
commit
8082e2eb7e
@ -110,16 +110,13 @@ NTSTATUS dbwrap_record_delete(struct db_record *rec)
|
||||
{
|
||||
NTSTATUS status;
|
||||
|
||||
/*
|
||||
* Invalidate before rec->delete_rec() is called, give
|
||||
* rec->delete_rec() the chance to re-validate rec->value.
|
||||
*/
|
||||
rec->value_valid = false;
|
||||
|
||||
status = rec->delete_rec(rec);
|
||||
if (!NT_STATUS_IS_OK(status)) {
|
||||
return status;
|
||||
}
|
||||
|
||||
rec->value = tdb_null;
|
||||
|
||||
return NT_STATUS_OK;
|
||||
}
|
||||
|
||||
|
@ -1 +0,0 @@
|
||||
^samba3.blackbox.smbXsrv_client_dead_rec.check_panic\(fileserver:local\)
|
Loading…
Reference in New Issue
Block a user