smk_ptrace_rule_check(9)
π smk_ptrace_rule_check(9)
okay so bestie, welcome to the Kernel API Manual β¨ β yes this is one of those pages, straight out of the Smack security module, and no cap it's a lil helper that's doing the most important gatekeeping of your entire life rn π
πΈ NAME πΈ
smk_ptrace_rule_check β the helper for ptrace access, aka the bouncer at the ptrace club π
β¨ SYNOPSIS β¨
int smk_ptrace_rule_check (struct task_struct *tracer , struct
smack_known *tracee_known , unsigned int mode , const char *func );
π¦ ARGUMENTS π¦
tracerβ the tracer process. the one doing the tracing. the nosy one. πtracee_knownβ label entry of the process that's about to be traced. it's giving "who's about to get looked at" energy π«Άmodeβ the ptrace attachment mode, and it's aPTRACE_MODE_*situation, iykykfuncβ name of the function that called us. purely for audit purposes, so likeβ¦ receipts. main character energy π₯
π DESCRIPTION π
Returns 0 on access granted, -error on error. that's it. that's the whole vibe check β
fr fr, that's literally it β0means yes bestie,-errormeans no π
π SEE ALSO π
Kernel file ./security/smack/smack_lsm.c β and like, the entire Smack cinematic universe, honestly. grab a snack, this list is long π
the ptrace / access-check girlies:
smk_fetch(9),init_inode_smack(9),init_task_smack(9),smk_copy_rules(9),smk_copy_relabel(9),smk_ptrace_mode(9)smack_ptrace_access_check(9),smack_ptrace_traceme(9),smack_syslog(9)smk_rule_transmutes(9),smk_curacc_on_task(9)
the filesystem / superblock besties:
smack_sb_alloc_security(9),smack_fs_context_submount(9),smack_fs_context_dup(9),smack_fs_context_parse_param(9),smack_set_mnt_opts(9),smack_sb_statfs(9),smack_bprm_creds_for_exec(9)
the inode crew (there are SO many of them):
smack_inode_alloc_security(9),smack_inode_init_security(9),smack_inode_link(9),smack_inode_unlink(9),smack_inode_rmdir(9),smack_inode_rename(9),smack_inode_permission(9),smack_inode_setattr(9),smack_inode_getattr(9),smack_inode_xattr_skipcap(9)smack_inode_setxattr(9),smack_inode_post_setxattr(9),smack_inode_getxattr(9),smack_inode_removexattr(9),smack_inode_set_acl(9),smack_inode_get_acl(9),smack_inode_remove_acl(9)smack_inode_getsecurity(9),smack_inode_listsecurity(9),smack_inode_getlsmprop(9),smack_inode_setsecurity(9),smack_task_to_inode(9),smack_d_instantiate(9)
the file ops squad:
smack_file_alloc_security(9),smack_file_ioctl(9),smack_file_lock(9),smack_file_fcntl(9),smack_mmap_file(9),smack_file_set_fowner(9),smack_file_send_sigiotask(9),smack_file_receive(9),smack_file_open(9),smack_flags_to_may(9)
the cred / task girlies:
smack_cred_alloc_blank(9),smack_cred_free(9),smack_cred_prepare(9),smack_cred_transfer(9),smack_cred_getsecid(9),smack_cred_getlsmprop(9),smack_kernel_act_as(9),smack_kernel_create_files_as(9)smack_task_setpgid(9),smack_task_getpgid(9),smack_task_getsid(9),smack_current_getlsmprop_subj(9),smack_task_getlsmprop_obj(9),smack_task_setnice(9),smack_task_setioprio(9),smack_task_getioprio(9),smack_task_setscheduler(9),smack_task_getscheduler(9),smack_task_movememory(9),smack_task_kill(9)
the network / socket icons π:
smack_sk_alloc_security(9),smack_sk_free_security(9),smack_sk_clone_security(9),smack_ipv4host_label(9),smack_ipv6host_label(9),smack_netlbl_add(9),smack_netlbl_delete(9),smk_ipv4_check(9),smk_ipv6_check(9),smk_ipv6_port_label(9),smk_ipv6_port_check(9)smack_socket_post_create(9),smack_socket_socketpair(9),smack_socket_bind(9),smack_socket_connect(9),smack_unix_stream_connect(9),smack_unix_may_send(9),smack_socket_sendmsg(9),smack_from_secattr(9),smack_from_skb(9),smack_from_netlbl(9)smack_socket_sock_rcv_skb(9),smack_socket_getpeersec_stream(9),smack_socket_getpeersec_dgram(9),smack_inet_conn_request(9),smack_inet_csk_clone(9)
the IPC / SysV crew:
smack_msg_msg_alloc_security(9),smack_of_ipc(9),smack_ipc_alloc_security(9),smk_curacc_shm(9),smack_shm_associate(9),smack_shm_shmctl(9),smack_shm_shmat(9)smk_curacc_sem(9),smack_sem_associate(9),smack_sem_semctl(9),smack_sem_semop(9)smk_tskacc_msq(9),smk_curacc_msq(9),smack_msg_queue_associate(9),smack_msg_queue_msgctl(9),smack_msg_queue_msgsnd(9),smack_msg_queue_msgrcv(9),smack_ipc_permission(9),smack_ipc_getlsmprop(9)
the procattr / selfattr besties:
smack_getselfattr(9),smack_getprocattr(9),do_setattr(9),smack_setselfattr(9),smack_setprocattr(9)
the key ring + audit + misc icons π:
smack_key_alloc(9),smack_key_permission(9),smack_watch_key(9),smack_post_notification(9)smack_audit_rule_init(9),smack_audit_rule_known(9),smack_audit_rule_match(9),smack_ismaclabel(9)smack_to_secctx(9),smack_secid_to_secctx(9),smack_lsmprop_to_secctx(9),smack_secctx_to_secid(9)smack_uring_override_creds(9),smack_uring_sqpoll(9),smack_uring_cmd(9),smack_init(9)
and that's the whole page, bestie π§ literally every single one of those references made it, no cap π
π that's a wrap on smk_ptrace_rule_check(9) π β brought to you by the fine folks hanging out in ./security/smack, stamped October 2026, page smk_ptrace_rule_check(9). go forth and trace responsibly, mwah π
π
π¦ 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