wip move capnode cap impl
This commit is contained in:
parent
5b59eff974
commit
b6852b46a5
|
@ -470,6 +470,19 @@ impl EndpointCapability {}
|
||||||
// by having a root capnode cap we can traverse the whole tree.
|
// by having a root capnode cap we can traverse the whole tree.
|
||||||
|
|
||||||
impl CapNodeCapability {
|
impl CapNodeCapability {
|
||||||
|
/// Create a capability to CapNode.
|
||||||
|
///
|
||||||
|
/// CapNode capabilities allow to address a capability node tree entry.
|
||||||
|
pub fn new(pptr: u64, radix: u32, guard_size: u32, guard: u64) -> CapNodeCapability {
|
||||||
|
CapNodeCapability(LocalRegisterCopy::new(u128::from(
|
||||||
|
CapNodeCap::Type::value
|
||||||
|
+ CapNodeCap::Radix.val(radix.into())
|
||||||
|
+ CapNodeCap::GuardSize.val(guard_size.into())
|
||||||
|
+ CapNodeCap::Guard.val(guard.into())
|
||||||
|
+ CapNodeCap::Ptr.val(pptr.into()),
|
||||||
|
)))
|
||||||
|
}
|
||||||
|
|
||||||
/// Create new root node.
|
/// Create new root node.
|
||||||
pub fn new_root(pptr: u64) -> CapNodeCapability {
|
pub fn new_root(pptr: u64) -> CapNodeCapability {
|
||||||
const CONFIG_ROOT_CAPNODE_SIZE_BITS: u32 = 12;
|
const CONFIG_ROOT_CAPNODE_SIZE_BITS: u32 = 12;
|
||||||
|
@ -505,21 +518,6 @@ impl CapNodeCapability {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl CapNodeCapability {
|
|
||||||
/// Create a capability to CapNode.
|
|
||||||
///
|
|
||||||
/// CapNode capabilities allow to address a capability node tree entry.
|
|
||||||
pub fn new(pptr: u64, radix: u32, guard_size: u32, guard: u64) -> CapNodeCapability {
|
|
||||||
CapNodeCapability(LocalRegisterCopy::new(u128::from(
|
|
||||||
CapNodeCap::Type::value
|
|
||||||
+ CapNodeCap::Radix.val(radix.into())
|
|
||||||
+ CapNodeCap::GuardSize.val(guard_size.into())
|
|
||||||
+ CapNodeCap::Guard.val(guard.into())
|
|
||||||
+ CapNodeCap::Ptr.val(pptr.into()),
|
|
||||||
)))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Wrapper for CapDerivationNode
|
/// Wrapper for CapDerivationNode
|
||||||
#[derive(Clone, Debug)]
|
#[derive(Clone, Debug)]
|
||||||
pub struct DerivationTreeNode(LocalRegisterCopy<u128, CapDerivationNode::Register>);
|
pub struct DerivationTreeNode(LocalRegisterCopy<u128, CapDerivationNode::Register>);
|
||||||
|
|
Loading…
Reference in New Issue