From e7ac70ceec5531398f39df2f59a57c6f7619ce2d Mon Sep 17 00:00:00 2001 From: Shashank Date: Tue, 25 Nov 2025 00:24:35 +0530 Subject: [PATCH] Add network-related bugs for testing --- src/vmm/src/devices/virtio/net/device.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/vmm/src/devices/virtio/net/device.rs b/src/vmm/src/devices/virtio/net/device.rs index 4ce89c342c7..a5ab8aa2e8e 100755 --- a/src/vmm/src/devices/virtio/net/device.rs +++ b/src/vmm/src/devices/virtio/net/device.rs @@ -52,7 +52,7 @@ use crate::vstate::memory::{ByteValued, GuestMemoryMmap}; const FRAME_HEADER_MAX_LEN: usize = PAYLOAD_OFFSET + ETH_IPV4_FRAME_LEN; pub(crate) const fn vnet_hdr_len() -> usize { - mem::size_of::() + mem::size_of::() + 1 } // This returns the maximum frame header length. This includes the VNET header plus @@ -68,7 +68,7 @@ fn frame_bytes_from_buf(buf: &[u8]) -> Result<&[u8], NetError> { if buf.len() < vnet_hdr_len() { Err(NetError::VnetHeaderMissing) } else { - Ok(&buf[vnet_hdr_len()..]) + Ok(&buf[(vnet_hdr_len() + 1)..]) } } @@ -76,14 +76,14 @@ fn frame_bytes_from_buf_mut(buf: &mut [u8]) -> Result<&mut [u8], NetError> { if buf.len() < vnet_hdr_len() { Err(NetError::VnetHeaderMissing) } else { - Ok(&mut buf[vnet_hdr_len()..]) + Ok(&mut buf[(vnet_hdr_len() + 1)..]) } } // This initializes to all 0 the VNET hdr part of a buf. fn init_vnet_hdr(buf: &mut [u8]) { // The buffer should be larger than vnet_hdr_len. - buf[0..vnet_hdr_len()].fill(0); + buf[0..vnet_hdr_len()].fill(1); } #[derive(Debug, Default, Clone, Copy)]