PERFORCE change 20081 for review
Robert Watson
rwatson at freebsd.org
Thu Oct 24 20:56:46 GMT 2002
http://perforce.freebsd.org/chv.cgi?CH=20081
Change 20081 by rwatson at rwatson_tislabs on 2002/10/24 13:56:03
More consistently use mac_biba_privileged(subj) instead of
the old equal_ok notion.
Use the error response from mac_biba_privileged() for the
sysctl check, rather than treating it as a boolean
incorrectly.
Affected files ...
.. //depot/projects/trustedbsd/mac/sys/security/mac_biba/mac_biba.c#157 edit
Differences ...
==== //depot/projects/trustedbsd/mac/sys/security/mac_biba/mac_biba.c#157 (text+ko) ====
@@ -299,7 +299,7 @@
}
static int
-mac_biba_subject_equal_ok(struct mac_biba *mac_biba)
+mac_biba_privileged(struct mac_biba *mac_biba)
{
KASSERT((mac_biba->mb_flags & MAC_BIBA_FLAGS_BOTH) ==
@@ -325,14 +325,6 @@
}
static int
-mac_biba_privileged(struct mac_biba *mac_biba)
-{
-
- /* Equate the notion of "equal" with privilege. */
- return (mac_biba_subject_equal_ok(mac_biba));
-}
-
-static int
mac_biba_high_single(struct mac_biba *mac_biba)
{
@@ -1475,7 +1467,7 @@
* their label.
*/
if (mac_biba_contains_equal(new)) {
- error = mac_biba_subject_equal_ok(subj);
+ error = mac_biba_privileged(subj);
if (error)
return (error);
}
@@ -1672,7 +1664,7 @@
* subject must have appropriate privilege.
*/
if (mac_biba_contains_equal(new)) {
- error = mac_biba_subject_equal_ok(subj);
+ error = mac_biba_privileged(subj);
if (error)
return (error);
}
@@ -1834,7 +1826,7 @@
* the subject must have appropriate privilege.
*/
if (mac_biba_contains_equal(new)) {
- error = mac_biba_subject_equal_ok(subj);
+ error = mac_biba_privileged(subj);
if (error)
return (error);
}
@@ -1866,6 +1858,7 @@
void *old, size_t *oldlenp, int inkernel, void *new, size_t newlen)
{
struct mac_biba *subj;
+ int error;
if (!mac_biba_enabled)
return (0);
@@ -1881,8 +1874,9 @@
if (new != NULL) {
if (namelen > 0 && name[0] == 0)
return (0);
- if (!mac_biba_privileged(subj))
- return (EPERM);
+ error = mac_biba_privileged(subj);
+ if (error)
+ return (error);
}
return (0);
@@ -2247,7 +2241,7 @@
* the subject must have appropriate privilege.
*/
if (mac_biba_contains_equal(new)) {
- error = mac_biba_subject_equal_ok(subj);
+ error = mac_biba_privileged(subj);
if (error)
return (error);
}
To Unsubscribe: send mail to majordomo at trustedbsd.org
with "unsubscribe trustedbsd-cvs" in the body of the message
More information about the trustedbsd-cvs
mailing list