Skip to content

Commit 6698c2e

Browse files
committed
Make UninitializedSandbox::new take guest binary by references instead of value
Signed-off-by: Ludvig Liljenberg <[email protected]>
1 parent 02fd693 commit 6698c2e

File tree

25 files changed

+71
-61
lines changed

25 files changed

+71
-61
lines changed

fuzz/fuzz_targets/guest_call.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ fuzz_target!(
3333
init: {
3434

3535
let u_sbox = UninitializedSandbox::new(
36-
GuestBinary::FilePath(simple_guest_for_fuzzing_as_string().expect("Guest Binary Missing")),
36+
&GuestBinary::FilePath(simple_guest_for_fuzzing_as_string().expect("Guest Binary Missing")),
3737
None,
3838
)
3939
.unwrap();

fuzz/fuzz_targets/host_call.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ static SANDBOX: OnceLock<Mutex<MultiUseSandbox>> = OnceLock::new();
3232
fuzz_target!(
3333
init: {
3434
let u_sbox = UninitializedSandbox::new(
35-
GuestBinary::FilePath(simple_guest_for_fuzzing_as_string().expect("Guest Binary Missing")),
35+
&GuestBinary::FilePath(simple_guest_for_fuzzing_as_string().expect("Guest Binary Missing")),
3636
None
3737
)
3838
.unwrap();

fuzz/fuzz_targets/host_print.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ static SANDBOX: OnceLock<Mutex<MultiUseSandbox>> = OnceLock::new();
1818
fuzz_target!(
1919
init: {
2020
let u_sbox = UninitializedSandbox::new(
21-
GuestBinary::FilePath(simple_guest_for_fuzzing_as_string().expect("Guest Binary Missing")),
21+
&GuestBinary::FilePath(simple_guest_for_fuzzing_as_string().expect("Guest Binary Missing")),
2222
None,
2323
)
2424
.unwrap();

src/hyperlight_guest/src/guest_handle/handle.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,12 @@ pub struct GuestHandle {
3030
peb: Option<*mut HyperlightPEB>,
3131
}
3232

33+
impl Default for GuestHandle {
34+
fn default() -> Self {
35+
Self::new()
36+
}
37+
}
38+
3339
impl GuestHandle {
3440
/// Creates a new uninitialized guest state.
3541
pub const fn new() -> Self {

src/hyperlight_guest/src/guest_handle/host_comm.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ impl GuestHandle {
102102
/// Write an error to the shared output data buffer.
103103
pub fn write_error(&self, error_code: ErrorCode, message: Option<&str>) {
104104
let guest_error: GuestError = GuestError::new(
105-
error_code.clone(),
105+
error_code,
106106
message.map_or("".to_string(), |m| m.to_string()),
107107
);
108108
let guest_error_buffer: Vec<u8> = (&guest_error)

src/hyperlight_host/benches/benchmarks.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,8 @@ use hyperlight_testing::simple_guest_as_string;
2323

2424
fn create_uninit_sandbox() -> UninitializedSandbox {
2525
let path = simple_guest_as_string().unwrap();
26-
UninitializedSandbox::new(GuestBinary::FilePath(path), None).unwrap()
26+
let binary = GuestBinary::FilePath(path);
27+
UninitializedSandbox::new(&binary, None).unwrap()
2728
}
2829

2930
fn create_multiuse_sandbox() -> MultiUseSandbox {
@@ -68,7 +69,7 @@ fn guest_call_benchmark(c: &mut Criterion) {
6869
config.set_heap_size(SIZE as u64 * 15);
6970

7071
let sandbox = UninitializedSandbox::new(
71-
GuestBinary::FilePath(simple_guest_as_string().unwrap()),
72+
&GuestBinary::FilePath(simple_guest_as_string().unwrap()),
7273
Some(config),
7374
)
7475
.unwrap();

src/hyperlight_host/examples/func_ctx/main.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ fn main() {
2626
// test guest binary
2727
let sbox1: MultiUseSandbox = {
2828
let path = simple_guest_as_string().unwrap();
29-
let u_sbox = UninitializedSandbox::new(GuestBinary::FilePath(path), None).unwrap();
29+
let u_sbox = UninitializedSandbox::new(&GuestBinary::FilePath(path), None).unwrap();
3030
u_sbox.evolve(Noop::default())
3131
}
3232
.unwrap();

src/hyperlight_host/examples/guest-debugging/main.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ fn main() -> hyperlight_host::Result<()> {
4343

4444
// Create an uninitialized sandbox with a guest binary
4545
let mut uninitialized_sandbox = UninitializedSandbox::new(
46-
hyperlight_host::GuestBinary::FilePath(
46+
&hyperlight_host::GuestBinary::FilePath(
4747
hyperlight_testing::simple_guest_as_string().unwrap(),
4848
),
4949
cfg, // sandbox configuration

src/hyperlight_host/examples/hello-world/main.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ use hyperlight_host::{MultiUseSandbox, UninitializedSandbox};
2323
fn main() -> hyperlight_host::Result<()> {
2424
// Create an uninitialized sandbox with a guest binary
2525
let mut uninitialized_sandbox = UninitializedSandbox::new(
26-
hyperlight_host::GuestBinary::FilePath(
26+
&hyperlight_host::GuestBinary::FilePath(
2727
hyperlight_testing::simple_guest_as_string().unwrap(),
2828
),
2929
None, // default configuration

src/hyperlight_host/examples/logging/main.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ fn main() -> Result<()> {
4343
let path = hyperlight_guest_path.clone();
4444
let res: Result<()> = {
4545
// Create a new sandbox.
46-
let mut usandbox = UninitializedSandbox::new(GuestBinary::FilePath(path), None)?;
46+
let mut usandbox = UninitializedSandbox::new(&GuestBinary::FilePath(path), None)?;
4747
usandbox.register_print(fn_writer)?;
4848

4949
// Initialize the sandbox.
@@ -77,7 +77,7 @@ fn main() -> Result<()> {
7777

7878
// Create a new sandbox.
7979
let usandbox =
80-
UninitializedSandbox::new(GuestBinary::FilePath(hyperlight_guest_path.clone()), None)?;
80+
UninitializedSandbox::new(&GuestBinary::FilePath(hyperlight_guest_path.clone()), None)?;
8181

8282
// Initialize the sandbox.
8383

0 commit comments

Comments
 (0)