aa_label_find_merge(9)
β¨ aa_label_find_merge(9) β¨
okay so this is a page from the Kernel API Manual, section 9, and bestie it is literally about finding a label that's equivalent to the merge of @a and @b. let's get into it π
πΈ NAME πΈ
aa_label_find_merge β find label that is equiv to merge of @a and @b
like... that's the whole vibe. you give it two labels, it finds you the label that's equivalent to their merge. iconic behavior honestly π«Ά
π¦ SYNOPSIS π¦
struct aa_label * aa_label_find_merge (struct aa_label *a , struct
aa_label *b );
note the spacing, bestie β that's exactly how it's written, don't come for me π
π ARGUMENTS π
aβ label to merge withb(NOT NULL)bβ label to merge witha(NOT NULL)
both of these are NOT NULL, okay? like, they're required, no cap. neither one gets to be the flaky friend who doesn't show up π
π DESCRIPTION π
Requires: labels be fully constructed with a valid ns
that's the whole requirement. fully constructed labels, valid ns, or it's not gonna slay. periodt.
π RETURN π
a ref counted label that is equiv to merge of a and b β else NULL if merge of a and b is not in set
so: ref counted label = you got your answer, go be great β¨. NULL = the merge isn't in the set, no hard feelings, it's giving "not in this timeline" π
π§ SEE ALSO π§
Kernel file ./security/apparmor/label.c and honestly a whole friend group of functions:
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_merge(9), label_compound_match(9), label_components_match(9), aa_label_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)
that's the whole squad, every single one of them, i did not skip a single name π (the double underscore ones are the mysterious ones and honestly? main character energy.)
lowkey a reminder: those two arguments are NOT NULL β don't be sending in nothing and then acting surprised, bestie π
and that's the page!! π this one lives in ./security/apparmor, dated October 2026, and it's filed under aa_label_find_merge(9). mwah, go forth and merge responsibly ππ
π¦ 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