smk_fill_rule(9)
π smk_fill_rule β like, the whole vibe check
okay so first things first bestie, we're in the Kernel API Manual, section 9, and today's main character is smk_fill_rule. it's giving "tiny function, big responsibilities" energy ngl π
β¨ NAME β¨
smk_fill_rule β Fill Smack rule from strings π¦
like literally, it takes your lil strings and turns them into a real, actual Smack rule. no cap.
πΈ SYNOPSIS πΈ
int smk_fill_rule (const char *subject , const char *object , const char
*access1 , const char *access2 , struct smack_parsed_rule *rule , int
import , int len );
she takes seven arguments and returns an int, periodt π
π ARGUMENTS π
okay so let's meet the cast, each one is doing their own iconic thing:
subjectβ the subject label string π«Ά literally who's doing the thing.objectβ the object label string β¨ literally what's being done to.access1β an access string, the permissions she's bringing to the table.access2β a string with the permissions to be removed π yes, we're taking some away.ruleβ the Smack rule itself, astruct smack_parsed_rule. this is where it all lands, she's the main character fr.importβ if it's non-zero, import labels π that's the whole job.lenβ the label length limit. don't go over it bestie, that's the limit.
π DESCRIPTION π
Returns 0 on success, and an appropriate error code on failure π
that's it, that's the description. short and slay. if you got 0 you ate, if you got an error code, well... π at least it tells you what went wrong.
β SEE ALSO β
the whole squad, the entire group chat, everyone's invited π§ββοΈπ β plus the kernel file ./security/smack/smackfs.c:
smk_netlabel_audit_set(9),smk_set_access(9),smk_perm_from_str(9),smk_parse_rule(9),smk_parse_long_rule(9),smk_write_rules_list(9),smk_open_load(9)smk_write_load(9),smk_cipso_doi(9),smk_unlbl_ambient(9),smk_open_cipso(9),smk_set_cipso(9),smk_write_cipso(9),smk_open_cipso2(9)smk_write_cipso2(9),smk_open_net4addr(9),smk_net4addr_insert(9),smk_write_net4addr(9),smk_open_net6addr(9),smk_net6addr_insert(9)smk_write_net6addr(9),smk_read_doi(9),smk_write_doi(9),smk_read_cipso_auto_level(9),smk_write_cipso_auto_level(9),smk_read_ambient(9)smk_write_ambient(9),smk_list_swap_rcu(9),smk_parse_label_list(9),smk_destroy_label_list(9),smk_write_onlycap(9),smk_read_unconfined(9)smk_write_unconfined(9),smk_read_logging(9),smk_write_logging(9),smk_open_load_self(9),smk_write_load_self(9),smk_user_access(9)smk_write_access(9),smk_open_load2(9),smk_write_load2(9),smk_open_load_self2(9),smk_write_load_self2(9),smk_write_access2(9)smk_write_revoke_subj(9),smk_init_sysfs(9),smk_write_change_rule(9),smk_read_syslog(9),smk_write_syslog(9),smk_open_relabel_self(9)smk_write_relabel_self(9),smk_read_ptrace(9),smk_write_ptrace(9),smk_fill_super(9),smk_get_tree(9),smk_init_fs_context(9)init_smk_fs(9)
iykyk π«
and that's the page, bestie π this cutie came to you straight outta ./security/smack, from October 2026 β stay hydrated, read your label length limits, and slay π
π₯π
π¦ 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