aa_label_match(9)
π aa_label_match(9) π
okay bestie, so this is a page out of the Kernel API Manual (yes, the kernel kernel, we're being β¨seriousβ¨ today) and it's all about aa_label_match β literally the function that does a multi-component label match. AppArmor internals, we love to see it π
πΈ NAME πΈ
aa_label_match β do a multi-component label match π¦
β¨ SYNOPSIS β¨
int aa_label_match (const struct aa_profile *profile , struct aa_ruleset
*rules , struct aa_label *label , aa_state_t state , bool inview , u32
request , struct aa_perms *perms );
π ARGUMENTS π
okay so here's the whole cast, main-character energy only π
profileβ the profile you're matching against. NOT NULL, bestie, don't even try it πrulesβ the ruleset to search. that's the vibe check zone πlabelβ the label to match. also NOT NULL. we said what we said πstateβ the state to start in. where we begin the journey π§inviewβ whether to match labels in view or only in scope. it's giving "are we looking at the whole picture or just our lane" πrequestβ the permission request.u32, she's numeric, she's important π₯permsβ returns the computed perms. NOT NULL again β this one's an output, so pls actually give her somewhere to live π
β RETURN β
it returns the state the match finished in π«Ά and heads up β that may literally be the none matching state. so like, no match, no drama, that's still a valid answer, ngl π
π SEE ALSO π
okay this is the whole group chat of related symbols, all from the kernel file ./security/apparmor/label.c β and yes, we're listing every single one, no cap, nobody gets left on read π
ns_cmp(9)profile_cmp(9)vec_cmp(9)aa_vec_unique(9)aa_label_alloc(9)label_cmp(9)__aa_label_next_not_in_set(9)aa_label_is_subset(9)aa_label_is_unconfined_subset(9)__label_remove(9)__label_replace(9)__label_insert(9)__vec_find(9)__label_find(9)aa_label_remove(9)aa_label_replace(9)vec_find(9)aa_label_insert(9)aa_label_next_in_merge(9)label_merge_cmp(9)label_merge_insert(9)labelset_of_merge(9)__label_find_merge(9)aa_label_find_merge(9)aa_label_merge(9)label_compound_match(9)label_components_match(9)aa_update_label_name(9)aa_profile_snxprint(9)aa_label_snxprint(9)aa_label_asxprint(9)aa_label_acntsxprint(9)aa_label_strn_parse(9)aa_labelset_destroy(9)__label_update(9)__labelset_update(9)__aa_labelset_update_subtree(9)
also like, the source lives at ./security/apparmor β that's the whole directory, go explore, iykyk π§ββοΈ
aaaand that's the page, bestie!! π sign-off time: this iconic little doc came out of ./security/apparmor and it's dated October 2026 β so like, she's fresh, she's future, she's that girl π
β¨ bye ily π«Άπ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms