smk_read_ptrace(9)
π smk_read_ptrace(9) β the Kernel API Manual, bestie edition
okay so welcome to the Kernel API Manual, specifically the page for smk_read_ptrace(9), and honestly? she's a short one but she MATTERS. this is the read side of /smack/ptrace, and we're gonna get into it. β¨
πΈ NAME πΈ
smk_read_ptrace β literally the read() for /smack/ptrace. that's it, that's the whole vibe. π
β¨ SYNOPSIS β¨
ssize_t smk_read_ptrace (struct file *filp , char __user *buf , size_t
count , loff_t *ppos );
like, look at her. four args, one return type, zero notes. iconic.
π¦ ARGUMENTS π¦
filpβ the file pointer. and no, she is not actually used. she's there, she's invited, she's not participating. πbufβ this is where you put the result. the whole point, fr fr.countβ the maximum amount you're allowed to send along. your limit, your ceiling, your budget. πpposβ where to start. your little bookmark in the file. π
π DESCRIPTION π
returns the number of bytes read, or an error code, as appropriate. that's the entire description and honestly? she ate. short, sweet, to the point. no cap. π«Ά
reminder bestie: it returns a count on success and an error code when things go sideways β it does not magically do both. read the return value carefully. π
π₯ SEE ALSO π₯
first up, the kernel file: ./security/smack/smackfs.c β go peek, she's got lore.
and now, the friend group (yes, all of them, i'm not skipping a single one, don't test me):
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_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).
still going, stay with me π§
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).
almost there, you're doing amazing π
smk_open_relabel_self(9), smk_write_relabel_self(9), smk_write_ptrace(9) β yes, her sister, the write side, go say hi β smk_fill_super(9), smk_get_tree(9), smk_init_fs_context(9), init_smk_fs(9).
periodt. that's the whole guest list. π
okay and finally, the cute little sign-off: this page lives under ./security/smack, and it's dated October 2026. so like, mark your calendar bestie, and go read some smack files. π
β¨π¦
π¦ 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