Lines Matching defs:perms
667 static ssize_t unpack_perms_table(struct aa_ext *e, struct aa_perms **perms)
672 AA_BUG(!perms);
674 * policy perms are optional, in which case perms are embedded
677 if (aa_unpack_nameX(e, AA_STRUCT, "perms")) {
685 *perms = kcalloc(size, sizeof(struct aa_perms), GFP_KERNEL);
686 if (!*perms)
689 if (!unpack_perm(e, version, &(*perms)[i]))
697 *perms = NULL;
702 kfree(*perms);
716 size = unpack_perms_table(e, &policy->perms);
719 policy->perms = NULL;
720 *info = "failed to unpack - perms";
725 if (policy->perms) {
726 /* perms table present accept is index */
729 /* packed perms in accept1 and accept2 */
870 if (!profile->attach.xmatch.perms) {
996 if (!rules->policy.perms) {
1006 rules->policy.perms = kcalloc(2, sizeof(struct aa_perms),
1008 if (!rules->policy.perms)
1017 if (!rules->file.perms) {
1028 rules->file.perms = kcalloc(rules->policy.size,
1031 if (!rules->file.perms)
1033 memcpy(rules->file.perms, rules->policy.perms,
1038 rules->file.perms = kcalloc(2, sizeof(struct aa_perms),
1040 if (!rules->file.perms)
1176 * verify_dfa_accept_index - verify accept indexes are in range of perms table
1192 /* TODO: allow option to just force the perms into a valid state */
1218 if (!verify_perm(&pdb->perms[i]))
1221 if ((pdb->perms[i].xindex & AA_X_TYPE_MASK) == AA_X_TABLE &&
1222 (pdb->perms[i].xindex & AA_X_INDEX_MASK) >= pdb->trans.size)
1224 if (pdb->perms[i].tag && pdb->perms[i].tag >= pdb->trans.size)
1226 if (pdb->perms[i].label &&
1227 pdb->perms[i].label >= pdb->trans.size)