Pārlūkot izejas kodu

Add VMADDR_CID_HOST const to socket module

Alice Wang 1 gadu atpakaļ
vecāks
revīzija
b2f93b3ef8

+ 4 - 3
examples/aarch64/src/main.rs

@@ -30,7 +30,9 @@ use virtio_drivers::{
         blk::VirtIOBlk,
         console::VirtIOConsole,
         gpu::VirtIOGpu,
-        socket::{VirtIOSocket, VsockAddr, VsockConnectionManager, VsockEventType},
+        socket::{
+            VirtIOSocket, VsockAddr, VsockConnectionManager, VsockEventType, VMADDR_CID_HOST,
+        },
     },
     transport::{
         mmio::{MmioTransport, VirtIOHeader},
@@ -207,10 +209,9 @@ fn virtio_socket<T: Transport>(transport: T) -> virtio_drivers::Result<()> {
     let mut socket = VsockConnectionManager::new(
         VirtIOSocket::<HalImpl, T>::new(transport).expect("Failed to create socket driver"),
     );
-    let host_cid = 2;
     let port = 1221;
     let host_address = VsockAddr {
-        cid: host_cid,
+        cid: VMADDR_CID_HOST,
         port,
     };
     info!("Connecting to host on port {port}...");

+ 1 - 1
src/device/socket/mod.rs

@@ -19,7 +19,7 @@ mod vsock;
 pub use error::SocketError;
 #[cfg(feature = "alloc")]
 pub use multiconnectionmanager::VsockConnectionManager;
-pub use protocol::VsockAddr;
+pub use protocol::{VsockAddr, VMADDR_CID_HOST};
 #[cfg(feature = "alloc")]
 pub use singleconnectionmanager::SingleConnectionManager;
 #[cfg(feature = "alloc")]

+ 3 - 0
src/device/socket/protocol.rs

@@ -12,6 +12,9 @@ use zerocopy::{
     AsBytes, FromBytes,
 };
 
+/// Well-known CID for the host.
+pub const VMADDR_CID_HOST: u64 = 2;
+
 /// Currently only stream sockets are supported. type is 1 for stream socket types.
 #[derive(Copy, Clone, Debug)]
 #[repr(u16)]