summaryrefslogtreecommitdiff
path: root/source3/locking
diff options
context:
space:
mode:
authorGary Lockyer <gary@catalyst.net.nz>2019-05-24 11:00:05 +1200
committerGary Lockyer <gary@samba.org>2019-05-27 01:29:48 +0000
commit412afb2aef100e09eb433b8f0cae064fc2a736b7 (patch)
tree2a3eedf4bbb4bc450d31652a7d765762237c4807 /source3/locking
parentda87fa998ab71328f30bcdf5b41aee8675aee48a (diff)
downloadsamba-412afb2aef100e09eb433b8f0cae064fc2a736b7.tar.gz
Fix ubsan null pointer passed as argument 2
Fix ubsan warning null pointer passed as argument 2 when the source pointer is NULL. The calls to memcpy are now guarded by an if (len > 0) Signed-off-by: Gary Lockyer <gary@catalyst.net.nz> Reviewed-by: Andreas Schneider <asn@samba.org> Autobuild-User(master): Gary Lockyer <gary@samba.org> Autobuild-Date(master): Mon May 27 01:29:48 UTC 2019 on sn-devel-184
Diffstat (limited to 'source3/locking')
-rw-r--r--source3/locking/brlock.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/source3/locking/brlock.c b/source3/locking/brlock.c
index e587222bc8a..a24ad68bf3f 100644
--- a/source3/locking/brlock.c
+++ b/source3/locking/brlock.c
@@ -1911,7 +1911,9 @@ static void byte_range_lock_flush(struct byte_range_lock *br_lck)
data.dptr = talloc_array(talloc_tos(), uint8_t, data_len);
SMB_ASSERT(data.dptr != NULL);
- memcpy(data.dptr, br_lck->lock_data, lock_len);
+ if (lock_len > 0) {
+ memcpy(data.dptr, br_lck->lock_data, lock_len);
+ }
memcpy(data.dptr + lock_len, &br_lck->num_read_oplocks,
sizeof(br_lck->num_read_oplocks));