security_task_setrlimit(9)
π security_task_setrlimit(9) β a Kernel API Manual moment
okay bestie, welcome to the Kernel API Manual page for security_task_setrlimit(9). yes it's a real function name, yes it's a lot, no you're not gonna fumble this. let's get into it π
β¨ NAME β¨
security_task_setrlimit β the vibe check that asks "are you actually allowed to set this new rlimit value?" π
π¦ SYNOPSIS π¦
int security_task_setrlimit (struct task_struct *p , unsigned int
resource , struct rlimit *new_rlim );
literally one function, three arguments, zero drama (okay maybe a little drama, it's a permission check after all) π
πΈ ARGUMENTS πΈ
pβ the target task's group leader. yeah, the group leader specifically, not just any random task in the thread group, don't come for me π«Άresourceβ which resource's limit is being set. like, which one, bestie πnew_rlimβ the brand new resource limit that's being proposed β¨
π DESCRIPTION π
okay so here's the tea β β this one checks permission before the resource limits of process p get set for resource to new_rlim. classic "look before you leap" energy, honestly iconic.
and if you wanna snoop on what the limits were before the change? you can peep the old resource limit values by dereferencing (p->signal->rlim + resource). that's the whole trick, iykyk π§
β RETURN β
returns 0 if permission is granted. that's it. that's the return value. slay π
π₯ SEE ALSO π₯
okay this is the part where i need you to stay with me, because the cross-reference list is long long. like, "did someone just dump the entire LSM hook roster" long. and bestie, they did. also peep the kernel file ./security/security.c up top there π«Ά
every single one of these, no cap, not skipping a single one:
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_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_alloc(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)
likeβ¦ that's the whole guest list and everybody showed up π but hey, at least now you know where to go if you need any other security hook. main character energy for the entire LSM layer, honestly π
lowkey a reminder that this is a permission check, not the actual setter β it's the bouncer at the door, not the DJ π§
and that's the page bestie!! π«Άπ this lil gem comes from ./security and it's dated October 2026 β go forth and check those rlimits 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