Skip to content

Commit 14b7440

Browse files
authored
Merge pull request #12 from sunrise-choir/fix_unsoundness
Ensure buffer is zeroed for reading
2 parents 65084dd + 1b643df commit 14b7440

File tree

2 files changed

+3
-5
lines changed

2 files changed

+3
-5
lines changed

src/go_offset_log.rs

+1-2
Original file line numberDiff line numberDiff line change
@@ -215,8 +215,7 @@ where
215215
{
216216
// Entry is [payload size: u64, payload ]
217217

218-
let mut buf = Vec::with_capacity(frame.data_size);
219-
unsafe { buf.set_len(frame.data_size) };
218+
let mut buf = vec![0; frame.data_size];
220219

221220
let n = read_at(&mut buf, frame.data_start())?;
222221
if n < frame.data_size {

src/offset_log.rs

+2-3
Original file line numberDiff line numberDiff line change
@@ -335,8 +335,7 @@ where
335335
let tail_size = size_of_frame_tail::<ByteType>();
336336
let to_read = frame.data_size + tail_size;
337337

338-
let mut buf = Vec::with_capacity(to_read);
339-
unsafe { buf.set_len(to_read) };
338+
let mut buf = vec![0; to_read];
340339

341340
let n = read_at(&mut buf, frame.data_start())?;
342341
if n < to_read {
@@ -353,7 +352,7 @@ where
353352
offset: frame.offset,
354353
data: buf,
355354
},
356-
next: next,
355+
next,
357356
})
358357
}
359358

0 commit comments

Comments
 (0)