| 1160 | type Result<T, E = types::Error> = std::result::Result<T, E>; |
| 1161 | |
| 1162 | fn write_bytes( |
| 1163 | memory: &mut GuestMemory<'_>, |
| 1164 | ptr: GuestPtr<u8>, |
| 1165 | buf: &[u8], |
| 1166 | ) -> Result<GuestPtr<u8>, types::Error> { |
| 1167 | // NOTE: legacy implementation always returns Inval errno |
| 1168 | |
| 1169 | let len = u32::try_from(buf.len())?; |
| 1170 | |
| 1171 | memory.copy_from_slice(buf, ptr.as_array(len))?; |
| 1172 | let next = ptr.add(len)?; |
| 1173 | Ok(next) |
| 1174 | } |
| 1175 | |
| 1176 | fn write_byte(memory: &mut GuestMemory<'_>, ptr: GuestPtr<u8>, byte: u8) -> Result<GuestPtr<u8>> { |
| 1177 | memory.write(ptr, byte)?; |