• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  * Copyright (c) 2023 Huawei Device Co., Ltd.
4  */
5 
6 #ifndef _LITE_HCK_CED_H
7 #define _LITE_HCK_CED_H
8 
9 #include <linux/mm.h>
10 #include <linux/fs.h>
11 #include <linux/hck/lite_vendor_hooks.h>
12 
13 #ifndef CONFIG_HCK
14 #undef CALL_HCK_LITE_HOOK
15 #define CALL_HCK_LITE_HOOK(name, args...)
16 #undef REGISTER_HCK_LITE_HOOK
17 #define REGISTER_HCK_LITE_HOOK(name, probe)
18 #undef REGISTER_HCK_LITE_DATA_HOOK
19 #define REGISTER_HCK_LITE_DATA_HOOK(name, probe, data)
20 #else
21 DECLARE_HCK_LITE_HOOK(ced_setattr_insert_lhck,
22 	TP_PROTO(struct task_struct *task),
23 	TP_ARGS(task));
24 
25 DECLARE_HCK_LITE_HOOK(ced_switch_task_namespaces_lhck,
26 	TP_PROTO(const struct nsproxy *new),
27 	TP_ARGS(new));
28 
29 DECLARE_HCK_LITE_HOOK(ced_detection_lhck,
30 	TP_PROTO(struct task_struct *task),
31 	TP_ARGS(task));
32 
33 DECLARE_HCK_LITE_HOOK(ced_exit_lhck,
34 	TP_PROTO(struct task_struct *task),
35 	TP_ARGS(task));
36 
37 DECLARE_HCK_LITE_HOOK(ced_kernel_clone_lhck,
38 	TP_PROTO(struct task_struct *task),
39 	TP_ARGS(task));
40 
41 DECLARE_HCK_LITE_HOOK(ced_commit_creds_lhck,
42 	TP_PROTO(const struct cred *new),
43 	TP_ARGS(new));
44 
45 DECLARE_HCK_LITE_HOOK(ced_switch_task_namespaces_permission_lhck,
46 	TP_PROTO(const struct nsproxy *new, int *ret),
47 	TP_ARGS(new, ret));
48 #endif /* CONFIG_HCK */
49 
50 #endif /* _LITE_HCK_CED_H */
51