aa_audit(9)
π aa_audit(9) β bestie's guide to the Kernel API Manual β¨
okay so picture this: you're deep in the kernel, AppArmor is doing its thing, and something audit-worthy just happened. This little function is the one that logs it π
πΈ NAME πΈ
aa_audit β literally logs a profile based audit event straight to the audit subsystem. no cap, that's the whole job π
β¨ SYNOPSIS β¨
int aa_audit (int type , struct aa_profile *profile , struct apparmor_audit_data *ad , void (*cb) (struct audit_buffer *, void *) );
π¦ ARGUMENTS π¦
typeβ the audit type for the message. it's giving "what kind of event is this" energy π·οΈprofileβ the profile you're checking against. this one is NOT NULL, so don't even try it πadβ the audit event itself. also NOT NULL, bestie, these two are non-negotiable βcbβ an optional callback fn for the type specific fields. MAYBE NULL β it's giving flexible queen π
π DESCRIPTION π
handles the default message switching based off of the audit mode flags β¨ so like, depending on which flags are set, the message gets built differently β and this function is the main character doing that switching π«Ά
π₯ RETURN π₯
returns an error on failure. that's it, that's the tea π
π SEE ALSO π
- the kernel file
./security/apparmor/audit.c audit_pre(9)aa_audit_msg(9)
aaaand that's a wrap, bestie π§ from ./security/apparmor, in the very iconic month of October 2026 β this page is aa_audit(9), and honestly? she ate π
βπ
π¦ 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