MCPcopy Create free account
hub / github.com/Vector35/binaryninja-api / cb_read

Method cb_read

rust/src/file_accessor.rs:41–59  ·  view source on GitHub ↗
(
            ctxt: *mut c_void,
            dest: *mut c_void,
            offset: u64,
            len: usize,
        )

Source from the content-addressed store, hash-verified

39 }
40
41 extern "C" fn cb_read<F>(
42 ctxt: *mut c_void,
43 dest: *mut c_void,
44 offset: u64,
45 len: usize,
46 ) -> usize
47 where
48 F: Read + Write + Seek + Sized,
49 {
50 let f = unsafe { &mut *(ctxt as *mut F) };
51 let dest = unsafe { slice::from_raw_parts_mut(dest as *mut u8, len) };
52
53 if f.seek(SeekFrom::Start(offset)).is_err() {
54 log::debug!("Failed to seek to offset {:x}", offset);
55 0
56 } else {
57 f.read(dest).unwrap_or(0)
58 }
59 }
60
61 extern "C" fn cb_write<F>(
62 ctxt: *mut c_void,

Callers

nothing calls this directly

Calls 2

seekMethod · 0.45
readMethod · 0.45

Tested by

no test coverage detected