mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 18:50:05 +01:00
ACM: Test sharing as part of the authorization check.
Protected the policy from being changed while the hooks are being called. Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
This commit is contained in:
1 parent
9c17aa96e6
commit
8f52dbd472
2 files changed
+6
-1
No files matched your search
@@ -325,7 +325,7 @@ static inline int acm_authorization(ssidref_t ssidref1, ssidref_t ssidref2)
|
||||
acm_secondary_ops->authorization(ssidref1, ssidref2)) {
|
||||
return ACM_ACCESS_DENIED;
|
||||
} else
|
||||
return ACM_ACCESS_PERMITTED;
|
||||
return acm_sharing(ssidref1, ssidref2);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -430,6 +430,9 @@ int
|
||||
acm_get_decision(ssidref_t ssidref1, ssidref_t ssidref2, u32 hook)
|
||||
{
|
||||
int ret = ACM_ACCESS_DENIED;
|
||||
|
||||
read_lock(&acm_bin_pol_rwlock);
|
||||
|
||||
switch ( hook )
|
||||
{
|
||||
|
||||
@@ -447,6 +450,8 @@ acm_get_decision(ssidref_t ssidref1, ssidref_t ssidref2, u32 hook)
|
||||
break;
|
||||
}
|
||||
|
||||
read_unlock(&acm_bin_pol_rwlock);
|
||||
|
||||
printkd("%s: ssid1=%x, ssid2=%x, decision=%s.\n",
|
||||
__func__, ssidref1, ssidref2,
|
||||
(ret == ACM_ACCESS_PERMITTED) ? "GRANTED" : "DENIED");
|
||||
|
||||