1 use crate::error::Error; 2 use crate::module::DlModule; 3 use std::env; 4 use std::path::{Path, PathBuf}; 5 use std::sync::Arc; 6 guest_module_path<P: AsRef<Path>>(path: P) -> PathBuf7fn guest_module_path<P: AsRef<Path>>(path: P) -> PathBuf { 8 if let Some(prefix) = env::var_os("GUEST_MODULE_PREFIX") { 9 Path::new(&prefix).join(path) 10 } else { 11 // default to the `devenv` path convention 12 Path::new("/lucet").join(path) 13 } 14 } 15 16 impl DlModule { load_test<P: AsRef<Path>>(so_path: P) -> Result<Arc<Self>, Error>17 pub fn load_test<P: AsRef<Path>>(so_path: P) -> Result<Arc<Self>, Error> { 18 DlModule::load(guest_module_path(so_path)) 19 } 20 } 21