Rust nightly update - covert_channel_evaluation
This commit is contained in:
parent
7ecb6f5244
commit
f9fd75e3e9
@ -7,9 +7,9 @@ edition = "2018"
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
rand = "0.7.3"
|
||||
rand = "0.8.3"
|
||||
bit_field = "0.10.1"
|
||||
turn_lock = { path = "../turn_lock" }
|
||||
cache_utils = { path = "../cache_utils" }
|
||||
nix = "0.18.0"
|
||||
nix = "0.20.0"
|
||||
cache_side_channel = { path = "../cache_side_channel" }
|
||||
|
@ -35,11 +35,11 @@ use std::thread;
|
||||
* Safety considerations : Not ensure thread safety, need proper locking as needed.
|
||||
*/
|
||||
pub trait CovertChannel: Send + Sync + CoreSpec + Debug {
|
||||
type Handle;
|
||||
type CovertChannelHandle;
|
||||
const BIT_PER_PAGE: usize;
|
||||
unsafe fn transmit(&self, handle: &mut Self::Handle, bits: &mut BitIterator);
|
||||
unsafe fn receive(&self, handle: &mut Self::Handle) -> Vec<bool>;
|
||||
unsafe fn ready_page(&mut self, page: *const u8) -> Result<Self::Handle, ()>; // TODO Error Type
|
||||
unsafe fn transmit(&self, handle: &mut Self::CovertChannelHandle, bits: &mut BitIterator);
|
||||
unsafe fn receive(&self, handle: &mut Self::CovertChannelHandle) -> Vec<bool>;
|
||||
unsafe fn ready_page(&mut self, page: *const u8) -> Result<Self::CovertChannelHandle, ()>; // TODO Error Type
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
@ -118,7 +118,7 @@ impl Iterator for BitIterator<'_> {
|
||||
}
|
||||
|
||||
struct CovertChannelParams<T: CovertChannel + Send> {
|
||||
handles: Vec<TurnHandle<T::Handle>>,
|
||||
handles: Vec<TurnHandle<T::CovertChannelHandle>>,
|
||||
covert_channel: Arc<T>,
|
||||
}
|
||||
|
||||
@ -162,7 +162,7 @@ pub fn benchmark_channel<T: 'static + Send + CovertChannel>(
|
||||
) -> CovertChannelBenchmarkResult {
|
||||
// Allocate pages
|
||||
|
||||
let old_affinity = set_affinity(&channel.main_core());
|
||||
let old_affinity = set_affinity(&channel.main_core()).unwrap();
|
||||
|
||||
let size = num_pages * PAGE_SIZE;
|
||||
let mut m = MMappedMemory::new(size, false);
|
||||
|
Loading…
Reference in New Issue
Block a user