smk_set_cipso(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ‘‘ smk_set_cipso β€” Kernel API Manual ✨

okay so bestie, welcome to the smk_set_cipso(9) page πŸ’… this is a kernel API joint, and she's lowkey iconic. the manual name is smk_set_cipso(9) β€” yes that's her, that's the whole vibe, she's in the kernel API manual section, periodt.


🌸 NAME 🌸

smk_set_cipso β€” she does the work for write() for cipso and cipso2. that's it, that's the job, no cap πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

ssize_t smk_set_cipso (struct file *file , const char __user *buf ,
       size_t count , loff_t *ppos , int format );

look at her signature bestie, it's giving main character energy πŸ”₯


⭐ ARGUMENTS ⭐

  • file β€” a file pointer, but ngl she's not actually used πŸ™ˆ literally decorative. icon behavior.
  • buf β€” where to get the data from, that's the source of truth fr fr
  • count β€” bytes sent, the receipts πŸ“¬
  • ppos β€” where to start, like where in the file we're sliding in
  • format β€” either /smack/cipso or /smack/cipso2 πŸ’– this is the moment where you pick your flavor

πŸ’œ DESCRIPTION πŸ’œ

okay so here's the tea: she accepts only one cipso rule per write call. one. single. rule. per write. that's the limit, that's the boundary, respect it 🫢

and then she returns the number of bytes written, or an error code β€” as appropriate, iykyk 😭

bestie pls note: only one cipso rule per write call. if you come in here trying to sneak multiple rules into a single write(), that's not the vibe, that's not what she does. πŸ’€

🌈 SEE ALSO 🌈

Kernel file ./security/smack/smackfs.c β€” go read her, she's the source πŸ™

and literally the whole friend group, like the entire group chat of smack functions, no gatekeeping:

smk_netlabel_audit_set(9), smk_set_access(9), smk_perm_from_str(9), smk_fill_rule(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_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)

like, the whole roster. obsessed. πŸ’–


and that's the page bestie!! 🧚 source/version lives at ./security/smack, dated October 2026, and the manual tag is smk_set_cipso(9) β€” she came from the kernel API manual and she ate, no crumbs left πŸ’…βœ¨πŸ“

πŸ“¦ where this page comes from