summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 3afdaeb)
raw | patch | inline | side by side (parent: 3afdaeb)
author | Justin Sobota <jsobota@ti.com> | |
Thu, 2 Jul 2015 15:54:23 +0000 (11:54 -0400) | ||
committer | Justin Sobota <jsobota@ti.com> | |
Thu, 2 Jul 2015 15:54:23 +0000 (11:54 -0400) |
include/rm_policyloc.h | patch | blob | history | |
src/rm.c | patch | blob | history | |
src/rm_allocator.c | patch | blob | history | |
src/rm_policy.c | patch | blob | history |
diff --git a/include/rm_policyloc.h b/include/rm_policyloc.h
index e1c209b09896b4cdc6bad3829e3de283ee062411..2482b7d131d32ead6e953209f2db55d681b8f581 100644 (file)
--- a/include/rm_policyloc.h
+++ b/include/rm_policyloc.h
/* Negative check:
* RM_FALSE (0) - Check if passes policy
* RM_TRUE (1) - Check if fails policy */
- uint32_t neg;
+ uint32_t negCheck;
/* Resource's policy tree used to validate permissions */
Rm_PolicyTree *polTree;
/* Valid instance node having its permissions checked for the resource */
diff --git a/src/rm.c b/src/rm.c
index b6ba7aaf5eb4134942c384d677ef825ea63b030d..6caf08b85a7abbfffbf3dad0d7b9e353aa468853 100644 (file)
--- a/src/rm.c
+++ b/src/rm.c
} else {
privCheckCfg.type = Rm_policyCheck_USE;
}
- privCheckCfg.neg = RM_FALSE;
+ privCheckCfg.negCheck = RM_FALSE;
privCheckCfg.validInstNode = rmPolicyGetValidInstNode(rmHandle,
rmInst->instName);
privCheckCfg.polTree = allocNode->policyRoot;
diff --git a/src/rm_allocator.c b/src/rm_allocator.c
index 83ffa3dda2238c1c22bfbba5891de2900a52b969..e803b65c4eb0a1113882ade56aa0cd7455d031fd 100644 (file)
--- a/src/rm_allocator.c
+++ b/src/rm_allocator.c
/* Attempt to preallocate from node only if not owned by anyone
* and sits within a matching node. */
policyCheckCfg.type = policyCheckType;
- policyCheckCfg.neg = RM_FALSE;
+ policyCheckCfg.negCheck = RM_FALSE;
policyCheckCfg.validInstNode = opInfo->serviceInstNode;
policyCheckCfg.resourceBase = findNode.base;
policyCheckCfg.resourceLength = findNode.length;
if (nodePassesPolicy) {
/* Is range excluded from UNSPECIFIED allocations? */
- policyCheckCfg.type = Rm_policyCheck_UNSPEC_EXCLUSION;
- policyCheckCfg.neg = RM_TRUE;
+ policyCheckCfg.type = Rm_policyCheck_UNSPEC_EXCLUSION;
+ policyCheckCfg.negCheck = RM_TRUE;
nodePassesPolicy = rmPolicyCheckPrivilege(&policyCheckCfg);
}
allocPassesPolicy = RM_TRUE;
} else {
checkCfg.type = policyCheckType;
- checkCfg.neg = RM_FALSE;
+ checkCfg.negCheck = RM_FALSE;
checkCfg.polTree = allocator->policyRoot;
checkCfg.validInstNode = opInfo->serviceInstNode;
checkCfg.resourceBase = findNode.base;
/* Check if instance requesting resource has
* privileges to share a resource already reserved
* by Linux */
- checkCfg.type = Rm_policyCheck_SHARED_LINUX;
- checkCfg.neg = RM_FALSE;
+ checkCfg.type = Rm_policyCheck_SHARED_LINUX;
+ checkCfg.negCheck = RM_FALSE;
checkCfg.validInstNode = opInfo->serviceInstNode;
allocPassesPolicy = rmPolicyCheckPrivilege(&checkCfg);
if (!allocPassesPolicy) {
* requesting resource. Requesting instance with
* exclusive privileges can't reserve resource if
* already owned*/
- checkCfg.type = Rm_policyCheck_EXCLUSIVE;
- checkCfg.neg = RM_TRUE;
+ checkCfg.type = Rm_policyCheck_EXCLUSIVE;
+ checkCfg.negCheck = RM_TRUE;
checkCfg.validInstNode = opInfo->serviceInstNode;
allocPassesPolicy = rmPolicyCheckPrivilege(&checkCfg);
if (!allocPassesPolicy) {
(matchingNode->allocationCount == 1)) {
/* Check exclusive privileges of instance that
* currently owns resource */
- checkCfg.type = Rm_policyCheck_EXCLUSIVE;
- checkCfg.neg = RM_TRUE;
+ checkCfg.type = Rm_policyCheck_EXCLUSIVE;
+ checkCfg.negCheck = RM_TRUE;
checkCfg.validInstNode = matchingNode->ownerList->instNameNode;
allocPassesPolicy = rmPolicyCheckPrivilege(&checkCfg);
if (!allocPassesPolicy) {
diff --git a/src/rm_policy.c b/src/rm_policy.c
index 2f0700581ab101c38addf3da4c6c3c31fc063e62..92d55d08f026c80da75b94a982319d4584d3e890 100644 (file)
--- a/src/rm_policy.c
+++ b/src/rm_policy.c
* spans. Assume approved until denial found */
isApproved = RM_TRUE;
while (matchNode) {
- if (privilegeCfg->neg) {
+ if (privilegeCfg->negCheck) {
/* Not approved if any matching node is assigned an exclusion
* permission */
if ((RM_policy_PERM_GET(matchNode->perms, globPermIdx,