Skip to content

Commit debaba4

Browse files
committed
init/nitro: Initialize project
1 parent 246b3f7 commit debaba4

5 files changed

Lines changed: 363 additions & 1 deletion

File tree

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[workspace]
22
members = ["src/libkrun"]
3-
exclude = ["examples/gtk_display"]
3+
exclude = ["examples/gtk_display", "init/nitro"]
44
resolver = "2"
55

66
[profile.dev]

init/nitro/Cargo.lock

Lines changed: 314 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

init/nitro/Cargo.toml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
[package]
2+
name = "krun-nitro-init"
3+
version = "0.1.0"
4+
edition = "2024"
5+
authors = ["The libkrun Authors"]
6+
license = "Apache-2.0"
7+
8+
[dependencies]
9+
clap = { version = "4.5.48", features = ["derive"] }
10+
vsock = "0.5.1"

init/nitro/src/init.rs

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
// SPDX-License-Identifier: Apache-2.0
2+
3+
use vsock::{VMADDR_CID_HYPERVISOR, VsockAddr, VsockStream};
4+
5+
#[derive(Debug)]
6+
pub struct GuestInitComm {
7+
sockaddr: VsockAddr,
8+
}
9+
10+
impl From<super::Args> for GuestInitComm {
11+
fn from(args: super::Args) -> Self {
12+
let sockaddr = VsockAddr::new(VMADDR_CID_HYPERVISOR, args.vsock_port);
13+
14+
Self { sockaddr }
15+
}
16+
}

init/nitro/src/main.rs

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
// SPDX-License-Identifier: Apache-2.0
2+
3+
mod init;
4+
5+
use clap::Parser;
6+
use init::GuestInitComm;
7+
8+
#[derive(Parser)]
9+
struct Args {
10+
#[clap(default_value = "9000")]
11+
pub vsock_port: u32,
12+
}
13+
14+
fn main() {
15+
let _stream = {
16+
let args = Args::parse();
17+
18+
let init = GuestInitComm::from(args);
19+
};
20+
21+
println!("Hello, world!");
22+
}

0 commit comments

Comments
 (0)