Fix incorrect check for permitStoreLocalCap in capChecksMem.
The check was missing a NOT and was actually checking for permitStoreGlobalCap.
This commit is contained in:
@@ -125,7 +125,7 @@ function Maybe#(CSR_XCapCause) capChecksMem(CapPipe auth, CapPipe data, CapCheck
|
||||
result = eAuth(cheriExcPermitWViolation);
|
||||
else if (storeValidCap && !getHardPerms(auth).permitStoreCap)
|
||||
result = eAuth(cheriExcPermitWCapViolation);
|
||||
else if (storeValidCap && !getHardPerms(auth).permitStoreLocalCap && getHardPerms(data).global)
|
||||
else if (storeValidCap && !getHardPerms(auth).permitStoreLocalCap && !getHardPerms(data).global)
|
||||
result = eAuth(cheriExcPermitWLocalCapViolation);
|
||||
return result;
|
||||
endfunction
|
||||
|
||||
Reference in New Issue
Block a user