Lines Matching refs:tsk
358 static int audit_field_compare(struct task_struct *tsk, in audit_field_compare() argument
375 return audit_compare_uid(tsk->loginuid, name, f, ctx); in audit_field_compare()
386 return audit_uid_comparator(cred->uid, f->op, tsk->loginuid); in audit_field_compare()
395 return audit_uid_comparator(tsk->loginuid, f->op, cred->euid); in audit_field_compare()
397 return audit_uid_comparator(tsk->loginuid, f->op, cred->suid); in audit_field_compare()
399 return audit_uid_comparator(tsk->loginuid, f->op, cred->fsuid); in audit_field_compare()
438 static int audit_filter_rules(struct task_struct *tsk, in audit_filter_rules() argument
449 cred = rcu_dereference_check(tsk->cred, tsk == current || task_creation); in audit_filter_rules()
459 pid = task_pid_nr(tsk); in audit_filter_rules()
465 ctx->ppid = task_ppid_nr(tsk); in audit_filter_rules()
470 result = audit_exe_compare(tsk, rule->exe); in audit_filter_rules()
511 result = audit_comparator(tsk->personality, f->op, f->val); in audit_filter_rules()
605 result = audit_uid_comparator(tsk->loginuid, f->op, f->uid); in audit_filter_rules()
608 result = audit_comparator(audit_loginuid_set(tsk), f->op, f->val); in audit_filter_rules()
622 security_task_getsecid(tsk, &sid); in audit_filter_rules()
681 result = audit_field_compare(tsk, cred, f, ctx, name); in audit_filter_rules()
708 static enum audit_state audit_filter_task(struct task_struct *tsk, char **key) in audit_filter_task() argument
715 if (audit_filter_rules(tsk, &e->rule, NULL, NULL, in audit_filter_task()
748 static enum audit_state audit_filter_syscall(struct task_struct *tsk, in audit_filter_syscall() argument
755 if (audit_pid && tsk->tgid == audit_pid) in audit_filter_syscall()
762 audit_filter_rules(tsk, &e->rule, ctx, NULL, in audit_filter_syscall()
778 static int audit_filter_inode_name(struct task_struct *tsk, in audit_filter_inode_name() argument
791 audit_filter_rules(tsk, &e->rule, ctx, n, &state, false)) { in audit_filter_inode_name()
805 void audit_filter_inodes(struct task_struct *tsk, struct audit_context *ctx) in audit_filter_inodes() argument
809 if (audit_pid && tsk->tgid == audit_pid) in audit_filter_inodes()
815 if (audit_filter_inode_name(tsk, n, ctx)) in audit_filter_inodes()
822 static inline struct audit_context *audit_take_context(struct task_struct *tsk, in audit_take_context() argument
826 struct audit_context *context = tsk->audit_context; in audit_take_context()
851 audit_filter_syscall(tsk, context, &audit_filter_list[AUDIT_FILTER_EXIT]); in audit_take_context()
852 audit_filter_inodes(tsk, context); in audit_take_context()
855 tsk->audit_context = NULL; in audit_take_context()
920 int audit_alloc(struct task_struct *tsk) in audit_alloc() argument
929 state = audit_filter_task(tsk, &key); in audit_alloc()
931 clear_tsk_thread_flag(tsk, TIF_SYSCALL_AUDIT); in audit_alloc()
942 tsk->audit_context = context; in audit_alloc()
943 set_tsk_thread_flag(tsk, TIF_SYSCALL_AUDIT); in audit_alloc()
1283 static void audit_log_proctitle(struct task_struct *tsk, in audit_log_proctitle() argument
1304 res = get_cmdline(tsk, buf, MAX_PROCTITLE_AUDIT_LEN); in audit_log_proctitle()
1324 static void audit_log_exit(struct audit_context *context, struct task_struct *tsk) in audit_log_exit() argument
1332 context->personality = tsk->personality; in audit_log_exit()
1354 audit_log_task_info(ab, tsk); in audit_log_exit()
1441 audit_log_proctitle(tsk, context); in audit_log_exit()
1457 void __audit_free(struct task_struct *tsk) in __audit_free() argument
1461 context = audit_take_context(tsk, 0, 0); in __audit_free()
1471 audit_log_exit(context, tsk); in __audit_free()
1497 struct task_struct *tsk = current; in __audit_syscall_entry() local
1498 struct audit_context *context = tsk->audit_context; in __audit_syscall_entry()
1520 state = audit_filter_syscall(tsk, context, &audit_filter_list[AUDIT_FILTER_ENTRY]); in __audit_syscall_entry()
1545 struct task_struct *tsk = current; in __audit_syscall_exit() local
1553 context = audit_take_context(tsk, success, return_code); in __audit_syscall_exit()
1558 audit_log_exit(context, tsk); in __audit_syscall_exit()
1580 tsk->audit_context = context; in __audit_syscall_exit()
2238 struct task_struct *tsk = current; in __audit_signal_info() local
2239 struct audit_context *ctx = tsk->audit_context; in __audit_signal_info()
2244 audit_sig_pid = task_pid_nr(tsk); in __audit_signal_info()
2245 if (uid_valid(tsk->loginuid)) in __audit_signal_info()
2246 audit_sig_uid = tsk->loginuid; in __audit_signal_info()
2249 security_task_getsecid(tsk, &audit_sig_sid); in __audit_signal_info()