Changeset View
Changeset View
Standalone View
Standalone View
head/sys/security/mac_bsdextended/mac_bsdextended.c
Show First 20 Lines • Show All 119 Lines • ▼ Show 20 Lines | ugidfw_rule_valid(struct mac_bsdextended_rule *rule) | ||||
if ((rule->mbr_subject.mbs_flags | MBS_ALL_FLAGS) != MBS_ALL_FLAGS) | if ((rule->mbr_subject.mbs_flags | MBS_ALL_FLAGS) != MBS_ALL_FLAGS) | ||||
return (EINVAL); | return (EINVAL); | ||||
if ((rule->mbr_subject.mbs_neg | MBS_ALL_FLAGS) != MBS_ALL_FLAGS) | if ((rule->mbr_subject.mbs_neg | MBS_ALL_FLAGS) != MBS_ALL_FLAGS) | ||||
return (EINVAL); | return (EINVAL); | ||||
if ((rule->mbr_object.mbo_flags | MBO_ALL_FLAGS) != MBO_ALL_FLAGS) | if ((rule->mbr_object.mbo_flags | MBO_ALL_FLAGS) != MBO_ALL_FLAGS) | ||||
return (EINVAL); | return (EINVAL); | ||||
if ((rule->mbr_object.mbo_neg | MBO_ALL_FLAGS) != MBO_ALL_FLAGS) | if ((rule->mbr_object.mbo_neg | MBO_ALL_FLAGS) != MBO_ALL_FLAGS) | ||||
return (EINVAL); | return (EINVAL); | ||||
if ((rule->mbr_object.mbo_neg | MBO_TYPE_DEFINED) && | if (((rule->mbr_object.mbo_flags & MBO_TYPE_DEFINED) != 0) && | ||||
(rule->mbr_object.mbo_type | MBO_ALL_TYPE) != MBO_ALL_TYPE) | (rule->mbr_object.mbo_type | MBO_ALL_TYPE) != MBO_ALL_TYPE) | ||||
return (EINVAL); | return (EINVAL); | ||||
if ((rule->mbr_mode | MBI_ALLPERM) != MBI_ALLPERM) | if ((rule->mbr_mode | MBI_ALLPERM) != MBI_ALLPERM) | ||||
return (EINVAL); | return (EINVAL); | ||||
return (0); | return (0); | ||||
} | } | ||||
static int | static int | ||||
▲ Show 20 Lines • Show All 390 Lines • Show Last 20 Lines |