smack_ipc_alloc_security(9)
πΈ smack_ipc_alloc_security(9) πΈ
okay so this is a page straight out of the Kernel API Manual, and bestie, it is short. Like, suspiciously short. But we're gonna give it the full main-character treatment anyway π
β¨ NAME β¨
smack_ipc_alloc_security β sets the security blob for ipc π«Ά
that's it. that's the whole vibe. one job, and it does it.
π¦ SYNOPSIS π¦
int smack_ipc_alloc_security (struct kern_ipc_perm *isp );
look at her. iconic signature. no notes π
π ARGUMENTS π
ispβ the object. literally just "the object". she's mysterious, she's lowkey giving nothing away, but she's the object we're working with π§
β DESCRIPTION β
Returns 0.
...yeah. That's the whole description. It returns 0. Zero. Zilch. The number of drama in this function is zero too π
ngl this is the calmest manpage I've ever read β no warnings, no caveats, no "undefined behaviour if you look at it wrong". Just a happy little 0 and a dream π
π₯ SEE ALSO π₯
first off, the source: Kernel file ./security/smack/smack_lsm.c β that's where she lives π
and then... bestie. brace yourself. this is the friend group and it is massive. we're talking extended family reunion energy:
smk_fetch(9), init_inode_smack(9), init_task_smack(9), smk_copy_rules(9), smk_copy_relabel(9), smk_ptrace_mode(9), smk_ptrace_rule_check(9), smack_ptrace_access_check(9), smack_ptrace_traceme(9), smack_syslog(9), 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), smack_inode_alloc_security(9), smk_rule_transmutes(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)
still going π the inode girlies are thriving:
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_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), smk_curacc_on_task(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), smack_task_to_inode(9)
and now the network section, we love a plot twist π:
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_inode_setsecurity(9), smack_socket_post_create(9), smack_socket_socketpair(9), smack_socket_bind(9), smack_socket_connect(9), smack_flags_to_may(9)
then we slide right into IPC territory (which is, like, literally our girl's whole department π):
smack_msg_msg_alloc_security(9), smack_of_ipc(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)
then we get into some attr + misc hallway gossip:
smack_d_instantiate(9), smack_getselfattr(9), smack_getprocattr(9), do_setattr(9), smack_setselfattr(9), smack_setprocattr(9)
unix sockets, my beloved π¦:
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)
keyrings + audit + labels, the β¨seriousβ¨ corner:
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)
okay that's the whole gang. go say hi. iykyk π
ngl the funniest part of this page is the ratio: one (1) sentence of description vs. approximately a thousand SEE ALSO entries. it's giving "one (1) inch of lore, entire extended cinematic universe" π
and that's a wrap, babe π this whole page lives in ./security/smack, and it's dated October 2026 β so it's technically from the future, which honestly tracks for a page this mysterious ππ«Ά periodt.
π¦ 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