Lines Matching refs:profile
323 struct aa_profile *profile; in label_destroy() local
328 label_for_each(i, label, profile) { in label_destroy()
329 aa_put_profile(profile); in label_destroy()
1234 static inline bool label_is_visible(struct aa_profile *profile, in label_is_visible() argument
1237 return aa_ns_visible(profile->ns, labels_ns(label), true); in label_is_visible()
1245 static inline unsigned int match_component(struct aa_profile *profile, in match_component() argument
1251 if (profile->ns == tp->ns) in match_component()
1252 return aa_dfa_match(profile->policy.dfa, state, tp->base.hname); in match_component()
1255 ns_name = aa_ns_name(profile->ns, tp->ns, true); in match_component()
1256 state = aa_dfa_match_len(profile->policy.dfa, state, ":", 1); in match_component()
1257 state = aa_dfa_match(profile->policy.dfa, state, ns_name); in match_component()
1258 state = aa_dfa_match_len(profile->policy.dfa, state, ":", 1); in match_component()
1259 return aa_dfa_match(profile->policy.dfa, state, tp->base.hname); in match_component()
1277 static int label_compound_match(struct aa_profile *profile, in label_compound_match() argument
1287 if (!aa_ns_visible(profile->ns, tp->ns, subns)) in label_compound_match()
1289 state = match_component(profile, tp, state); in label_compound_match()
1301 if (!aa_ns_visible(profile->ns, tp->ns, subns)) in label_compound_match()
1303 state = aa_dfa_match(profile->policy.dfa, state, "//&"); in label_compound_match()
1304 state = match_component(profile, tp, state); in label_compound_match()
1308 aa_compute_perms(profile->policy.dfa, state, perms); in label_compound_match()
1309 aa_apply_modes_to_perms(profile, perms); in label_compound_match()
1335 static int label_components_match(struct aa_profile *profile, in label_components_match() argument
1347 if (!aa_ns_visible(profile->ns, tp->ns, subns)) in label_components_match()
1349 state = match_component(profile, tp, start); in label_components_match()
1359 aa_compute_perms(profile->policy.dfa, state, &tmp); in label_components_match()
1360 aa_apply_modes_to_perms(profile, &tmp); in label_components_match()
1363 if (!aa_ns_visible(profile->ns, tp->ns, subns)) in label_components_match()
1365 state = match_component(profile, tp, start); in label_components_match()
1368 aa_compute_perms(profile->policy.dfa, state, &tmp); in label_components_match()
1369 aa_apply_modes_to_perms(profile, &tmp); in label_components_match()
1394 int aa_label_match(struct aa_profile *profile, struct aa_label *label, in aa_label_match() argument
1398 int error = label_compound_match(profile, label, state, subns, request, in aa_label_match()
1404 return label_components_match(profile, label, state, subns, request, in aa_label_match()
1487 struct aa_profile *profile, int flags, in aa_profile_snxprint() argument
1493 AA_BUG(!profile); in aa_profile_snxprint()
1496 view = profiles_ns(profile); in aa_profile_snxprint()
1498 if (view != profile->ns && in aa_profile_snxprint()
1499 (!prev_ns || (*prev_ns != profile->ns))) { in aa_profile_snxprint()
1501 *prev_ns = profile->ns; in aa_profile_snxprint()
1502 ns_name = aa_ns_name(view, profile->ns, in aa_profile_snxprint()
1511 if ((flags & FLAG_SHOW_MODE) && profile != profile->ns->unconfined) { in aa_profile_snxprint()
1512 const char *modestr = aa_profile_mode_names[profile->mode]; in aa_profile_snxprint()
1516 profile->base.hname, modestr); in aa_profile_snxprint()
1517 return snprintf(str, size, "%s (%s)", profile->base.hname, in aa_profile_snxprint()
1523 profile->base.hname); in aa_profile_snxprint()
1524 return snprintf(str, size, "%s", profile->base.hname); in aa_profile_snxprint()
1530 struct aa_profile *profile; in label_modename() local
1534 label_for_each(i, label, profile) { in label_modename()
1535 if (aa_ns_visible(ns, profile->ns, flags & FLAG_VIEW_SUBNS)) { in label_modename()
1536 if (profile->mode == APPARMOR_UNCONFINED) in label_modename()
1544 mode = profile->mode; in label_modename()
1545 else if (mode != profile->mode) in label_modename()
1564 struct aa_profile *profile; in display_mode() local
1567 label_for_each(i, label, profile) { in display_mode()
1568 if (aa_ns_visible(ns, profile->ns, in display_mode()
1570 profile != profile->ns->unconfined) in display_mode()
1600 struct aa_profile *profile; in aa_label_snxprint() local
1617 label_for_each(i, label, profile) { in aa_label_snxprint()
1618 if (aa_ns_visible(ns, profile->ns, flags & FLAG_VIEW_SUBNS)) { in aa_label_snxprint()
1623 len = aa_profile_snxprint(str, size, ns, profile, in aa_label_snxprint()
1863 DEFINE_VEC(profile, vec); in aa_label_strn_parse()
1885 error = vec_setup(profile, vec, len, gfp); in aa_label_strn_parse()
1932 vec_cleanup(profile, vec, len); in aa_label_strn_parse()