diff --git a/crates/wasi-c2/cap-std-sync/src/lib.rs b/crates/wasi-c2/cap-std-sync/src/lib.rs index 495d9ed35e..33642fcae0 100644 --- a/crates/wasi-c2/cap-std-sync/src/lib.rs +++ b/crates/wasi-c2/cap-std-sync/src/lib.rs @@ -21,6 +21,10 @@ impl WasiCtxBuilder { Rc::new(RefCell::new(Table::new())), )) } + pub fn env(self, var: &str, value: &str) -> Result { + let s = self.0.env(var, value)?; + Ok(WasiCtxBuilder(s)) + } pub fn arg(self, arg: &str) -> Result { let s = self.0.arg(arg)?; Ok(WasiCtxBuilder(s)) diff --git a/crates/wasi-c2/src/ctx.rs b/crates/wasi-c2/src/ctx.rs index d1ee783b1c..5f3c798fa1 100644 --- a/crates/wasi-c2/src/ctx.rs +++ b/crates/wasi-c2/src/ctx.rs @@ -72,6 +72,11 @@ impl WasiCtxBuilder { Ok(self) } + pub fn env(mut self, var: &str, value: &str) -> Result { + self.0.env.push(format!("{}={}", var, value))?; + Ok(self) + } + pub fn stdin(self, f: Box) -> Self { self.0.insert_file( 0,