use log for sefs-fuse

master
WangRunji 7 years ago
parent 5265b8e36f
commit 9b8f730e8e

@ -2,6 +2,7 @@
name = "Helloworldsampleenclave" name = "Helloworldsampleenclave"
version = "1.0.0" version = "1.0.0"
authors = ["Baidu"] authors = ["Baidu"]
edition = "2018"
[lib] [lib]
name = "helloworldsampleenclave" name = "helloworldsampleenclave"
@ -11,6 +12,7 @@ crate-type = ["staticlib"]
default = [] default = []
[dependencies] [dependencies]
log = "0.4"
lazy_static = { version = "1.1.0", features = ["spin_no_std"] } # Implies nightly lazy_static = { version = "1.1.0", features = ["spin_no_std"] } # Implies nightly
[target.'cfg(not(target_env = "sgx"))'.dependencies] [target.'cfg(not(target_env = "sgx"))'.dependencies]

@ -34,10 +34,11 @@
#[macro_use] #[macro_use]
extern crate lazy_static; extern crate lazy_static;
#[macro_use]
extern crate log;
#[cfg(not(target_env = "sgx"))] #[cfg(not(target_env = "sgx"))]
#[macro_use] #[macro_use]
extern crate sgx_tstd as std; extern crate sgx_tstd as std;
extern crate sgx_types;
use std::collections::BTreeMap; use std::collections::BTreeMap;
use std::io::{Read, Seek, SeekFrom, Write}; use std::io::{Read, Seek, SeekFrom, Write};
@ -76,7 +77,7 @@ pub extern "C" fn ecall_file_open(fd: usize, create: bool, key: &sgx_key_128bit_
false => oo.read(true).update(true).binary(true), false => oo.read(true).update(true).binary(true),
}; };
let file = try_io!(oo.open_ex(&path, key)); let file = try_io!(oo.open_ex(&path, key));
println!("{} fd = {} key = {:?}", if create {"create"} else {"open"}, fd, key); debug!("{} fd = {} key = {:?}", if create {"create"} else {"open"}, fd, key);
let file = LockedFile(Mutex::new(file)); let file = LockedFile(Mutex::new(file));
let mut files = FILES.write().unwrap(); let mut files = FILES.write().unwrap();
files.insert(fd, file); files.insert(fd, file);
@ -87,7 +88,7 @@ pub extern "C" fn ecall_file_open(fd: usize, create: bool, key: &sgx_key_128bit_
pub extern "C" fn ecall_file_close(fd: usize) -> i32 { pub extern "C" fn ecall_file_close(fd: usize) -> i32 {
let mut files = FILES.write().unwrap(); let mut files = FILES.write().unwrap();
files.remove(&fd); files.remove(&fd);
println!("close fd = {}", fd); debug!("close fd = {}", fd);
0 0
} }
@ -95,7 +96,7 @@ pub extern "C" fn ecall_file_close(fd: usize) -> i32 {
pub extern "C" fn ecall_file_flush(fd: usize) -> i32 { pub extern "C" fn ecall_file_flush(fd: usize) -> i32 {
let files = FILES.read().unwrap(); let files = FILES.read().unwrap();
let mut file = files[&fd].0.lock().unwrap(); let mut file = files[&fd].0.lock().unwrap();
println!("flush fd = {}", fd); debug!("flush fd = {}", fd);
try_io!(file.flush()); try_io!(file.flush());
0 0
} }
@ -106,12 +107,12 @@ pub extern "C" fn ecall_file_read_at(fd: usize, offset: usize, buf: *mut u8, len
let mut file = files[&fd].0.lock().unwrap(); let mut file = files[&fd].0.lock().unwrap();
let offset = offset as u64; let offset = offset as u64;
println!("read_at fd = {}, offset = {}, len = {}", fd, offset, len); debug!("read_at fd = {}, offset = {}, len = {}", fd, offset, len);
try_io!(file.seek(SeekFrom::Start(offset))); try_io!(file.seek(SeekFrom::Start(offset)));
let buf = unsafe { std::slice::from_raw_parts_mut(buf, len) }; let buf = unsafe { std::slice::from_raw_parts_mut(buf, len) };
let len = try_io!(file.read(buf)) as i32; let len = try_io!(file.read(buf)) as i32;
println!("{:?}", buf); trace!("{:?}", buf);
len len
} }
@ -122,11 +123,11 @@ pub extern "C" fn ecall_file_write_at(fd: usize, offset: usize, buf: *const u8,
let mut file = files[&fd].0.lock().unwrap(); let mut file = files[&fd].0.lock().unwrap();
let offset = offset as u64; let offset = offset as u64;
println!("write_at fd = {}, offset = {}, len = {}", fd, offset, len); debug!("write_at fd = {}, offset = {}, len = {}", fd, offset, len);
try_io!(file.seek(SeekFrom::Start(offset))); try_io!(file.seek(SeekFrom::Start(offset)));
let buf = unsafe { std::slice::from_raw_parts(buf, len) }; let buf = unsafe { std::slice::from_raw_parts(buf, len) };
let ret = try_io!(file.write(buf)) as i32; let ret = try_io!(file.write(buf)) as i32;
println!("{:?}", buf); trace!("{:?}", buf);
ret ret
} }
@ -136,7 +137,7 @@ pub extern "C" fn ecall_file_set_len(fd: usize, len: usize) -> i32 {
let files = FILES.read().unwrap(); let files = FILES.read().unwrap();
let mut file = files[&fd].0.lock().unwrap(); let mut file = files[&fd].0.lock().unwrap();
println!("set_len fd = {}, len = {}", fd, len); debug!("set_len fd = {}, len = {}", fd, len);
let current_len = try_io!(file.seek(SeekFrom::End(0))) as usize; let current_len = try_io!(file.seek(SeekFrom::End(0))) as usize;
if current_len < len { if current_len < len {
let mut zeros = Vec::<u8>::new(); let mut zeros = Vec::<u8>::new();

Loading…
Cancel
Save