security_xfrm_policy_alloc(9)
π security_xfrm_policy_alloc(9) β Kernel API Manual energy β¨
okay so bestie, we're deep in the kernel API manual (security_xfrm_policy_alloc(9), section 9, ofc) and this little function is about to make your SPD look so put together. LSM blob allocation, but make it xfrm. no cap. π
πΈ NAME πΈ
security_xfrm_policy_alloc β allocate a xfrm policy LSM blob. that's it, that's the whole vibe. it makes the security-shaped thing for a policy. π
β¨ SYNOPSIS β¨
int security_xfrm_policy_alloc (struct xfrm_sec_ctx **ctxp , struct
xfrm_user_sec_ctx *sec_ctx , gfp_t gfp );
three args, one int back. icon behavior honestly. π₯
π«Ά ARGUMENTS π«Ά
ctxpβ the xfrm security context that's getting added to the SPD. this is the spot where the fresh context lands, it's giving "give me a pointer-to-pointer and I'll fill it in" main character energy πsec_ctxβ the security label, and bestie, userspace handed it to us. that's where it came from. πgfpβ thegfpflags. the whole entire allocation mood is set here, so pick ur flags wisely β¨
π¦ DESCRIPTION π¦
so what does it actually do? it allocates a security structure into the xp->security field. literally that field, that's the one. π
and like, important detail: that security field is initialized to NULL when the xfrm_policy is allocated. so it starts out empty (a clean slate, a blank canvas, we love to see it) and then this function comes in and gives it a whole personality. π
ngl this is the kinda thing that just quietly works in the background and nobody claps for it. but we see you, security_xfrm_policy_alloc. we see you. π
β RETURN β
returns 0 if the operation was successful. zero equals slay in this house. πβ¨
π SEE ALSO π
bestie. sit down. hydrate. this list is long, and the brief says we keep every single one of them, so buckle up β every cross-reference is coming through, in order, untouched, fr fr. π
kernel file ./security/security.c:
lsm_file_alloc(9)lsm_backing_file_alloc(9)lsm_blob_alloc(9)lsm_cred_alloc(9)lsm_inode_alloc(9)lsm_task_alloc(9)lsm_ipc_alloc(9)lsm_key_alloc(9)lsm_msg_msg_alloc(9)lsm_bdev_alloc(9)lsm_bpf_map_alloc(9)lsm_bpf_prog_alloc(9)lsm_bpf_token_alloc(9)lsm_superblock_alloc(9)lsm_fill_user_ctx(9)security_binder_set_context_mgr(9)security_binder_transaction(9)security_binder_transfer_binder(9)security_binder_transfer_file(9)security_ptrace_access_check(9)security_ptrace_traceme(9)security_capget(9)security_capset(9)security_capable(9)security_quotactl(9)security_quota_on(9)security_syslog(9)security_settime64(9)security_vm_enough_memory_mm(9)security_bprm_creds_for_exec(9)security_bprm_creds_from_file(9)security_bprm_check(9)security_bprm_committing_creds(9)security_bprm_committed_creds(9)security_fs_context_submount(9)security_fs_context_dup(9)security_fs_context_parse_param(9)security_sb_alloc(9)security_sb_delete(9)security_sb_free(9)security_free_mnt_opts(9)security_sb_eat_lsm_opts(9)security_sb_mnt_opts_compat(9)security_sb_remount(9)security_sb_kern_mount(9)security_sb_show_options(9)security_sb_statfs(9)security_sb_mount(9)security_sb_umount(9)security_sb_pivotroot(9)security_sb_set_mnt_opts(9)security_sb_clone_mnt_opts(9)security_move_mount(9)security_path_notify(9)security_inode_alloc(9)security_inode_free(9)security_dentry_init_security(9)security_dentry_create_files_as(9)security_inode_init_security(9)security_inode_init_security_anon(9)security_path_mknod(9)security_path_post_mknod(9)security_path_mkdir(9)security_path_rmdir(9)security_path_unlink(9)security_path_symlink(9)security_path_link(9)security_path_rename(9)security_path_truncate(9)security_path_chmod(9)security_path_chown(9)security_path_chroot(9)security_inode_create(9)security_inode_post_create_tmpfile(9)security_inode_link(9)security_inode_unlink(9)security_inode_symlink(9)security_inode_mkdir(9)security_inode_rmdir(9)security_inode_mknod(9)security_inode_rename(9)security_inode_readlink(9)security_inode_follow_link(9)security_inode_permission(9)security_inode_setattr(9)security_inode_post_setattr(9)security_inode_getattr(9)security_inode_setxattr(9)security_inode_set_acl(9)security_inode_post_set_acl(9)security_inode_get_acl(9)security_inode_remove_acl(9)security_inode_post_remove_acl(9)security_inode_post_setxattr(9)security_inode_getxattr(9)security_inode_listxattr(9)security_inode_removexattr(9)security_inode_post_removexattr(9)security_inode_file_setattr(9)security_inode_file_getattr(9)security_inode_need_killpriv(9)security_inode_killpriv(9)security_inode_getsecurity(9)security_inode_setsecurity(9)security_inode_listsecurity(9)security_inode_getlsmprop(9)security_inode_copy_up(9)security_inode_copy_up_xattr(9)security_inode_setintegrity(9)security_kernfs_init_security(9)security_file_permission(9)security_file_alloc(9)security_file_release(9)security_file_free(9)security_backing_file_alloc(9)security_backing_file_free(9)security_file_ioctl(9)security_file_ioctl_compat(9)security_mmap_file(9)security_mmap_backing_file(9)security_mmap_addr(9)security_file_mprotect(9)security_file_lock(9)security_file_fcntl(9)security_file_set_fowner(9)security_file_send_sigiotask(9)security_file_receive(9)security_file_open(9)security_file_post_open(9)security_file_truncate(9)security_task_alloc(9)security_task_free(9)security_cred_alloc_blank(9)security_cred_free(9)security_prepare_creds(9)security_transfer_creds(9)security_cred_getsecid(9)security_cred_getlsmprop(9)security_kernel_act_as(9)security_kernel_create_files_as(9)security_kernel_module_request(9)security_kernel_read_file(9)security_kernel_post_read_file(9)security_kernel_load_data(9)security_kernel_post_load_data(9)security_task_fix_setuid(9)security_task_fix_setgid(9)security_task_fix_setgroups(9)security_task_setpgid(9)security_task_getpgid(9)security_task_getsid(9)security_current_getlsmprop_subj(9)security_task_getlsmprop_obj(9)security_task_setnice(9)security_task_setioprio(9)security_task_getioprio(9)security_task_prlimit(9)security_task_setrlimit(9)security_task_setscheduler(9)security_task_getscheduler(9)security_task_movememory(9)security_task_kill(9)security_task_prctl(9)security_task_to_inode(9)security_create_user_ns(9)security_ipc_permission(9)security_ipc_getlsmprop(9)security_msg_msg_alloc(9)security_msg_msg_free(9)security_msg_queue_alloc(9)security_msg_queue_free(9)security_msg_queue_associate(9)security_msg_queue_msgctl(9)security_msg_queue_msgsnd(9)security_msg_queue_msgrcv(9)security_shm_alloc(9)security_shm_free(9)security_shm_associate(9)security_shm_shmctl(9)security_shm_shmat(9)security_sem_alloc(9)security_sem_free(9)security_sem_associate(9)security_sem_semctl(9)security_sem_semop(9)security_d_instantiate(9)security_getselfattr(9)security_setselfattr(9)security_getprocattr(9)security_setprocattr(9)security_ismaclabel(9)security_secid_to_secctx(9)security_lsmprop_to_secctx(9)security_secctx_to_secid(9)security_release_secctx(9)security_inode_invalidate_secctx(9)security_inode_notifysecctx(9)security_inode_setsecctx(9)security_inode_getsecctx(9)security_post_notification(9)security_watch_key(9)security_netlink_send(9)security_unix_stream_connect(9)security_unix_may_send(9)security_socket_create(9)security_socket_post_create(9)security_socket_socketpair(9)security_socket_bind(9)security_socket_connect(9)security_socket_listen(9)security_socket_accept(9)security_socket_sendmsg(9)security_socket_recvmsg(9)security_socket_getsockname(9)security_socket_getpeername(9)security_socket_getsockopt(9)security_socket_setsockopt(9)security_socket_shutdown(9)security_sock_rcv_skb(9)security_socket_getpeersec_stream(9)security_socket_getpeersec_dgram(9)lsm_sock_alloc(9)security_sk_alloc(9)security_sk_free(9)security_sk_clone(9)security_sk_classify_flow(9)security_req_classify_flow(9)security_sock_graft(9)security_inet_conn_request(9)security_inet_csk_clone(9)security_inet_conn_established(9)security_secmark_relabel_packet(9)security_secmark_refcount_inc(9)security_secmark_refcount_dec(9)security_tun_dev_alloc_security(9)security_tun_dev_free_security(9)security_tun_dev_create(9)security_tun_dev_attach_queue(9)security_tun_dev_attach(9)security_tun_dev_open(9)security_sctp_assoc_request(9)security_sctp_bind_connect(9)security_sctp_sk_clone(9)security_sctp_assoc_established(9)security_mptcp_add_subflow(9)security_unix_find(9)security_ib_pkey_access(9)security_ib_endport_manage_subnet(9)security_ib_alloc_security(9)security_ib_free_security(9)security_xfrm_policy_clone(9)security_xfrm_policy_free(9)security_xfrm_policy_delete(9)security_xfrm_state_alloc(9)security_xfrm_state_alloc_acquire(9)security_xfrm_state_delete(9)security_xfrm_state_free(9)security_xfrm_policy_lookup(9)security_xfrm_state_pol_flow_match(9)security_xfrm_decode_session(9)security_key_alloc(9)security_key_free(9)security_key_permission(9)security_key_getsecurity(9)security_key_post_create_or_update(9)security_audit_rule_init(9)security_audit_rule_known(9)security_audit_rule_free(9)security_audit_rule_match(9)security_bpf(9)security_bpf_map(9)security_bpf_prog(9)security_bpf_map_create(9)security_bpf_prog_load(9)security_bpf_token_create(9)security_bpf_token_cmd(9)security_bpf_token_capable(9)security_bpf_map_free(9)security_bpf_prog_free(9)security_bpf_token_free(9)security_locked_down(9)security_bdev_alloc(9)security_bdev_free(9)security_bdev_setintegrity(9)security_perf_event_open(9)security_perf_event_alloc(9)security_perf_event_free(9)security_perf_event_read(9)security_perf_event_write(9)security_uring_override_creds(9)security_uring_sqpoll(9)security_uring_cmd(9)security_uring_allowed(9)security_initramfs_populated(9)
and that's the list!! you made it, I'm so proud of you π«Άπ
okay final lil sign-off bestie: this page lives in ./security and it's dated October 2026, and it's filed under security_xfrm_policy_alloc(9). go forth and allocate responsibly β remember the NULL init, remember the 0 return, and remember that you are, in fact, that girl. π
β¨πΈπ
π¦ 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