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.
|
||||
|
||||
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.
|
||||
pub fn new_root(pptr: u64) -> CapNodeCapability {
|
||||
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
|
||||
#[derive(Clone, Debug)]
|
||||
pub struct DerivationTreeNode(LocalRegisterCopy<u128, CapDerivationNode::Register>);
|
||||
|
|
Loading…
Reference in New Issue