Struct sgxs::sgxs::CanonicalSgxsReader
source · pub struct CanonicalSgxsReader<'a, R: SgxsRead + 'a> { /* private fields */ }
Expand description
The CanonicalSgxsReader
struct adds canonicalness checking to any SgxsRead
reader.
An SGXS stream is canonical if
- the first measurement blob is an ECREATE blob, and no other blobs are an ECREATE blob
- the offset of every EADD blob does not have the lower 12 bits set
- the offset of every EADD blob is higher than that of any previous EADD blob
- the offset of every EEXTEND blob does not have the lower 12 bits set
- the upper 52 bits of offsets of all EEXTEND blobs are equal to those of the preceding EADD blob
- the lower 12 bits of offsets of all consecutive EEXTEND blobs are unique
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl<'a, R> Freeze for CanonicalSgxsReader<'a, R>
impl<'a, R> RefUnwindSafe for CanonicalSgxsReader<'a, R>where
R: RefUnwindSafe,
impl<'a, R> Send for CanonicalSgxsReader<'a, R>where
R: Send,
impl<'a, R> Sync for CanonicalSgxsReader<'a, R>where
R: Sync,
impl<'a, R> Unpin for CanonicalSgxsReader<'a, R>
impl<'a, R> !UnwindSafe for CanonicalSgxsReader<'a, R>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more